Re: [xsl] XSL rule for sorting the elements in descending order and display ing the first element in sorted list

Subject: Re: [xsl] XSL rule for sorting the elements in descending order and display ing the first element in sorted list
From: Jeni Tennison <mail@xxxxxxxxxxxxxxxx>
Date: Thu, 15 Feb 2001 09:29:49 +0000
Hi Anand,

> i wanto to sort it in descending order and display the first element after
> sorting ...

i.e. to output the maximum of the list.

To sort you need the xsl:sort element.  The xsl:sort element has to go
within something that iterates over a node set, such as an
xsl:for-each.

To select the first item, you need an xsl:if.  You can test the
position() of the item in the node list.  If it's equal to 1 then it's
the first item.

Putting that together, you get:

<xsl:template match="JartaXmlReport">
   <xsl:for-each select="SessionStartupTime">
      <xsl:sort data-type="number" order="descending" />
      <xsl:if test="position() = 1">
         <xsl:value-of select="." />
      </xsl:if>
   </xs:for-each>
</xsl:template>

I hope that helps,

Jeni

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



 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread