[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Re: [xsl] Calculating cumulative values and min/max
Subject: Re: [xsl] Calculating cumulative values and min/max
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Wed, 13 Jun 2007 10:00:26 +0100
|
On 6/13/07, Simon Shutter <simon@xxxxxxxxxxx> wrote:
a) in the predicate [@x = current()/@x], why is current node used and not
the context node used? I guess I'm confused at to which @x is which in the
predicate.
current() returns the current node from outside of the the XPath, so
if you have:
parent::*[@x = current()/@x]
then you are comparing @x on the parent node (the first @x in the
predicate), and @x on the node thats currently being matched (the
second @x).
Its the same as maintaining the pointer yourself:
<xsl:variable name="this" select="."/>
<xsl:value-of select="parent::*[@x = $this/@x"/>
b) is it possible to calculate min/max values is this only possible in
XSLT/XPATH 2.0?
You can do it in 1.0 by sorting the values and picking the first/last:
http://www.dpawson.co.uk/xsl/sect2/N5121.html#d7114e427
...but yes in 2.0 there's min() and max()
cheers
andrew
|