[xsl] RE: first n nodes from a current-group

Subject: [xsl] RE: first n nodes from a current-group
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Thu, 7 Feb 2008 13:36:21 -0000
> But I wanted only the first two name elements having highest counts.
> that is output like:
> 

Try
 
<School>
  <xsl:for-each-group select=" School/student 
                      group-by="name/tokenize(., ';\s*')"> 
    <xsl:sort data-type="number" select="count(current-group())"
order="descending" />
    <xsl:sort select="current-grouping-key()"/> 
    <xsl:if test="position() <= 2">
      <name count="{count(current-group())}"> 
        <xsl:value-of select="current-grouping-key()"/> 
      </name> 
    </xsl:if> 
  </xsl:for-each-group> 
</School>

Michael Kay
http://www.saxonica.com/

Current Thread