- From: <bugzilla@jessica.w3.org>
- Date: Sun, 07 Feb 2016 18:39:42 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=29430 Bug ID: 29430 Summary: [FO31] Resulting type of numeric functions Product: XPath / XQuery / XSLT Version: Recommendation Hardware: PC OS: Windows NT Status: NEW Severity: normal Priority: P2 Component: Functions and Operators 3.1 Assignee: mike@saxonica.com Reporter: abel.braaksma@xs4all.nl QA Contact: public-qt-comments@w3.org Target Milestone: --- This bug report originated from the discussion in bug 29420, a QT3 test bug. The question I would like to raise is what type is expected to be returned: fn:sum((xs:byte(1), xs:byte(2)) fn:sum((xs:unsignedShort(12), xs:unsignedShort(24)) fn:sum((xs:nonNegativeInteger(42), xs:nonNegativeInteger(42)) My take is that, since fn:sum is defined in terms of op:numeric-plus, section 4.2 applies and they should all return xs:integer. That does not prevent them from return xs:byte, xs:unsignedShort, xs:nonNegativeInteger, but if an implementation does not return those types, it should return xs:integer (and not an xs:decimal that is itself not also an xs:integer). Michael Kay argues in bug 29240, comment#5 that the rules in section 4.2 do not apply for fn:sum, but I think they do. Considering the confusion this caused, does it makes sense, and is there room, for writing this up somehow? I.e., change this: <quote> The sum of a sequence of integers will therefore be an integer, while the sum of a numeric sequence that includes at least one xs:double will be an xs:double. </quote> into something like this (in particular add "of more than one"): <quote> The sum of a sequence of more than one integers will therefore be an integer, while the sum of a numeric sequence that includes at least one xs:double will be an xs:double. The sum of a singleton will always retain its type, while the sum of an empty sequence takes the type of the second argument, or xs:integer is absent. </quote> -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Sunday, 7 February 2016 18:39:46 UTC