RE: RE: [xsl] Recursively looping through a template only X number of times?

Subject: RE: RE: [xsl] Recursively looping through a template only X number of times?
From: cknell@xxxxxxxxxx
Date: Tue, 28 Nov 2006 15:06:19 -0500
I don't where you got the idea that <xsl:param> can't be a child of <xsl:template>, but that is not so.
-- 
Charles Knell
cknell@xxxxxxxxxx - email



-----Original Message-----
From:     Austin, Darrel <Darrel.Austin@xxxxxxxxxxxxxxxxxx>
Sent:     Tue, 28 Nov 2006 13:16:44 -0600
To:       <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Subject:  RE: [xsl] Recursively looping through a template only X number of times?

> You want to use template parameters. Declare xsl:param inside 
> the template, and use xsl:with-param to set a value on the call.

The problem appears to be that xsl:with-param can not be a child of
xsl:template, so I can't call the template recursively while changing
the param value.

> Just have
> <xsl:variable name="tocdepth" select="2"/>
> then wrap your code in
> <xsl:if test="count(ancestor::ruleItem)<=$tocdepth">
> .. make a toc entry...
> </xsl:if>

Of course! Makes perfect sense. That works nicely.

That said, I'm still curious as to how (or if) one can create recursive
logic that can 'count' the recursions via XSL.

-Darrel

Current Thread