[ 
https://issues.apache.org/jira/browse/XALANJ-2646?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17720216#comment-17720216
 ] 

Mukul Gandhi commented on XALANJ-2646:
--------------------------------------

The section "14.3 Ordering among Groups" (part of section "14 Grouping") of the 
XSLT 3.0 spec says following,

<quote>
Definition: There is a total ordering among groups referred to as the order of 
first appearance. A group G is defined to precede a group H in order of first 
appearance if the initial item of G precedes the initial item of H in 
population order.

Definition: There is another total ordering among groups referred to as 
processing order. If group R precedes group S in processing order, then in the 
result sequence returned by the xsl:for-each-group instruction the items 
generated by processing group R will precede the items generated by processing 
group S.
</quote>

This implementation of xsl:for-each-group, that has been committed, implements 
the second version (as mentioned above) of definition of "total ordering among 
groups", i.e the "processing order".

> Implementation of xslt 3.0's xsl:for-each-group instruction, for XalanJ's 
> interpretive processor
> ------------------------------------------------------------------------------------------------
>
>                 Key: XALANJ-2646
>                 URL: https://issues.apache.org/jira/browse/XALANJ-2646
>             Project: XalanJ2
>          Issue Type: New Feature
>      Security Level: No security risk; visible to anyone(Ordinary problems in 
> Xalan projects.  Anybody can view the issue.) 
>          Components: Xalan-interpretive
>            Reporter: Mukul Gandhi
>            Assignee: Mukul Gandhi
>            Priority: Major
>         Attachments: xsl3_for_each_group_test_files.zip
>
>
> I'm creating this jira issue, to track implementation of XSLT 3.0's 
> xsl:for-each-group instruction, for XalanJ's interpretive processor.
> I've done little bit of implementation for this, that seems to work fine for 
> various primary XSLT 3.0 xsl:for-each-group use cases. The XSLT 3.0 
> structural implementation for xsl:for-each-group, implementing the XSLT 
> element xsl:for-each-group, and functions fn:current-group(), 
> fn:current-grouping-key() have been completed. xsl:for-each-group's 
> attributes "group-by" and "group-adjacent" have been implemented. Currently, 
> xsl:for-each-group's grouping keys (i.e, value of xslt 3.0 function 
> fn:current-grouping-key()) can have values typed as string, number and 
> boolean (any other XPath data type for xslt 3.0's grouping keys is converted 
> to a string value).  
> The codebase changes for above mentioned implementation aspects, have been 
> committed to xalan-java repo's branch xalan-j_xslt3.0.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@xalan.apache.org
For additional commands, e-mail: dev-h...@xalan.apache.org

Reply via email to