Re: Node with maximum attribute value

Subject: Re: Node with maximum attribute value
From: Phil Lanch <phil@xxxxxxxxxxxxxxx>
Date: Mon, 21 Feb 2000 20:04:39 +0000
Richard Birkby wrote:
> 
> Maybe I didn't explain all of the problem so well.
> 
> I want to use the variable in an XPath outside of the xsl:for-each, ie in
> another scope.
> 
> The following code works, but it could hardly be called elegant.
> 
> <!-- Iterate over a descending node-set -->
> <xsl:for-each select="closing-price">
> <xsl:sort data-type="number" select="@mid" order="descending"/>
> 
> <!-- Choose only the first node (ie largest) -->
> <xsl:if test="position()=1">
> <xsl:variable name="MaxValue" select="@mid" />
> 
> <!-- Now iterate over the list again in original sort order -->
> <xsl:for-each select="closing-price">
> 
> <!-- Do Something with $MaxValue -->
> 
> </xsl:for-each>
> 
> </xsl:if>
> </xsl:for-each>

you can do that by by initializing a variable with an xsl:for-each loop
(& i don't even need to mention RTFs ...) -

<xsl:variable name="MaxValue">
  <xsl:for-each select="closing-price">
    <xsl:sort data-type="number" select="@mid" order="descending"/>
    <xsl:if test="position()=1">
      <xsl:value-of select="@mid"/>
    </xsl:if>
  </xsl:for-each>
</xsl:variable>

<xsl:for-each select="closing-price">
  ...
  <xsl:if test="@mid = $MaxValue"> ... </xsl:if>
</xsl:for-each>

-- 

cheers

phil

"I have remarked very clearly that I am often of one opinion
when I am lying down and of another when I am standing up ..."


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


Current Thread