Latest web development tutorials
 

XSLT <xsl:decimal-format> Element


< Complete XSLT Element Reference

Definition and Usage

The <xsl:decimal-format> element defines the characters and symbols to be used when converting numbers into strings, with the format-number() function.

All countries do not use the same characters for separating the decimal part from the integer part, and for grouping digits. With the <xsl:decimal-format> element you can change special characters to other symbols.

This element is a top level element.

The format-number() function can refer to the <xsl:decimal-format> element by name.


Syntax

<xsl:decimal-format
name="name"
decimal-separator="char"
grouping-separator="char"
infinity="string"
minus-sign="char"
NaN="string"
percent="char"
per-mille="char"
zero-digit="char"
digit="char"
pattern-separator="char"/>

Attributes

Attribute Value Description
name name Optional. Specifies a name for this format
decimal-separator char Optional. Specifies the decimal point character. Default is "."
grouping-separator char Optional. Specifies the thousands separator character. Default is ","
infinity string Optional. Specifies the string used to represent infinity. Default is "Infinity"
minus-sign char Optional. Specifies the character to represent negative numbers. Default is "-"
NaN string Optional. Specifies the string used when the value is not a number". Default is "NaN"
percent char Optional. Specifies the percentage sign character. Default is "%"
per-mille char Optional. Specifies the per thousand sign character. Default is "‰"
zero-digit char Optional. Specifies the digit zero character. Default is "0"
digit char Optional. Specifies the character used to indicate a place where a digit is required. Default is #
pattern-separator char Optional. Specifies the character used to separate positive and negative subpatterns in a format pattern. Default is ";"

Example 1

The example below shows how to format to European currency (note that the third argument in format-number() refers to the name of the <xsl:decimal-format> element:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:decimal-format name="euro" decimal-separator="," grouping-separator="."/>
  <xsl:template match="/">
    <xsl:value-of select="format-number(26825.8, '#.###,00', 'euro')"/>
  </xsl:template>
</xsl:stylesheet>

Output:

26.825,80

< Complete XSLT Element Reference