On Wed, 19 May 2004 11:14:56 +0100, David Carlisle <davidc@xxxxxxxxx> wrote:
>
> I need to access an xml value by it's position.
> can this be done (or is there a better way to do it)
>
>
>to access the 3rd foo element just do
>foo[3]
>
> <xsl:value-of select="../../../columns/column(position())/type"/>
>
>You need square brackets not round, and you want to evaluate position()
>in the current node list _before_ you start this xpath as it's the
>current position that you want, so
>
>
><xsl:variable name="x" select="position()"/>
><xsl:value-of select="../../../columns/column[$x]/type"/>
>
>Of course for $x to have teh right value you need to make sure that your
>current node list only has cell nodes, if you just do an
><xsl:apply-templates/>
>rather than
><xsl:apply-templates select="cell"/>
>on the row element then your current node list will include white space
>text nodes and so the position of teh cell elements will be
>2,4,6,... not 1,2,3,...
>
>David
Perfect, thanks
Vin
------------------------------------------------------------------------
vincent.finn@xxxxxxxxxxxxx
------------------------------------------------------------------------
My opinions may have changed, but not the fact that I am right.
------------------------------------------------------------------------
|