This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: position within same nodes
- To: xsl-list at lists dot mulberrytech dot com
- Subject: Re: [xsl] position within same nodes
- From: David Carlisle <davidc at nag dot co dot uk>
- Date: Thu, 19 Jul 2001 21:20:32 +0100
- References: <Pine.HPX.4.33.0107191330560.3598-100000@ux1>
- Reply-To: xsl-list at lists dot mulberrytech dot com
What is the XPath to get the position of a given node relative to its
siblings of the same name? Eg,
<blah>
<argh/>
<meep/>
<meep/>
<stuff/>
<meep/>
</blah>
I'm looking for an XPath statement that would return 1 for the first meep,
2 for the second, and 3 for the 3rd meep, rather than 2, 3, and 5 (which
is what plain position() returns).
I'm trying to count the number of siblings and subtract the number of
siblings of the same type, then subtract that from position(), but I can't
get either of the first two parts there to work either. Does anyone have
any suggestions?
you are under a misaprehention about position() check the archives of
this list. As stated many times nodes do not have a position() intrinsic
to themselves, they just have a position in the current node list.
so the same node will have different positions at different times,
If you were to go select="meep" you would have a node lists of just th
emeep elements and so they would have position() of 1 2 3.
If you go
select="*" you pick up all the elements and so the meeps have positions
of 2 3 and 5. If you use the default value of apply-templates and
you haven't stripped white space then the current node list would also
have text nodes and the meeps would have position of 4 6 and 10 (if I
counted right)
If you want to know th eposition in the tree,
count(previous-sibling::meep)
might be what you are after, it all depends.
David
_____________________________________________________________________
This message has been checked for all known viruses by Star Internet
delivered through the MessageLabs Virus Scanning Service. For further
information visit http://www.star.net.uk/stats.asp or alternatively call
Star Internet for details on the Virus Scanning Service.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list