|
Subject: Re: Variable Scope and xsl:if From: David_Marston@xxxxxxxxx Date: Tue, 18 Apr 2000 12:07:34 -0400 |
Perhaps you could re-arrange the whole situation.
Omar Lopez Ruiz sent this:
<xsl:template matches="whatever">
<xsl:if test="something=true">
<some xsl tags and xsl:call templates>
<xsl:variable name="foo" select="true">
</xsl:if>
<xsl:if test="something=false">
<some other xsl tags>
<xsl:variable name="foo" select="false">
</xsl:if>
<xsl:value-of select="$foo"/> <!-- There's no foo var!!-->
</xsl:template>
It could be changed to:
<xsl:template matches="whatever">
<xsl:variable name="foo" select="something"/>
<xsl:choose>
<xsl:when test="$foo"> <!-- Assumed to be
faster than re-evaluating the "something" expression -->
<some xsl tags and xsl:call templates>
</xsl:when>
<xsl:otherwise>
<some other xsl tags>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
By the way, notice that
<xsl:if test="something=true">
is equivalent to
<xsl:if test="something">
and if you're unsure of whether "something" is suitably
boolean, you could say
<xsl:if test="boolean(something)">
for your own peace of mind.
.................David Marston
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: Variable Scope and xsl:if, Kay Michael | Thread | Re: Variable Scope and xsl:if, Omar López Ruiz |
| Re: small problem, Mikhail Drachuk | Date | RE: Special characters in comments , Kay Michael |
| Month |