[xsl] for-each...

Subject: [xsl] for-each...
From: gabor farkas <xlat@xxxxxxxx>
Date: Wed, 19 Dec 2001 23:30:10 +0100
hi,

i have a tree of <chapter>s in my xml files,
and i use this code to generate chapter numbers ( like chapter 1.5.3):

<xsl:template name = "chapter-prefix">
        <xsl:for-each select="ancestor-or-self::chapter">
                <xsl:value-of select="count(preceding-sibling::chapter)+1" />
                <xsl:text>.</xsl:text>
        </xsl:for-each>
</xsl:template>

and it works...
but it generates for example. 1.5.4. and i want 1.5.4 , i don't need
that last dot.

i know i can do it like this:

<xsl:template name = "chapter-prefix">

<xsl:variable name="temp">
        <xsl:for-each select="ancestor-or-self::chapter">
                <xsl:value-of select="count(preceding-sibling::chapter)+1" />
                <xsl:text>.</xsl:text>
        </xsl:for-each>
</xsl:variable>
<xsl:value-of select="substring($temp,0,string-length($temp))"/>

</xsl:template>

but isn't there any more elegant solution?

bye,
gabor


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


Current Thread