Re: [xsl] Must be a better way to write this XPath expression

Subject: Re: [xsl] Must be a better way to write this XPath expression
From: Frederic Laurent <fl@xxxxxxxxxxxxx>
Date: Fri, 6 Jun 2003 18:27:35 +0200
On Friday 06 June 2003 17:32, Simon.Fairey@xxxxxx wrote:
> Hi,
>
> Given:
>
> <data>
>         <stuff>
>                 <a>
>                         ...lots in here...
>                 </a>
>                 <b>
>                         ...lots in here...
>                 </b>
>                 <c>
>                         ...lots in here...
>                 </c>
>                 <d>
>                         ...lots in here...
>                 </d>
>         </stuff>
> </data>
>
> In my XSL to get sections 'a' and 'b' I would have thought something like:
>
> /data/stuff/(a|b)

doesn't work because you can specify conditionnal expression only into predicate,
between '[' and ']'
like this

/data/stuff/child::*[self::a or self::b]
or
/data/stuff/child::*[name()='a' or name()='b']
or
/data/stuff/*[self::a or self::b]


>
> would work but the only thing I can get to work is:
>
> /data/stuff/a|/data/stuff/b
>
> which just seems too long winded for there not to be a better way to
> express it.

With absolute paths, I think you can't write a shorter expression

HTH


-- 
Frédéric Laurent
http://www.opikanoba.org

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


Current Thread