Subject: Re: Is a variable referencing a node
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Mon, 29 Sep 2008 13:32:11 -0400
|
Hi,
Trying this again:
At 11:42 AM 9/29/2008, you wrote:
<xsl:variable name="foo">
<xsl:choose>
<xsl:when test="$aVar='someFlag'">
<xsl:value-of select="/path/to/some/element"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="/path/to/another/element"/>
</xsl:otherwise>
</xsl:variable>
<xsl:choose>
<xsl:when test="$foo">
<xsl:value-of select="$foo"/>
</xsl:when>
<xsl:otherwise>--</xsl:otherwise>
</xsl:choose>
<xsl:variable name="flagged" select="$aVar='someFlag'"/>
<xsl:variable name="foo"
select="/path/to/some/element[$flagged] |
/path/to/another/element[not($flagged)]"/>
<xsl:value-of select="$foo"/>
<xsl:if test="not($foo)">--</xsl:if>
In this case, $foo is a node set not an RTF, so we don't fall into
the "RTF is true()" trap.
Similarly, we don't need xsl:choose for deciding whether to write the
"--", since if $foo doesn't exist, writing its value will write nothing.
The $flagged variable is just syntax sugar to make it a bit clearer
what's going on. It is bound to a Boolean.
Cheers,
Wendell
======================================================================
Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================
| Current Thread |
|
David Frey - 29 Sep 2008 15:36:21 -0000
|
|