[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: selecting the nearest preceding sibling
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
|
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
|