Transformation-Patterns Blöcke auszeichnen Falls Blockstrukturen geklammert werden sollen, bspw. wenn diese im HTML Kapitel nur mittels h1 Überschriften-Tags gekennzeichnet sind, dann hilft vielleicht ein Template wie dieses weiter:
<xsl:template match="body"> <xsl:for-each select="h1"> <block> <title> <xsl:apply-templates /> </title> <xsl:apply-templates select="following-sibling::*[not(self::h1)] [preceding-sibling::h1[1][generate-id()=current()/generate-id()]]"/> </block> </xsl:for-each> </xsl:template>Plain Text
Mittels der XPath fn:is() Funktion liesse sich der generate-id() Vergleich sogar noch abkürzen.