[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: <xsl:if test="@attribute=$varValue">

Subject: Re: <xsl:if test="@attribute=$varValue">
From: "Steve Muench" <smuench@xxxxxxxxxxxxx>
Date: Wed, 16 Feb 2000 07:39:23 -0800
xsl if test
Philippe,

Given an XML source of:

<foo attr="bar"/>

A stylesheet of:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
 <xsl:template match="foo">
   <xsl:variable name="varValue0" select="bar"/>
   <xsl:variable name="varValue1" select="'bar'"/>
   <xsl:variable name="varValue2">bar</xsl:variable>
   <xsl:if test="@attr = $varValue0">
     attr = varvalue0
   </xsl:if>
   <xsl:if test="@attr = $varValue1">
     attr = varvalue1
   </xsl:if>
   <xsl:if test="@attr = $varValue2">
     attr = varvalue2
   </xsl:if>
 </xsl:template>
</xsl:stylesheet>

Produces

     attr = varvalue1
     attr = varvalue2

NOTE
----

  (1) attr does *NOT* match $varValue0 since
      the variable was set equal to an empty
      nodeset when select="bar" did not find
      any children elements named "bar".

  (2) There are two ways to get a string value
      assigned to a variable:

        <!-- Note the single quotes around 'string' -->
        <xsl:variable name="x" select="'string'"/>
        <xsl:variable name="y">string</xsl:variable>


Hopefully this example will help see what might
be different with your case.

_________________________________________________________
Steve Muench, Consulting Product Manager & XML Evangelist
Business Components for Java Development Team

----- Original Message -----
From: "Philippe Vijghen" <Philippe.Vijghen@xxxxxxxx>
To: <xalan-dev@xxxxxxxxxxxxxx>
Sent: Wednesday, February 16, 2000 4:37 AM
Subject: RE: <xsl:if test="@attribute=$varValue">


Using <xsl:value-of> in my simplified example was a mistake.
The issue is related to tests, such as in <xsl:if>.

I could not solve the issue and had to implement a work-around
in my stylesheet.

Le'ts rephrase it:

<xsl:if select="@attribute='myVarValue'">hello</xsl:if>

...is working perfectely and perform the expected test
on the attribute value.

However

<xsl:template name="tmplName">
<xsl:param name="varValue">myVarValue</varValue>
<xsl:if select="@attribute=$varValue">hello</xsl:if>
</xsl:template>

...is not working:
the test is never considered as 'true'
although I verified that both the $varValue parameter
and the attribute are correctely initiliazed to 'myVarValue'.

Philippe



> -----Original Message-----
> From: Steve Muench [mailto:smuench@xxxxxxxxxxxxx]
> Sent: lundi 14 fivrier 2000 18:52
> To: xalan-dev@xxxxxxxxxxxxxx
> Subject: Re: <xsl:if test="@attribute=$varValue">
>
>
> |            <xsl:template name="tmplName">
> |            <xsl:param name="varValue">myVarValue</varValue>
> |            <xsl:value-of select="@attribute={$varValue}">
> |            </xsl:template>
>
> The title of the mail says:
>
>    <xsl:if test="@attribute=$varValue"/>
>
> but in the body of the mail, it says:
>
>    <xsl:value-of select="@attribute=$varValue"/>

...

> Could this be the problem?

...



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


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.