RE: [xsl] simple conditional looping

Subject: RE: [xsl] simple conditional looping
From: "Andrew Welch" <ajwelch@xxxxxxxxxxxxxxx>
Date: Mon, 16 Aug 2004 10:40:55 +0100
> Hi Keyur,
>   You can simulate a loop with recursion..
>
> <xsl:call-template name="iterate">
>   <xsl:with-param name="x" select="50" />
> </xsl:call-template>
>
> <xsl:template name="iterate">
>   <xsl:param name="x"/>
>
>   <xsl:if test="$x > 0">
>     <tr/>
>     <xsl:call-template name="iterate">
>       <xsl:with-param name="x" select="$x - 1" />
>     </xsl:call-template>
>   </xsl:if>
> </xsl:template>


Using xslt 2.0 you can use:

  <xsl:for-each select="for $x in 1 to 50 return $x">
    <xsl:value-of select="."/>
  </xsl:for-each>

Using Saxon you can easily use this with your xslt 1.0 stylesheets
(unless you are worried about portability).


Cheers
andrew

Current Thread