Re: [xsl] Parameter Scope

Subject: Re: [xsl] Parameter Scope
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Tue, 12 Jun 2007 15:33:32 +0100
On 6/12/07, Matt <puskas.duck@xxxxxxxxx> wrote:
Hi all,

I need to be able to pass a pageNo parameter out of a 'lower level'
template into its peer template in the following structure:

<xsl:template match="/">
  <xsl:param name="pageNo" select="'1'"/>

  <xsl:apply-templates mode="pageLayout1">
     <xsl:with-param name="pageNo" select="'$pageNo'"/>
  </xsl:apply-templates>

  <xsl:apply-templates mode=pageLayout2">
    <xsl:with-param name="pageNo" select="'$pageNo'"/>
  </xsl:apply-templates>

</xsl:template>

Where pageLayout1 is a recursive template, it increments the page each
time, I then need to pass the final value into the 2nd pageLayout
template.

At the exit point in the recursive template just apply-templates to the root:


<xsl:apply-templates select="/" mode="pageLayout2">
  <xsl:with-param name="pageNo" select="'$pageNo'"/>
</xsl:apply-templates>

and remove the call in the root matching template.

However it could well be that a different approach altogether would be
best, but its not possible to suggest anything with the sample you've
given

Current Thread