[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
RE: [xsl] floor() and idiv
Subject: RE: [xsl] floor() and idiv From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Thu, 6 Nov 2008 23:02:29 -0000 |
> David> For xs:decimal values the number of digits of precision > David> returned by the numeric operators is > David> .implementation-defined.. If the number of digits in the > David> result exceeds the number of digits that the implementation > David> supports, the result is truncated or rounded in an > David> .implementation-defined. manner. > > Oh. Well that's a bad decision, as you no longer have the > neat divide between exact arithmetic (requested by xs:integer > or xs:decimal) and inexact arithmetic (requested by xs:double > and xs:float) that you get in XML Schema. Dividing two integers can produce a result that is not expressible in a finite number of decimal digits. The spec chose therefore to say that the number of digits in the result of (10 div 3), say, is implementation-defined. I don't know if that's the reason for the effect being observed here, but I suspect so. In which case the statement in the spec about the equivalence of xs:int(x div y) and (x idiv y) is clearly incomplete. Michael Kay http://www.saxonica.com/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] floor() and idiv, David Carlisle | Thread | RE: [xsl] floor() and idiv, Michael Kay |
Re: [xsl] Combining nodes, David Carlisle | Date | Re: [xsl] How can I know if a node , Frédéric Choubelle |
Month |
Keywords