- From: <bugzilla@wiggum.w3.org>
- Date: Wed, 28 Sep 2005 10:36:16 +0000
- To: public-qt-comments@w3.org
- Cc:
http://www.w3.org/Bugs/Public/show_bug.cgi?id=1901 chamberl@almaden.ibm.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution| |FIXED ------- Additional Comments From chamberl@almaden.ibm.com 2005-09-28 10:36 ------- Andreas, On Sept. 28, 2005, the Query Working Group considered your comment and resolved it as follows: In XQuery Section 5.3 (Data Model Conformance), the following new rule will be added: 4. Ranges of data values: In XQuery, the following limits are implementation-defined: (a) For the xs:decimal type, the maximum number of decimal digits (totalDigits facet) (must be at least 18) (b) For the types xs:date, xs:time, xs:dateTime, xs:gYear, xs:gYearMonth: the maximum value of the year component, and the maximum number of fractional second digits (must be at least 3). (c) For the xs:duration type: the maximum absolute values of the years, months, days, hours, minutes, and seconds components. (d) For the xdt:yearMonthDuration type: the maximum absolute value, expressed as an integer number of months. (e) For the xdt:dayTimeDuration type: the maximum absolute value, expressed as a decimal number of seconds. (f) For the types xs:string, xs:hexBinary, xs:base64Binary, xs:QName, xs:anyURI, xs:NOTATION, and types derived from them: limitations (if any) imposed by the implementation on lengths of values. Note that all of the above limitations need not be fixed, but may depend on environmental factors such as system resources. In the specific example cited in your comment, the decimal literal 1.00000000000000000000000001, the XQuery document specifies that the literal is converted to a decimal value by the rules for casting from string to decimal, which in turn are defined by the rules for XML Schema validation. XML Schema validation states that a value that is not exactly equal to any point in the target value space is mapped into the nearest point in the value space. Therefore the correct handling of the literal in your example is to map it into the decimal value 1.0. I have marked your comment as "Resolved and fixed." If this resolution is acceptable to you, please change the status of this comment to "Closed". Regards, Don Chamberlin
Received on Wednesday, 28 September 2005 10:36:42 UTC