[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] multiple or statements in xsl:when


Subject: Re: [xsl] multiple or statements in xsl:when
From: Daniel Purucker <dpu@xxxxxxxxxxxxxxxxxx>
Date: Sat, 3 Apr 2004 12:55:21 +0200

Thanx you two.
Your hints just solved my problem. I had to use and instead of or:

<xsl:when test="(name(.)='void' and (
@property != 'assetscontainer' and
@property != 'incomecontainer' and
@property != 'value' and
@property != 'variable')">
<!-- code -->
</xsl:when>
<xsl:otherwise>
<!-- ignore stuff -->
</xsl:otherwise>

Thanx again,
Daniel


Am 02.04.2004 um 21:56 schrieb Andreas L. Delmelle:


-----Original Message-----
From: Daniel Purucker [mailto:dpu@xxxxxxxxxxxxxxxxxx]

Sorry, but i'm a little confused (dammed boolean algebra) ;)
What i want is: to run the code if:
a) the name of the tag is void AND
b) there is an attribute "property" which is not empty AND
c) the value of this attribute is either 'container' OR '
assetscontainer' OR and so on


Hi,


Well, you could make it easier on yourself if you were to place a few braces
in strategic locations ;)


However, first things first: following c) above, I don't see why you are
testing for *in*equality to 'container' or 'assetcontainer' ...


This would more reflect what you're trying to do:

<xsl:when test="(name(.)='void' and @property!='') and (
@property='container' or @property='assetscontainer' ... )" />


To specify which @property values to disregard:

<xsl:when test="name(.)='void' and (
            @property != '' and
            @property != 'string' ...)" />



Hope this helps!

Cheers,

Andreas


Current Thread