xml editor

Supported platforms

Compatible with Windows7 & Mac OS X Snow Leopard

Ready for data server software
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: behavior


Subject: RE: <xsl:variable> behavior
From: Kay Michael <Michael.Kay@xxxxxxx>
Date: Thu, 11 Nov 1999 12:34:03 -0000

Weird, but correct. This language is full of surprises. If xsl:variable
(without select) has children, the value is a result tree fragment,
regardless of the fact that the children produce no output; and in this case
the equivalent node set to the result tree fragment is a root node with no
children of its own; the test xsl:if test=$x tests whether the equivalent
node set contains any nodes, which it does, because it contains a root node
with no children.

Mike Kay
> 
> <xsl:template match="/">
>   <xsl:variable name="x">
>     <xsl:choose>
>       <xsl:when test="false()">X</xsl:when>
>     </xsl:choose>
>   </xsl:variable>
>   <xsl:if test="$x">x</xsl:if>
> </xsl:template>  
> 
> This (unexpectedly) prints "x" using jclark's xt while
> 
> <xsl:template match="/">
>   <xsl:variable name="x"></xsl:variable>
>   <xsl:if test="$x">x</xsl:if>
> </xsl:template>  
> 
> Does not (as expected). 
> 
> Thoughts?
> 
> Clark
> 
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



Current Thread
XML Editor | XML Author | WYSIWYG Editors | Schema Editor | XSD Documentation | XSL/XSLT Editor | XQuery | XML Databases | SVN Client
© 2002-2011 SyncRO Soft Ltd. All rights reserved. | Sitemap | Privacy Policy | This website was created & generated with <oXygen/>®XML Editor