Format number after calculation : number format « XSLT stylesheet « XML






Format number after calculation


File: Data.xml

<?xml version="1.0"?>
<products>
  <product name="strawberry jam">
    <region name="south" sales="20.00" />
    <region name="north" sales="50.00" />
  </product>
  <product name="raspberry jam">
    <region name="south" sales="205.16" />
    <region name="north" sales="10.50" />
  </product>
  <product name="plum jam">
    <region name="east" sales="320.20" />
    <region name="north" sales="39.50" />
  </product>
</products>

File: Transform.xslt

<?xml version="1.0"?>
<products xsl:version="2.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:for-each select="products/product">
    <xsl:sort select="sum(region/@sales)" order="descending" />
    <product name="{@name}"
      sales="{format-number(sum(region/@sales), '$####0.00')}" />
  </xsl:for-each>
</products>

Output:

<?xml version="1.0" encoding="UTF-8"?><products><product name="plum jam" sales="$359.70"/><product name="raspberry jam" sales="$215.66"/><product name="strawberry jam" sales="$70.00"/></products>

 








Related examples in the same category

1.Number style
2.Format a chosen value as number
3.Various number formats
4.number format="001. "
5.number level="multiple" format="1. "
6.number format="1. " level="multiple"
7.number format="1. " level="multiple" count="chapter|sect1"
8.number format="1. " level="multiple" count="chapter|sect1|sect2"
9.number format="1. "
10.number format="1. " level="any"
11.number format="1. " level="any" from="chapter"