This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
msxml sum() and precision problem
- From: Jonas Nordström <jonas dot nordstrom at exallon dot sigma dot se>
- To: "'xsl-list at lists dot mulberrytech dot com'" <xsl-list at lists dot mulberrytech dot com>
- Date: Thu, 19 Sep 2002 14:02:43 +0200
- Subject: [xsl] msxml sum() and precision problem
- Reply-to: xsl-list at lists dot mulberrytech dot com
Something strange is going on. I strolled through the archives but couldn't
find something similar.
Consider the following:
test.xml:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<jonas>
<name amount="349.03"/>
<name amount="895.01"/>
<name amount="841.03"/>
</jonas>
test.xsl:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" version="4.0" encoding="ISO-8859-1"/>
<xsl:template match="/">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<head>
</head>
<body>
<xsl:apply-templates select="/jonas/name" />
<br/>
Sum: <xsl:value-of select="sum(/jonas/name/@amount)" />
</body>
</html>
</xsl:template>
<xsl:template match="/jonas/name">
<xsl:value-of select="position()"/>: <xsl:value-of select="@amount"
/><br/>
</xsl:template>
</xsl:stylesheet>
and the stunning browser-result:
1: 349.03
2: 895.01
3: 841.03
Sum: 2085.0699999999997
Is there a known precision bug for sum in MSXML (I'm running MSXML3 i
think).
- Jonas Nordstrom -
Sigma Exallon AB
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list