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: find the following sibling of my parent


Hi,

For something like the thing you want (linking to the next
div which may be in the body, the front or the back matter)
I've been doing:

<xsl:variable name="next">
<xsl:choose>
 <xsl:when test="following-sibling::div">
  <xsl:value-of
select="following-sibling::div[position()=1]/@id"/>
 </xsl:when>
 <xsl:when test="ancestor::front">
  <xsl:value-of
select="ancestor::front/following-sibling::body/child::div[position()=1]/@id"/>
 </xsl:when>
 <xsl:when test="ancestor::body">
  <xsl:value-of
select="ancestor::body/following-sibling::back/child::div[position()=1]/@id"/>
 </xsl:when>
 <xsl:when test="ancestor::back">
  <xsl:value-of
select="ancestor::back/preceding-sibling::front/child::div[position()=1]/@id"/>
 </xsl:when>
</xsl:choose>
</xsl:variable>

Followed by the code necessary to generate the actual link
to the div with @id attribute equal to the $next variable. 

Regards,
Peter


 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]