This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: testing for child nodes
- To: xsl-list at lists dot mulberrytech dot com
- Subject: [xsl] Re: testing for child nodes
- From: Robert Koberg <rob at koberg dot com>
- Date: Sat, 24 Feb 2001 09:43:03 -0800
- Reply-To: xsl-list at lists dot mulberrytech dot com
>
> I want to to be able to test for a node that has no child nodes but could
> possibly have attributes.
> I display the test value like so:
> **<xsl:value-of select="not(child::node())"/>**
> for a node that looks like this:
> <pointer role="News1" fileref="news1.xml"/>
I forgot to add that the following also returns true (when matching on
section):
<section>
<pointer>
<section>
----- Original Message -----
From: "Robert Koberg" <rob@koberg.com>
To: <xsl-list@lists.mulberrytech.com>
Sent: Saturday, February 24, 2001 9:26 AM
Subject: testing for child nodes
> Hello all,
>
> I want to to be able to test for a node that has no child nodes but could
> possibly have attributes.
> I display the test value like so:
> **<xsl:value-of select="not(child::node())"/>**
> for a node that looks like this:
> <pointer role="News1" fileref="news1.xml"/>
>
> but the result is always true. How do you test for this? The pertinent
part
> of the XSL is below:
>
> <xsl:choose>
> <xsl:when test="node()!=text() and not(child::node())">
> <input type="hidden" name="{concat('_tag',$family,'.end')}"
> value="/{name()}"/><xsl:text>
> </xsl:text>
> </xsl:when>
> <xsl:when test="child::node()">
> <input type="hidden" name="{concat('_tag',$family,'.end')}"
> value="{name()}/"/><xsl:text>
> </xsl:text>
> </xsl:when>
> <xsl:when test="node()=text()">
> <xsl:value-of select="name()"/><xsl:text>: </xsl:text><input
> name="{concat(name(),$family)}" value="{.}"/><br/><xsl:text>
> </xsl:text>
> </xsl:when>
> </xsl:choose>
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list