[xquery-talk] XQuery error codes and rewriting
jsnelson at sleepycat.com
Thu Feb 2 13:29:35 PST 2006
David Carlisle wrote:
> For a variety of reasons, including optimization, implementations
> are free to rewrite expressions into equivalent expressions. Other
> than the raising or not raising of errors, the result of evaluating
> an equivalent expression must be the same as the result of
> evaluating the original expression.
Similarly, I have wondered about this clause in the XQuery spec. For
instance, if I choose to rewrite "/" into "fn:root()" instead of
"fn:root(self::node()) treat as document-node()", all I have changed is
the error cases. The expression "/" now gives results in more cases than
it did before (when the result is not a document node), and gives an
alternate error code if the context item is undefined.
Is this acceptable? What if I rewrite an expression to give the same
non-error answers, but complete gibberish when the spec says there
should be an error - is that still conformant to the spec?
John Snelson, Berkeley DB XML Engineer
Sleepycat Software, Inc
Contracted to Sleepycat through Parthenon Computing Ltd
More information about the talk