This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: or in xsl:if
- To: "Corey Spitzer" <cspitzer at cisco dot com>
- Subject: Re: [xsl] or in xsl:if
- From: Jeni Tennison <jeni at jenitennison dot com>
- Date: Wed, 31 Oct 2001 17:59:58 +0000
- CC: xsl-list at lists dot mulberrytech dot com
- Organization: Jeni Tennison Consulting Ltd
- References: <NEBBJNCGFHNDBBFLJOECMEJIJCAB.cspitzer@cisco.com>
- Reply-To: xsl-list at lists dot mulberrytech dot com
Hi Corey,
> <xsl:if test="@id = 'x' or @id = 'y' ">
>
> or
>
> <xsl:if test="@id = 'x' | @id = 'y' ">
Not this second one - the | is the union operator, so the operands
have to both be node sets. As you have it above, it would generate an
error.
| can be treated like an 'or' sometimes because a node set evaluates
as boolean true if it has any nodes in it. Making a union of two node
sets results in a non-empty node set if either node set is non-empty.
So:
test="@name or @id"
will give the same result as:
test="@name | @id"
But in general you should only use 'or' for or.
Cheers,
Jeni
---
Jeni Tennison
http://www.jenitennison.com/
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list