You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2002/03/27 18:05:42 UTC

DO NOT REPLY [Bug 7522] New: - Missing current-group function

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7522>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=7522

Missing current-group function

           Summary: Missing current-group function
           Product: XalanJ2
           Version: 2.2.x
          Platform: PC
        OS/Version: Windows NT/2K
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Xalan-Xsltc
        AssignedTo: xalan-dev@xml.apache.org
        ReportedBy: duffymo@yahoo.com


I can't run an example I got from the following W3C link using Xalan-J 2.0:

http://www.w3.org/TR/xslt20/#element-for-each-group

The input XML stream is:

    <body>
      <h2>Introduction</h2>
      <p>XSLT is used to write stylesheets.</p>
      <p>XQuery is used to query XML databases.</p>
      <h2>What is a stylesheet?</h2>
      <p>A stylesheet is an XML document used to define a transformation.</p>
      <p>Stylesheets may be written in XSLT.</p>
      <p>XSLT 2.0 introduces new grouping constructs.</p>
    </body>

The XML stylesheet is:

<xsl:stylesheet version="2.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   
    <xsl:output method="xml" />


    <xsl:template match="body">
    <chapter>
        <xsl:for-each-group select="*" group-starting-with="h2" >
            <section title="{self::h2}">
               <xsl:for-each select="current-group()[self::p]">
                   <para><xsl:value-of select="."/></para>
               </xsl:for-each> 
            </section>
        </xsl:for-each-group>
    </chapter>
    </xsl:template>
    
</xsl:stylesheet> 

The desired output is:

<chapter>
      <section title="Introduction">
        <para>XSLT is used to write stylesheets.</para>
        <para>XQuery is used to query XML databases.</para>
      </section> 
      <section title="What is a stylesheet?">
        <para>A stylesheet is an XML document used to define a 
transformation.</para>
        <para>Stylesheets may be written in XSLT.</para>
        <para>XSLT 2.0 introduces new grouping constructs.</para>
      </section>
    </chapter> 

The error I get is:

SystemId Unknown; Line -1; Column -1; XSLT Error 
(javax.xml.transform.TransformerConfigurationException): javax.xml.tran
sform.TransformerException: javax.xml.transform.TransformerException: Could not 
find function: current-group

It appears that Xalan-J 2.0 doesn't recognize W3C's current-group function.  
Do I have the right syntax, or is this a new feature that hasn't been added yet?