[Home] [By Thread] [By Date] [Recent Entries]
Michael Kay mike@xxxxxxxxxxxx wrote:
Following just a week after the XSLT 3.0 Candidate Recommendation from W3C, we are delighted to announce the release today of Saxon 9.7. It is great to have an implementation to explore the candidate recommendation. I have a question on http://www.w3.org/TR/xslt-30/#element-for-each-group, the Saxon 9.7 documentation at http://saxonica.com/html/documentation/xsl-elements/for-each-group.html says: --------------------------------------------------------------------- XSLT 3.0 introduces the ability to bind variables to the current group and the current grouping key as an alternative to using the functions current-group() and current-grouping-key(). The advantage of using variables is that they have static scope, so the optimizer has more chance to see what the stylesheet is doing with each group. Streamed processing is only possible if the new variables are used, as this enables the processor to determine whether or not the use of the current group is streamable. --------------------------------------------------------------------- How can I bind variables to use streaming in the current candidate recommendation version of XSLT 3.0? An earlier draft in http://www.w3.org/TR/2012/WD-xslt-30-20120710/#xsl-for-each-group defined <xsl:for-each-group
select = expression
group-by? = expression
group-adjacent? = expression
group-starting-with? = pattern
group-ending-with? = pattern
bind-group? = eqname
bind-grouping-key? = eqname
composite? = "yes" | "no"
collation? = { uri } >
<!-- Content: (xsl:sort*, sequence-constructor) -->
</xsl:for-each-group>where I understand the attributes bind-group and bind-grouping-key to have that role, but I don't see anything like that in the current definition with
|

Cart



