RE: [xsl] <xsl:choose> not working -- always results with <xsl: otherwise>?

Subject: RE: [xsl] <xsl:choose> not working -- always results with <xsl: otherwise>?
From: "Passin, Tom" <tpassin@xxxxxxxxxxxx>
Date: Mon, 8 Sep 2003 14:24:08 -0400
[Kathy Burke]

> Hi, I'm trying to use the following choose statement, but 
> when I change my
> xml text to test for both conditions, the results of 
> <xsl:otherwise> always
> show, never the first <choose> which tests (I thought) to see 
> if the text
> node of <measure> is empty. If <measure> is an empty element, 
> I would like
> to give the user an input box, otherwise, just show the data already
> entered.  Any help appreciated.  Thanks.
> The xml is simply either <measure name="firstpass">20 mm</measure> or
> <measure name="firstpass/>.
> <xsl:template match="measure">
>    <xsl:choose>
>       <xsl:when test="normalize-space(.)">

You probably want 


>           <input type="text" name="{@name}" value="{.}"/>
>       </xsl:when>
>       <xsl:otherwise>
>            Entered: <value-of select="."/>

You meant to write 

<xsl:value-of select="."/>
>       </xsl:otherwise>
>    </xsl:choose>
> </xsl:template>

With these corrections, it does what you want.


Tom P

 XSL-List info and archive:

Current Thread