xsl-list
[Top] [All Lists]

Re: [xsl] General rule for designing XPath expressions to return items in document order?

2014-01-08 05:54:44

On 8 Jan 2014, at 11:41, Costello, Roger L. <costello(_at_)mitre(_dot_)org> 
wrote:

David Carlisle wrote:

      Path expressions constructed with  / always 
      returns nodes in document order.

Section 19.1 of the XSLT 3.0 specification says:

... evaluation of the path expression //section/head will not always deliver 
nodes in document order; this can be seen by examining the source document 
below, where a child of the first section appears in document order after a 
child of the second section:


You're quoting selectively. It actually says:

"The reason for this is that a naive nested loop evaluation of the path 
expression //section/head will not always deliver nodes in document order"

and then:

"An implementation that literally followed the semantics of path expressions as 
defined in [XPath 3.0] would therefore require to sort the nodes into document 
order"

In other words, a nested loop evaluation will not deliver the correct results 
(i.e. the sequence nodes in document order) unless it is followed by a sort, 
and the sort would prevent streaming.

Michael Kay
Saxonica


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--


<Prev in Thread] Current Thread [Next in Thread>