Subject: Re: [xsl] Using xsl:for-each-group to create nested sections From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Fri, 9 Jul 2004 22:14:33 +0100 |
Hi Renee, > How can I get the stylesheet to wrap the nested section tags only > around the content beginning with the first <h2> and not around the > elements that come before the first <h2>? Add a test to see whether the current node (which is the first node in a particular group) is an <h2> element or not; if it is, then create the <section> element; if it isn't, then don't: <xsl:template match="doc"> <doc> <xsl:for-each-group select="*" group-starting-with="h1"> <section> <xsl:apply-templates select="current-group()[self::h1]" /> <xsl:for-each-group select="current-group() except ." group-starting-with="h2"> <xsl:choose> <xsl:when test="self::h2"> <section> <xsl:apply-templates select="current-group()[self::*]" /> </section> </xsl:when> <xsl:otherwise> <xsl:apply-templates select="current-group()[self::*]" /> </xsl:otherwise> </xsl:choose> </xsl:for-each-group> </section> </xsl:for-each-group> </doc> </xsl:template> Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Using xsl:for-each-group to c, Swanjord, Renee | Thread | [xsl] finding position in list of s, John C Cartwright |
Re: [xsl] Figuring out for-group-by, Jeni Tennison | Date | Re: [xsl] Muenchian grouping: help , Jeni Tennison |
Month |