Re: [xsl] Determining the position of a specific node in the context

Subject: Re: [xsl] Determining the position of a specific node in the context
From: "Christian Roth" <roth@xxxxxxxxxxxxxx>
Date: Fri, 20 Oct 2006 02:01:25 +0200
David Carlisle wrote:

>test="B/following-sibling::C"

Indeed much simpler - oh well... Thank you!

>B/position()
>
>which selects a sequence of B nodes then for each returns the
>position

Can I construe from that that

"Give me the position of a specific node in the context"

is best written in XPath 2 as

<xsl:variable 
  name="p" 
  select="(node()[...predicate...]/position())[1]"/>

with the [1] added to make it a singleton, and is equivalently still
best written in XPath 1 as

<xsl:variable 
  name="p" 
  select="count(node()[...predicate...][1]/preceding-sibling::node()) + 1"/>

?

Christian

Current Thread