Subject: [xsl] Re: Preceding Ancestors From: Dimitre Novatchev <dnovatchev@xxxxxxxxx> Date: Wed, 8 Aug 2001 10:14:13 -0700 (PDT) |
Hi Richard, My records show that I had solved your problem before 8 March 2001 -- see the following: http://vbxml.com/snippetcentral/main.asp?view=viewsnippet&id=v20010308030644 In your particular case the single XPath expression is: //p[parent::p or count(.. | $curr/ancestor::node()) = count($curr/ancestor::node() ) and not(@name=../descendant::node()/p/@name ) and count(. | $curr/following::p) != count($curr/following::p )] where $curr is the node for which you need to find the "p" elements in scope. This will highlight (usng the XPath Visualizer): <p a="1" <p a="2" <p a="6" <p a="7" The last element is also hi-lighted, because the current node is in its scope and knows about itself. Hope this helped. Cheers, Dimitre Novatchev. Richard Mitchell wrote: Well I'm trying to create some sort of scoping rule into my XML definition ( well it's already there but I'm trying to get at it from deep inside one long XPath expression ). What I can't work out is how to get at any preceding elements that are in my 'scope' i.e. from a file like <s> <m> <p a="1"/> <p a="2"/> <m> <p a="3"/> <p a="4"/> <p a="5"/> </m> <m> <p a="6"/> <p a="7"/> <---Context is here <p a="8"/> </m> <p a="9"/> </m> </s> And I'm expecting something like <p a="1"/> <p a="2"/> <p a="6"/> I've tried ancestor::*/p but that will give me <p a="9"/> too. Any ideas out there pleeeeze. I'll owe you a beer ( or beverage of your choice ) next time you're in Cambridge. Ta Muchly. __________________________________________________ Do You Yahoo!? Make international calls for as low as $.04/minute with Yahoo! Messenger http://phonecard.yahoo.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Baby steps, B. Tommie Usdin | Thread | [xsl] Passing parameter from a form, Hewko, Doug |
Re: [xsl] cross-ref, Jeni Tennison | Date | RE: [xsl] xml2xml problem!, Michael Kay |
Month |