I'm using the following to match all <section>
s with a revision attribute set. <section>
can appear at many different levels of the document tree, always contained within <chapter>
s.
<xsl:for-each select="//section[@revision]">
<!-- Do one thing if this is the first section
matched in this chapter -->
<!-- Do something else if this section is in the same
chapter as the last section matched -->
</xsl:for-each>
As the comments say, I need to make each for-each
iteration aware of the chapter to which the previous matched section belonged. I know that <xsl:variable>
s are actually static once set, and that <xsl:param>
only applies to calling templates.
This being Docbook, I can retreive a section's chapter number with:
<xsl:apply-templates select="ancestor::chapter[1]" mode="label.markup" />
but I think it can be done with purely XPath.
Any ideas? Thanks!