xsl-list
[Top] [All Lists]

RE: selecting the nearest preceding sibling

2003-05-13 09:22:23
Hi Jarno ,
Thanks a lot. I can get the desired o/p with your
syntax..

Regards,
Mukul

--- Jarno(_dot_)Elovirta(_at_)nokia(_dot_)com wrote:
Hi,
OK - the node set of all the preceding siblings
which 
fit the criterium is given by 

preceding-sibling::tag[a]

The nearest preceding sibling fitting the
criterium is 
the last one in that nodeset (the nodes are always
in 
document order)... that is, 

preceding-sibling::tag[a and last()]

Wrong. Simple "last()" will always evaluate to a
positive number, thus the above will compile to

  preceding-sibling::tag[a]

Furthermore, nodes are always *processed* in
document order, but preceding-sibling is a preceding
axis and 

  preceding-sibling::tag[a and position() = last()]

will select the first node in document order. You
can use 

  (preceding-sibling::tag[a])[position() = last()]

and then you'd get the first preceding sibling. Evan
Lenz wrote an article about this stuff

<http://www.biglist.com/lists/xsl-list/archives/200201/msg00108.html>.

Cheers,

Jarno - neuroticfish: wakemeup! (club-edit)

 XSL-List info and archive: 
http://www.mulberrytech.com/xsl/xsl-list



__________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.
http://search.yahoo.com

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



<Prev in Thread] Current Thread [Next in Thread>