RE: How to select either ElementA -OR- ElementB in an
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 , because the result of a union is in document order. Because of this, the ancestor::*[self::A|self::B] 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!
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format