[Bug 20519] [QT3TS] test cases with too many digits

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

Andrew Eisenberg <andrew.eisenberg@us.ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |---

--- Comment #3 from Andrew Eisenberg <andrew.eisenberg@us.ibm.com> ---
I don't think FOCA0003 is the correct error for this situation. The bullet that
raises FOCA0003 begins with "If ST is xs:decimal, xs:float or xs:double, then
..."

I believe that the rules that apply are:


3.1.1 Literals

The value of the numeric literal is determined by casting it to the appropriate
type according to the rules for casting from xs:untypedAtomic to a numeric type
as specified in Section 18.2 Casting from xs:string and xs:untypedAtomic
(FO30).


18.2 Casting from xs:string and xs:untypedAtomic

When casting to a numeric type:

    o If the value is too large or too small to be accurately represented by
the implementation, it is handled as an overflow or underflow as defined in 4.2
Arithmetic operators on numeric values.


4.2 Arithmetic operators on numeric values

o For xs:integer operations, implementations that support limited-precision
integer operations ·must· select from the following options:

    o They ·may· choose to always raise an error [err:FOAR0002].

    o They ·may· provide an ·implementation-defined· mechanism that allows
users to choose between raising an error and returning a result that is modulo
the largest representable integer value. See [ISO 10967].


So, I now believe that FOAR0002 should be returned.

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

Received on Thursday, 27 December 2012 15:04:26 UTC