[Bug 27001] Terminology: identity

https://www.w3.org/Bugs/Public/show_bug.cgi?id=27001

Michael Kay <mike@saxonica.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mike@saxonica.com

--- Comment #11 from Michael Kay <mike@saxonica.com> ---
How about: "A node has a hidden property referred to as its identity. Many
operations that construct new nodes are defined to return a node whose identity
is distinct from that of any other node. The identity of nodes is exposed in a
number of ways:

* When two expressions return nodes, it is possible to compare the identity of
the nodes they return using the "is" operator. If f() is an operation defined
to construct new nodes, then the result of the expression "f() is f()" is
false.

* Some operators, for example the "union" operator and the path operator "/",
are defined to eliminate duplicate nodes, meaning that there will never be two
items at different positions in the result sequence that are nodes with the
same identity. 

* The function fn:generate-id takes a node as argument: it is guaranteed that
when two nodes have the same identity, fn:generate-id applied to those nodes
will return equal strings (compared using the Unicode Codepoint Collation), and
that when they have different identity, fn:generate-id will return unequal
strings.

* In XQuery Update, it is possible to modify properties of a node (for example,
adding or removing children, or changing the string value) without changing the
node's identity. The semantics of update rely heavily on the concept of node
identity: for example, adding two attributes to the same node is fundamentally
different from adding them to different nodes.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Monday, 13 October 2014 13:56:44 UTC