Subject: [xsl] Floating point precision error From: "Thang Le" <tle@xxxxxxxxxxx> Date: Wed, 25 Jan 2006 20:16:26 -0500 |
This is something I don't understand. Given this XSL snippet: <xsl:value-of select="$nodes[1]/unitamount" />_ <xsl:value-of select="$nodes[1]/quantity" />_ <xsl:value-of select="($nodes[1]/quantity * $nodes[1]/unitamount)" />_ I'm getting the printout as: 6.4_ 3000_ 19199.908447265625_ The literal values in XML is 6.4 and 3000. If I round the result to 2 decimal places, I still get 19199.91, a far cry from what it should be (19200). I'm using dom4j 1.6, so I guess that's XSLT 1.0? Also this only happens on SunOS and not on Windows. Still, the error is huge and obvious. Isn't there a way to force the calculation to be more exact? Thanks, Thang Le -- NeoMail - http://neomail.sourceforge.net
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: RE: [xsl] Creating XPath2 funct, Dimitre Novatchev | Thread | RE: [xsl] Floating point precision , Michael Kay |
RE: [xsl] Creating XPath2 functions, Michael Kay | Date | Re: RE: [xsl] Creating XPath2 funct, Dimitre Novatchev |
Month |