This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: What is the scope of template variables?
- To: <xsl-list at lists dot mulberrytech dot com>
- Subject: Re: [xsl] What is the scope of template variables?
- From: "Kurt Cagle" <cagle at olywa dot net>
- Date: Wed, 16 May 2001 15:45:49 -0500
- References: <LAW2-OE16BVVI6x9isZ00001f55@hotmail.com>
- Reply-To: xsl-list at lists dot mulberrytech dot com
<xsl:template match="something">
<xsl:variable name="a" select="XPathExpr"/>
........
<xsl:call-template name="func1"/>
<xsl:apply-templates select="junk"/>
.....
</xsl:template>
<xsl:template name="func1">
<!-- QUESTION: Is the variable $a defined in the calling template
visible to this template? -->
<!-- Answer: No -->
</xsl:template>
<xsl:template match="junk">
<!-- QUESTION: Is the variable $a defined in the calling template
visible to this template? -->
<!-- Answer: No -->
</xsl:template>
>
> <Thanks author="Shakeel Mahate"/>
You need to pass the variables in via parameters to make them visible:
<xsl:template match="something">
<xsl:variable name="a" select="XPathExpr"/>
....
<xsl:call-template name="func1">
<xsl:with-param name="a" select="$a"/>
</xsl:call-template>
<xsl:apply-templates select="junk">
<xsl:with-param name="a" select="$a"/>
</xsl:call-template>
</xsl:template>
<xsl:template name="func1">
<xsl:param name="a"/>
<!-- $a is now visible to this template -->
</xsl:template>
<xsl:template match="junk">
<xsl:param name="a"/>
<!-- $a is now visible to this template -->
</xsl:template>
-- Kurt Cagle
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list