Subject: RE: Accessing node-sets by index with position()
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Tue, 23 Sep 2003 22:41:03 +0100
|
>
> I am trying to iterate through a list of nodes in a node-set by index
> using the position() function, and I am running into some
> difficulties.
>
>
> <xsl:for-each select="$set">
> <xsl:text>Iteration #</xsl:text>
> <xsl:value-of select="position()"/>
> <xsl:text> is '</xsl:text>
> <xsl:value-of select="$set[position()]"/>
> <xsl:text>' </xsl:text>
> </xsl:for-each>
>
Inside a predicate position() changes it's meaning. So you probably want
something like:
> <xsl:for-each select="$set">
<xsl:variable name="pos" select="position()"/>
> <xsl:text>Iteration #</xsl:text>
> <xsl:value-of select="$pos"/>
> <xsl:text> is '</xsl:text>
> <xsl:value-of select="$set[$pos]"/>
> <xsl:text>' </xsl:text>
> </xsl:for-each>
Though it's still rather nonsensical since $set[$pos] is the same as
".", perhaps you wanted to index into some other node-set, e.g.
$set2[$pos]?
Michael Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|
Michael Kay - Tue, 23 Sep 2003 17:39:53 -0400 (EDT) <=
Americo Albuquerque - Tue, 23 Sep 2003 18:49:43 -0400 (EDT)
Passin, Tom - Tue, 23 Sep 2003 16:44:40 -0400 (EDT)
|
|