xsl-list
[Top] [All Lists]

Re: position() of parent node

2003-11-17 14:15:11
Robert Ogden wrote:
                <xsl:for-each select="imageLink">
                        <xsl:if test="chapter[position() != 21]">
...
What I am getting at, is that I want to output all text links (easy
enough), and all images for chapters unless the chapter is 21 (which
happens also to be last, which I tried <xsl:if test="chapter[position()
!= last()]">)

Well, the <chapter> is, as you noted, the parent of imageLink,
therefore the XPath "chapter[position() != 21]" inside the
for-each wont select anything (independently of the predicate,
because there is no <chapter there).

You can try to count the previous siblings of the chapter. Of
course, you'll have to navigate to the parent first:
 <xsl:if test="parent::chapter[count(previous-sibling::chapter)=21]">
or if you want the last (no following sibling chapter):
 <xsl:if test="parent::chapter[not(following-sibling::chapter)]">

J.Pietschmann



XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>