- From: <bugzilla@jessica.w3.org>
- Date: Fri, 31 Jan 2014 12:35:26 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=24455 Bug ID: 24455 Summary: [xslt 3.0] Streamability of grouping variable references Product: XPath / XQuery / XSLT Version: Last Call drafts Hardware: PC OS: All Status: NEW Severity: normal Priority: P2 Component: XSLT 3.0 Assignee: mike@saxonica.com Reporter: mike@saxonica.com QA Contact: public-qt-comments@w3.org Consider: <xsl:stream ...> <xsl:for-each-group select="/a/b/copy-of()" group-adjacent="c" bind-group="g"> <xsl:value-of select="$g/x"/> <xsl:value-of select="$g/y"/> </xsl:for-each-group> </xsl:stream> I get an error saying there are two downward selections ($g/x and $g/y) This is because the variable reference $g is classified as consuming. See 19.8.7.10: If all the following conditions are satisfied: * V is a reference to a variable declared in a bind-group attribute of a containing xsl:for-each-group instruction F * The path in the construct tree that connects V to the sequence constructor forming the body of F is such that no child construct is a higher-order operand of its parent * The focus-setting container of V is F then the sweep and posture of V are the sweep and posture of the select expression of F. The select expression of xsl:for-each-group is grounded and consuming, so the variable reference is also considered grounded and consuming. In fact, if the select expression is grounded, the grouping variable should be motionless. -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Friday, 31 January 2014 12:35:27 UTC