|
[XQuery Talk Mailing List Archive Home] [By Date] [By Thread] [By Subject] [By Author] [Recent Entries] [Reply To This Message] Question on expected XQuery return per standardsDavid Sewell dsewell at virginia.eduFri Mar 27 14:31:41 PST 2009
Over on another list there has been a discussion of unexpected results
from an XQuery like the following. The issues are how the parser
interprets, in particular, the abbreviated syntax '//' and '[N]' as an
equivalent to '[position() eq N]'.
My belief is that the standard requires that two nodes (p2, p4) should
be returned for result sets 1-4 below, because the interpretation of the
XPath should in each case be identical. Set 5, on the other hand, should
return only p2.
We're seeing different behavior from a couple of XML parsers. Anyone
care to read from the stone tablets on this one?
(: begin query :)
let $xml :=
<root>
<div>
<p>p1</p>
<p>p2</p>
</div>
<div>
<p>p3</p>
<p>p4</p>
</div>
</root>
return (
<set1>{ $xml/descendant-or-self::node()/p[position() eq 2] }</set1>,
<set2>{ $xml//p[position() eq 2] }</set2>,
<set3>{ $xml/descendant-or-self::node()/p[2] }</set3>,
<set4>{ $xml//p[2] }</set4>,
<set5>{ $xml/descendant::p[2] }</set5>
)
(: end query :)
David S.
--
David Sewell, Editorial and Technical Manager
ROTUNDA, The University of Virginia Press
PO Box 801079, Charlottesville, VA 22904-4318 USA
Courier: 310 Old Ivy Way, Suite 302, Charlottesville VA 22903
Email: http://x-query.com/mailman/listinfo/talk Tel: +1 434 924 9973
Web: http://rotunda.upress.virginia.edu/
|
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
|






