Use recursion... ie.

<xsl:template match="test">
<xsl:variable name="size">80</xsl:variable>
<xsl:call-template name="ratings">
<xsl:with-param name="limit" select="$size"/>
<xsl:with-param name="this" select="1"/>
</xsl:call-template> 
</xsl:when>
</xsl:choose>
</xsl:template>

<xsl:template name="ratings">
<xsl:param name="limit"/>
<xsl:param name="this"/>
  <xsl:text disable-output-escaping="yes">&lt;node id="</xsl:text>
  <xsl:value-of select="$this"/>
  <xsl:text disable-output-escaping="yes">"&gt;</xsl:text>
  <xsl:apply-templates>
    <xsl:with-param name="segment"><xsl:value-of
select="$this"/></xsl:with-param>
  </xsl:apply-templates>
  <xsl:text disable-output-escaping="yes">&lt;/node&gt;</xsl:text>
  <xsl:if test="$this &lt; $limit">
    <xsl:call-template name="ratings">
      <xsl:with-param name="limit" select="$limit"/>
      <xsl:with-param name="this" select="$this+1"/>
    </xsl:call-template>
  </xsl:if>
</xsl:template>

Philip
=) 

Reply via email to