|
Subject: Re: [xsl] shortest way to write this xsl:if statement From: henry human <henry_human@xxxxxxxx> Date: Fri, 15 Jun 2012 13:14:01 +0100 (BST) |
Hi ken
fine! thanks, I will try it.
k regards
hh
----- Urspr|ngliche
Message -----
Von: G. Ken Holman <gkholman@xxxxxxxxxxxxxxxxxxxx>
An:
xsl-list@xxxxxxxxxxxxxxxxxxxxxx; "xsl-list@xxxxxxxxxxxxxxxxxxxxxx"
<xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
CC:
Gesendet: 13:59 Freitag, 15.Juni 2012
Betreff: Re: [xsl] shortest way to write this xsl:if statement
At 2012-06-15
12:54 +0100, henry human wrote:
> Hello
> The following if statement is too
long if try it as in the sample bellow.
> How could be shorter?
> The if -
logic to create a for-each loop:
> ----------------
> xsl:if
> D4/G100/6id or
D4/G100/9id or D4/G100/12id or D4/G100/6id15 or D4/G100/45id or D4/G100/22id,
D4/G100/10id
> or D4/G100/19id is 'A' or 'B' or 'C', or 'D' or 'F'
>
> The
Sample:
> <xsl:if test="D4/G100/6id = 'A' OR test="D4/G100/6id = 'B' OR
test="D4/G100/6id = 'C' OR test="D4/G100/9id = 'A' OR test="D4/G100/9id = 'B'
.....>
>
> <xsl:for-each select=" ......">
> ...
> </xsl:for-each>
>
>
</xsl:if>
Element names cannot begin with digits, so I'm unclear how you are
going to be testing elements such as <6id>.
But, assuming you had elements
D4/G100/X and D4/G100/Y and D4/G100/Z, you could have in XSLT2 the following:
<xsl:if test="D4/G100/(X,Y,Z) = ('A','B','C')">
... which is equivalent to:
D4/G100/X = 'A' or
D4/G100/X = 'B' or
D4/G100/X = 'C' or
D4/G100/Y =
'A' or
D4/G100/Y = 'B' or
D4/G100/Y = 'C' or
D4/G100/Z = 'A' or
D4/G100/Z = 'B' or
D4/G100/Z = 'C'
When using the "=" comparison operator,
either operand can be a set. The processor walks through the comparisons in
an arbitrary order eventually testing each of the left operand with each of
the right operand and stops when it hits a true() result and returns true().
If you get a false() returned, you know the processor has checked every
possible combination and every combination has returned false().
I hope this
helps.
. . . . . . . . . . . Ken
--
Public XSLT, XSL-FO, UBL and code list
classes in Europe -- Oct 2012
Contact us for world-wide XML consulting and
instructor-led training
Free 5-hour lecture:
http://www.CraneSoftwrights.com/links/udemy.htm
Crane Softwrights Ltd.
http://www.CraneSoftwrights.com/s/
G. Ken Holman
mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Google+ profile:
https://plus.google.com/116832879756988317389/about
Legal business
disclaimers: http://www.CraneSoftwrights.com/legal
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] shortest way to write thi, G. Ken Holman | Thread | Re: [xsl] shortest way to write thi, Ihe Onwuka |
| Re: [xsl] shortest way to write thi, G. Ken Holman | Date | Re: [xsl] shortest way to write thi, henry human |
| Month |