Hi Djoerd, from http://www.w3.org/TR/xpath20/ ======== [...] 3.2.2 Predicates [...] Note: When using predicates with a sequence of nodes selected using a reverse axis, it is important to remember that the the context positions for such a sequence are assigned in reverse document order. For example, preceding::foo[1] returns the first qualifying foo element in reverse document order, because the predicate is part of an axis step using a reverse axis. By contrast, (preceding::foo)[1] returns the first qualifying foo element in document order, because the parentheses cause (preceding::foo) to be parsed as a primary expression in which context positions are assigned in document order. Similarly, ancestor::*[1] returns the nearest ancestor element, because the ancestor axis is a reverse axis, whereas (ancestor::*)[1] returns the root element (first ancestor in document order). [...] =======
i.e., (IMHO) MonetDB/XQuery 0.18 was wrong, MonetDB/XQuery 0.22 is right. Stefan On Tue, Feb 19, 2008 at 11:55:26PM +0100, Djoerd Hiemstra wrote: > Hi there MonetDBs, > > The results for the following query changed between v0.18 and v0.22: > > let $list := > <list> > <item>1</item> > <item>2</item> > <item>3</item> > <item>4</item> > </list> > return $list//item[. = "4"]/preceding-sibling::*[1] > > It now gives item 3, which I think is wrong since the results of any > axis step (also preceding-sibling), should be in document order. > The result in version 0.18 is item 1. > > Best, Djoerd. > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Monetdb-developers mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/monetdb-developers > > -- | Dr. Stefan Manegold | mailto:[EMAIL PROTECTED] | | CWI, P.O.Box 94079 | http://www.cwi.nl/~manegold/ | | 1090 GB Amsterdam | Tel.: +31 (20) 592-4212 | | The Netherlands | Fax : +31 (20) 592-4312 | ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Monetdb-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/monetdb-developers
