Subject: RE: How to select either ElementA -OR- ElementB in an axis
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 15 Jun 2005 22:45:32 +0100
|
As an alternative to the solutions you've been given, in 2.0 you can write
select="((ancestor::ElementA|ancestor::ElementB)[last()])/foo/bar"
Note the [last()] rather than [1], because the result of a union is in
document order. Because of this, the ancestor::*[self::A|self::B][1]
approach might well be more efficient.
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: chris [mailto:oneskiingfool@xxxxxxxxx]
> Sent: 15 June 2005 19:35
> To: xslt
> Subject: How to select either ElementA -OR- ElementB in an axis
>
> Hello,
> This has me stumped. I want to do something simple like this (I'll
> keep it short as I think it's self-explanatory)....
>
> <xsl:variable name="myvar" select="ancestor::(ElementA or
> ElementB)/foo/bar"/>
>
> ... where either ElementA or ElementB is selected, whichever is first.
>
> Any ideas? I'm using XPath 2.0
>
> Thanks!
| Current Thread |
Michael Kay - 15 Jun 2005 21:46:04 -0000 <=
- John - 16 Jun 2005 14:25:03 -0000
|
|