title: XSLT number formatting with rounding displays negative zero
body: <p>Is there any way to prevent XSLT showing a negative zero value when formatting small negative numbers that require rounding?</p>
  
  <p>The following code</p>
  
  <pre><code>&lt;xsl:variable name="myNum" select="-0.0001"/&gt;
  MyNum = &lt;xsl:value-of select="$myNum"/&gt;
  MyNumrounded = &lt;xsl:value-of select="format-number($myNum, '0.0%')"/&gt;
  </code></pre>
  
  <p>Will generate the following result</p>
  
  <pre><code>MyNum = -0.0001
  MyNumrounded = -0.0%
  </code></pre>
  
  <p>Ideally it would show</p>
  
  <pre><code>MyNum = -0.0001
  MyNumrounded = 0.0%
  </code></pre>
  
  <p>I'm currently using Saxon HE 9.5.0.1</p>
  
  <p>The complete test XSLT is:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="ISO-8859-1"?&gt;
  &lt;xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt;
      &lt;xsl:template match="*"&gt;
          &lt;test&gt;
              &lt;xsl:variable name="myNum" select="-0.0001"/&gt;
              MyNum = &lt;xsl:value-of select="$myNum"/&gt;
              MyNumrounded = &lt;xsl:value-of select="format-number($myNum, '0.0%')"/&gt;
          &lt;/test&gt;
      &lt;/xsl:template&gt;
  &lt;/xsl:stylesheet&gt;
  </code></pre>
  
  <p>Regards,</p>
  
  <p>Mark</p>