Subject: Re: [xsl] What does the phrase "duplicates removed" mean precisely?|
From: "Mark Wilson" <drmark@xxxxxxxxxxxxxxx>
Date: Wed, 1 Feb 2006 08:44:34 -0500
When an operation like a path expression or a union is defined to return a
sequence of nodes with duplicates removed, this simply means that you won't
get the same node appearing twice in the sequence. For example, if element A
has four children B, C, D, and E (in that order) then the path expression
child::*/following-sibling::* selects a sequence containing (C, D, E),
rather than (C, D, E, D, E, E) which is what you would get if duplicates
were not removed. This depends on the concept that nodes have an individual
identity. Nodes are duplicates if they have the same identity - the name and
value/content of the node are irrelevant.
Michael Kay http://www.saxonica.com/
-----Original Message----- From: Mark Wilson [mailto:drmark@xxxxxxxxxxxxxxx] Sent: 31 January 2006 13:52 To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: [xsl] What does the phrase "duplicates removed" mean precisely?
In reading Michael Kay's XPath 2.0, I frequently encountered the phrase, "...returned with no duplicates...". I checked the FAQ mantained by Dave Pawson under both XSLT Terminology -- where "duplicates" is used to define the term "Node Set" -- and under XSL Frequently Asked Questions where "duplicates" has its own heading. From that reading, I am all but convinced that "duplicates" refers to the (I cannot recall the correct XML term) content text demarked by a starting and ending XML element pair, as in
<SomeTag>This is the text</SomeTag>
Is this correct, or is my understanding imperfect? Are there any other kind of "duplicates" removed?