On 28 October 2011 14:56, Lighton Phiri
<lighton(_dot_)phiri(_at_)gmail(_dot_)com> wrote:
I am trying to figure out how to get the position of a particular node
after apply a filter. I am able to get the result after using the
XPath below, however, I can't seem to figure out how to get the
position of that node.
bpage = ASTRO_00007.JPG
books/book[substring-after(substring-after(substring-after(text(),
'/'), '/'), '/')=$bpage]
<books>
<book>books/physics/astronomy/ASTRO_00002.JPG</>
<book>books/physics/astronomy/ASTRO_00003.JPG</>
<book>books/physics/astronomy/ASTRO_00004.JPG</>
<book>books/physics/astronomy/ASTRO_00005.JPG</>
<book>books/physics/astronomy/ASTRO_00006.JPG</>
<book>books/physics/astronomy/ASTRO_00007.JPG</>
<book>books/physics/astronomy/ASTRO_00008.JPG</>
<book>books/physics/astronomy/ASTRO_00009.JPG</>
<book>books/physics/astronomy/ASTRO_00010.JPG</>
</books>
count(preceding-sibling::*) to count the number of preceding elements,
so add 1 to that and you get its position amongst its siblings.
Also, instead of the nested substrings, you can do:
book[ends-with(., $bpage)]
or
book[tokenize(., '/')[last()] eq $bpage]
--
Andrew Welch
http://andrewjwelch.com
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--