Hi,
I want to build a list with the quantity attribute of the all
ROOMS nodes.
I have this XML:
<ROOMS>
<ROOM quantity="5">
<ROOM quantity="3">
<ROOM quantity="7">
</ROOMS>
My desired output is:
1,2,3,4,5,1,2,3,1,2,3,4,5,6,7
I tryed with an auxiliary variable <xsl:variable
name="num"...>but I can
increment this variable for each node.
No you can't, variables are immutable in XSLT once bound.
<xsl:output method="text"/>
<xsl:strip-space elements="*"/>
<xsl:template match="ROOM" name="counter">
<xsl:param name="i" select="1"/>
<xsl:if test="$i <= @quantity">
<xsl:value-of select="$i"/>
<xsl:if test="not(not(following-sibling::ROOM) and $i =
@quantity)">,</xsl:if>
<xsl:call-template name="counter">
<xsl:with-param name="i" select="$i + 1"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
Cheers,
Jarno - Velvet Acid Christ: Angels In Bondage (B-Side / mp3 128 Mix / by Angels
In Bondage)
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list