xsl-list
[Top] [All Lists]

Re: Grouping while sorting

2004-11-21 13:27:33
Hi Ragulf,

I seem to be caught on trying to sort something while at the same
time grouping them.

I think that you need to group first, and then sort the members of the
group. Something like:

<xsl:key name="elems" match="Elem" use="@GroupID" />

<xsl:template match="Root">
  <xsl:for-each select="Elem[generate-id(.) =
                             generate-id(key('elems', @GroupID)[1])]">
    <Group><xsl:value-of select="@GroupID" /></Group>
    <xsl:for-each select="key('elems', @GroupID)">
      <xsl:sort select="@Order" data-type="number" />
      <xsl:value-of select="." /> -
    </xsl:for-each>
  </xsl:for-each>
</xsl:template>

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



<Prev in Thread] Current Thread [Next in Thread>