Subject: Re: XPath optional node question
From: David Carlisle <davidc@xxxxxxxxx>
Date: Mon, 4 Dec 2000 22:40:34 GMT
|
me> bar[ancestor::foo and ancester::*[self::foo or descendent::foo or
me> self::a or self::b]]
as previously mentioned that fails if there are extra foo in the
tree, but I think
bar[ancestor::*[not(self::a) or not(self::b)][1][self::foo]]
meets the spec: the first ancestor that isn't a or b is foo.
or, going the other way:
foo[descendent::*[not(self::a) or not(self::b)][1][self::bar]]
foo such that the first descendent that isn't a or b is bar.
David
_____________________________________________________________________
This message has been checked for all known viruses by Star Internet delivered
through the MessageLabs Virus Control Centre. For further information visit
http://www.star.net.uk/stats.asp
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|