[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: xpath: which is right?
At 2004-04-03 20:10 +0200, Suzan Foster wrote: >Taking the following XML: > > <foo> > <bar id="1" /> > <bar id="2" /> > <bar id="3" /> > <fu /> > </foo> > >which value should be returned by the xpath: > >preceding::bar[1]/@id > >libxslt says 3, whilst XML::XPath says 1. If your current node is the <fu/> element node, then the answer is "3". All axes are traversed in a step in proximity order, so the preceding axis is traversed in reverse document order, so the closest one is the one with id="3". Note the different answer with "(preceding::bar)[1]/@id" which is "1" because the set of nodes in the parens is addressed by XSLT in document order. I hope this helps. .................. Ken -- Public courses: Spring 2004 world tour of hands-on XSL instruction Each week: Monday-Wednesday: XSLT/XPath; Thursday-Friday: XSL-FO Hong Kong May 17-21; Bremen Germany May 24-28; Helsinki June 14-18 World-wide on-site corporate, govt. & user group XML/XSL training. G. Ken Holman mailto:gkholman@C... Crane Softwrights Ltd. http://www.CraneSoftwrights.com/x/ Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995) Male Breast Cancer Awareness http://www.CraneSoftwrights.com/x/bc
|
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
|