OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

xacml message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: Re: [xacml] [CR] 0047:Function specification for XPath handler



Michiharu,

You have refered me to "op:node-equal" for your desired fucntion
"xacml:xpath-equal". This specification states that two nodes are equal in
this sense if they have the same identity.

I'm confused on this notion of node identity. So, hopefully you can
resolve my confusion. It appears that the name of a node is its fully
qualified path by its element names (I think).

In your example you have

<Apply FunctionId="function:xpath-equal">
  <AttributeValue>/Request/Subject/Attribute[@AttributeId="role"]/AttributeValue
  </AttributeValue>
  <AttributeValue>/Request/Subject/Attribute[@AttributeId="role"]/AttributeValue
  </AttributeValue>
</Apply>

Noting that the two XPATH expressions are the same, and let's say the
particular "role" attribute of the request context contains "Doctor" are
you comparing:

1.   "/Request/Subject/Attribute/AttributeValue" to
     "/Request/Subject/Attribute/AttributeValue", or

2.   "Doctor" to "Doctor"

The semantics in the:

> http://www.w3.org/TR/xquery-operators/
> Please see section 13.1.6

seems to suggest that 1 is the case.

Are you really looking to use "op:deep-equal"?

If you mean op:node-equal you must pick out the same node by name. This
really means that we are really only comparing their XPATH expressions to
see if they correspond.

(xpath-equal "//md:record/*" "//md:record/name")

would always be true, regardless, because although the "//md:record/*" can
match any //md:record/FavoriteElementNameHere.

I'm just confused. Help!

-Polar



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Powered by eList eXpress LLC