This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: node() and empty elements


Robert:

When you write

<xsl:value-of select="boolean(node())" />

the argument of the boolean() function is the node-set returned by the 
XPath expression

child::node()

so it tests false for an empty element (because it has no children).

try

boolean(self::node())

instead.

Cheers,
Wendell

>I noticed this behavior that seemed odd to me when using MSXML 3.0, and
>couldn't find anything in the XMLT standards about whether this is the
>proper behavior or not.
>
>Given the following fragment:
><Tag_1>
>         <Tag_2 />
></Tag_1>
>
>node() at the Tag_1 context returns true, while at the Tag_2 context its
>false.  It struck me as odd, as I expected an "empty node" to be a node none
>the less.
>
>Is this the expected behavior or an MSXML feature?  And if this is the
>expected behavior, what's the logic behind it? And, if it is expected,
>what's the best way to test for "is-empty-element"?
>
>
>
>
>BTW: here's my little test template (a kind'a identity transform), just in
>case I did something wrong....
>
><xsl:template match="/ | *">
>
>         <xsl:value-of select="name(.)" /> IsNode=<xsl:value-of
>select="boolean(node())" />  <br/>
>
>         <xsl:copy>
>                 <xsl:apply-templates select="*"/>
>         </xsl:copy>
></xsl:template>
>
>
>
>Thanks!
>
>
>
>Robert S. Goheen
>mailto:robertg@avenuea.com
>
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list

======================================================================
Wendell Piez                            mailto:wapiez@mulberrytech.com
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
======================================================================


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]