[Bug 29507] [xslt30] A problem case for streamed grouping

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

--- Comment #2 from Michael Kay <mike@saxonica.com> ---
I have written a test case to demonstrate the problem: sx-commaExpr-201, which
does

<xsl:copy-of select="($extraItem, /BOOKLIST/BOOKS/ITEM) / PRICE"/>

Note our definition of striding:

[Definition: Striding: indicates that the result of a construct is a sequence
of nodes, in document order, that are peers in the sense that none of them is
an ancestor or descendant of any other.]

I think we're best off sticking with this definition, which means that an
expression shouldn't be classified as striding if the results are not in
document order.

It's probably the comma operator that is the main offender here - but it relies
on the GSR, so perhaps the GSR is wrong.

Currently (A, B) is striding if A is striding and B is grounded, or vice versa:
under GSR 2(d)(iv), if one operand is grounded and motionless and the other is
striding and consuming, then the P&S of the comma expression is the P&S of the
consuming operand.

Note that if we change this so that ($extraItem, /BOOKLIST/BOOKS/ITEM) is no
longer striding, then writing the query as

<xsl:copy-of select="($extraItem, /BOOKLIST/BOOKS/ITEM) ! PRICE"/>

also fails, even though document order shouldn't affect this one. (I've made
this one into test sx-comma-019).

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

Received on Friday, 26 February 2016 14:35:50 UTC