This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: position within same nodes





   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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]