[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
RE: [xsl] following-sibling question
Subject: RE: [xsl] following-sibling question From: "Ken Tam" <kentam@xxxxxxxxxxxxxxx> Date: Tue, 25 Dec 2007 12:55:07 -0800 |
Thanks for the reply but it doesn't work as the first sample data is still selected. I was able to use the generate-id() function to apply the filter for the not(@id='d') case. -----Original Message----- From: Mukul Gandhi [mailto:gandhi.mukul@xxxxxxxxx] Sent: Saturday, December 22, 2007 1:51 AM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: Re: [xsl] following-sibling question Please try this /items/item[(@id='a') or (@id='c') or (@id='f') or (preceding-sibling::item[@id='a'] and following-sibling::item[@id='c'] and not(@id='d'))] (not tested) On Dec 22, 2007 11:18 AM, Ken Tam <kentam@xxxxxxxxxxxxxxx> wrote: > Hi all, > > I have the following XML sample data: > > <items> > <item id="a"/> > <item id="b"/> > <item id="c"/> > <item id="d"/> > <item id="e"/> > <item id="f"/> > </items> > > and a search requirement to select nodes starting with id="a" passing id="c" > with anything in between and ending in "f" but must not pass through "d". > Thus, the above sample is not a match. Here is a sample that is a match: > > <items> > <item id="a"/> > <item id="b"/> > <item id="b"/> > <item id="e"/> > <item id="c"/> > <item id="e"/> > <item id="f"/> > </items> > > I am not sure how to write the XPATH expression to filter on the "must not > pass through "d" requirement. For example, > > /items/item[@id="a"]/following-sibling::item[@id="c"]/following-sibling::ite > m[@id != "d"]/following-sibling::item[@id="f"] > > doesn't work as "e" is picked up. > > Thanks, > Ken -- Regards, Mukul Gandhi
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] following-sibling questio, Mukul Gandhi | Thread | Re: [xsl] following-sibling questio, Abel Braaksma |
Re: [xsl] XML Buddy - still support, Alexander Johannesen | Date | Re: [xsl] following-sibling questio, Abel Braaksma |
Month |