This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: Number of node in list from stylesheet
- To: xsl-list at mulberrytech dot com
- Subject: RE: Number of node in list from stylesheet
- From: Jeni Tennison <Jeni dot Tennison at epistemics dot co dot uk>
- Date: Wed, 24 May 2000 16:20:14 +0100
- Reply-To: xsl-list at mulberrytech dot com
At 02:47 PM 5/24/00 +0100, Mike Kay wrote:
>> I have tried xsl:number, but the count attribute cannot include the
>> document() function.
>
>It doesn't need to. Just use <xsl:for-each> to make the relevant node
>current:
>
> <xsl:variable name="monthNumber">
> <xsl:for-each select="document('')//foo:month[@name = $monthName]">
> <xsl:number/>
> </xsl:for-each>
> </xsl:variable>
Many thanks to Mike for this. I had erroneously assumed that using
xsl:number within an xsl:for-each would have exactly the same problems as
using <xsl:value-of select="position()" />, i.e. that it would always give
the answer '1' because there was only one node in the set of current
node-list. For those that are interested, the vital sentence within the
XSLT Recommendation is:
"If no value attribute is specified, then the xsl:number element inserts a
number based on the position of the current node in the *source tree*." (my
emphasis)
Cheers,
Jeni
Dr Jeni Tennison
Epistemics Ltd, Strelley Hall, Nottingham, NG8 6PE
Telephone 0115 9061301 • Fax 0115 9061304 • Email
jeni.tennison@epistemics.co.uk
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list