|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Finding the highest node value
I'd sort the list in reverse order and then select the
first position.
<xsl:template match="/">
<xsl:for-each select="population/country">
<xsl:sort select="population" order="descending"/>
<xsl:if test="position()=1">
<xsl:value-of select="name"/>:
<xsl:value-of select="population"/>
</xsl:if>
</xsl:for-each>
</xsl:template>
On Thu, Oct 25, 2001 at 05:22:32PM +0200, Antoine
Quint wrote:
> Say I have an XML fragment going like this:
>
> =====================
>
> <population unit="million">
> <country>
> <name>China</name>
> <population>1273</population>
> <continent key="2"/>
> </country>
> <!-- some more <country> -->
> <country>
> <name>India</name>
> <population>1033</population>
> <continent key="2"/>
> </country>
> </population>
>
> =====================
>
> What I would like to do is store in a <xsl:variable>
the highest
> <population> value?
>
> How would one go around this?
Here's one way to do it:
<xsl:template name="find-max">
<xsl:param name="nodeset"/>
<xsl:param name="max"/>
<xsl:choose>
<xsl:when test="count($nodeset)=0">
<xsl:value-of select="$max"/>
</xsl:when>
<xsl:otherwise>
<xsl:call-template name="find-max">
<xsl:with-param name="nodeset">
<xsl:value-of select="$nodeset"/>
</xsl:with-param>
<xsl:with-param name="max">
<xsl:value-of select="$max"/>
</xsl:with-param>
</xsl:call-template>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template match="population">
<xsl:variable name="maxpopulation">
<xsl:call-template name="find-max">
<xsl:with-param name="nodeset"
select="country/population[position()>1]"/>
<xsl:with-param name="max"
select="number(country/population[1])"/>
</xsl:call-template>
</xsl:variable>
</xsl:template>
Tim.
*/
__________________________________________________
Do You Yahoo!?
Make a great connection at Yahoo! Personals.
http://personals.yahoo.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








