L'élément <xsl:decimal-format> permet de déclarer un format de nombre pour la fonction format-number().

<xsl:decimal-format.../>
Les attributs :
Elément Description ("Défaut")
digit="caractère" indique un caractère représentant un chiffre dans un pattern de format ("#").
zero-digit="caractère" indique un caractère utilisé pour le zéro ("0")
per-mille="caractère" indique un signe des pour-mille.
percent="caractère" spécifie un signe pour les pourcentages ("%").
NaN="chaîne" spécifie une chaîne de caractère représentant une valeur NaN (Not a Number).
name="nom" exprime le nom à ce format.
decimal-separator="caractère" indique le caractère à utiliser entre la partie entière et la partie décimale d'un nombre ("," : FR ou "." : US).
grouping-separator="caractère" Indique le caractère de séparation entre les groupes de chiffres ("." en France).
infinity="chaîne" spécifie une chaîne représentant l'infini ("Infinity").
minus-sign="caractère" indique un caractère représentant le signe moins("-").
pattern-separator="caractère" indique un caractère représentant le séparateur entre sous-patterns positifs et négatifs (";").

Cet élément peut être contenu dans les instructions <xsl:stylesheet> et <xsl:transform>.

Cet élément ne peut contenir aucunes instructions.

Exemple : [voir]
<?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" encoding="ISO-8859-1"/>
  <xsl:decimal-format name="francais" 
                          decimal-separator=","
                          grouping-separator=""/>
  <xsl:decimal-format name="europeen"
                          decimal-separator=","
                          grouping-separator="."/>
  <xsl:decimal-format name="americain"
                          decimal-separator="."
                          grouping-separator=","/>
  <xsl:template match="/">
  <html><body>
  <table>
      <tr>
        <td>Notation française</td>
        <td>
        <xsl:value-of
             select="format-number(100110429.5, '# ###,00', 'francais')"/>
        </td>
      </tr>
      <tr>
        <td>Notation européenne</td>
        <td>
        <xsl:value-of
             select="format-number(100110429.5, '#.###,00', 'europeen')"/>
        </td>
      </tr>
      <tr>
        <td>Notation américaine</td>
        <td>
        <xsl:value-of
             select="format-number(100110429.5, '#,###.00', 'americain')"/>
        </td>
      </tr>
  </table>
  </body></html>
  </xsl:template>
</xsl:stylesheet>
En savoir plus :
Découvrez cet élément sur le site du W3CDécouvrez cet élément sur le site de Microsoft