Re: [xsl] xsl:sort now working under unix

Subject: Re: [xsl] xsl:sort now working under unix
From: Anton Triest <anton@xxxxxxxx>
Date: Wed, 22 Dec 2004 21:20:30 +0100
Hi Sylvia,

   <xsl:for-each select="addressbook">
<!--descending or ascending (default) -->
     <xsl:sort select="age" data-type="number" order="descending"/>
     <xsl:apply-templates/>
   </xsl:for-each>

xsl:sort works on the for-each that precedes it, not on the apply-templates that follows it. So this code will sort the addressbook elements, instead of the address elements. That's why they appear in input-document order. Try replacing the above snippet with something like:


<xsl:for-each select="addressbook">
  <xsl:apply-templates select="address">
      <xsl:sort select="age" data-type="number" order="descending"/>
  </xsl:apply-templates>
</xsl:for-each>

HTH,
Anton

Current Thread