This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Grouping conditions


Hi Ragulf,

> Is there any other way of grouping these than
> <xsl:choose>
>   <xsl:when test="@type='101' or @type='102' or @type='103' ...">
>     <xsl:do-something/>
>   </xsl:when>
>   <xsl:when test="@type='201' or @type='202' or @type='203' ...">
>     <xsl:do-something-else/>
>   </xsl:when>
> </xsl:choose>
> 
> Is there a way doing something like:
> <xsl:choose>
>   <xsl:when test="@type='101'|'102'|'103'|'104'...">
> ..
> </xsl:choose>

Apart from @type>=101 and @type<=...

You might place your values as a data section into your stylesheet:

<xsl:stylesheet xmlns:data="http://my.namespace"; ...>

<data:values type="1">
  <data:value>101</data:value>
  <data:value>102</data:value>
  ...
</data:values>
<data:values type="2">
  <data:value>201</data:value>
  <data:value>202</data:value>
  ...
</data:values>

<xsl:variable name="values" select="document('')/*/data:values" />

and then
<xsl:when test="@type=$values[@type='1']/data:value">
...
</xsl:when>
<xsl:when test="@type=$values[@type='2']/data:value">
...
</xsl:when>

Cheers,
Oliver


/-------------------------------------------------------------------\
|  ob|do        Dipl.Inf. Oliver Becker                             |
|  --+--        E-Mail: obecker@informatik.hu-berlin.de             |
|  op|qo        WWW:    http://www.informatik.hu-berlin.de/~obecker |
\-------------------------------------------------------------------/


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]