Subject: RE: [xsl] Recursively looping through a template only X number of times? From: "Brian Martinez" <Brian.Martinez@xxxxxxxxxxxx> Date: Tue, 28 Nov 2006 15:05:47 -0700 |
> 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. It's true that xsl:with-param cannot be a child of xsl:template, but that's not the point: to use recursion you need to call the template from within itself, using xsl:call-template. Brief example: <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html"/> <xsl:template match="/"> <xsl:call-template name="xyzTemp"> <xsl:with-param name="counter" select="1"/> </xsl:call-template> </xsl:template> <xsl:template name="xyzTemp"> <xsl:param name="counter"/> This is line <xsl:value-of select="$counter"/>.<xsl:value-of select="'% <xsl:if test="$counter < 10"> <xsl:call-template name="xyzTemp"> <xsl:with-param name="counter" select="$counter + 1"/> </xsl:call-template> </xsl:if> </xsl:template> </xsl:stylesheet> hth, b. > -----Original Message----- > From: Austin, Darrel [mailto:Darrel.Austin@xxxxxxxxxxxxxxxxxx] > Sent: Tuesday, November 28, 2006 12:17 PM > 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 |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Recursively looping throu, Austin, Darrel | Thread | [xsl] XML design for XSLT (was Re: , Wendell Piez |
RE: RE: [xsl] Recursively looping t, Austin, Darrel | Date | [xsl] invoking nodes from multiple , chun ji |
Month |