Try
select="count(../preceding-sibing::line + 1)"
Kind regards,
James Carlyle
-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com]On Behalf Of
evgeniy(_dot_)strokin(_at_)rocketrainer(_dot_)com
Sent: 17 October 2002 20:11
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Re: Is it possible to know position of ancestor?
Yes, you are so right (how do you know what I meant if I didn't
know!?!? :)
But here is also the problem:
Let say we have another XML:
<root>
<some_tag/>
<line>
<a/>
<b/>
</line>
<line>
<a/>
<b/> - we are here
</line>
<root>
In your example select="count(../preceding-sibing::* + 1)" we get
3 because
it will count "some_tag" too. But we need to count only "line" elements.
How we can solve this problem?
Jenya
David Carlisle writes:
We are in tag "b",
note that xslt works on elements (element nodes) not tags, and importat
distinction.
We want to find out what is position of our ancestor
in their ancestor.
I think you mean parent rather than ancestor:
select="count(../preceding-sibing::* + 1)"
David
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list