[Bug 29119] [XP31] xs:error always raises a type error

https://www.w3.org/Bugs/Public/show_bug.cgi?id=29119

--- Comment #11 from Michael Kay <mike@saxonica.com> ---
In response to comment #9:

(a) xs:error(1) instance of xs:error can either raise FORG0001 or return false

Yes, I would agree. It can return false on the theory that "If X can be
evaluated without error then (X instance of xs:error) is false, so there is no
need to evaluate X to know the answer", and it can return FORG0001 as a
consequence of the fact that evaluating xs:error(1) returns FORG0001.

(b) declare function local:my-error($qname) as xs:error {fn:error($qname,
"boo")};

"might either raise the [error?] from fn:error() or XPTY0004."

I don't think the function declaration on its own is in any way erroneous. I
agree that a call on this function could either fail with $qname or with
XPTY0004.

(c) declare variable $x as xs:error := fn:error();$x

and

let $x as xs:error := fn:error() return $x

might raise FOER0000 or XPTY0004

I agree.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Tuesday, 6 October 2015 10:06:35 UTC