Élément <xsl:decimal-format> de XSLT

Définition et utilisation

L'élément <xsl:decimal-format> définit les caractères et les symboles à utiliser lorsque le format-number() est utilisé pour convertir un nombre en chaîne de caractères.

Pas tous les pays utilisent les mêmes caractères pour séparer les parties décimales et entières, ou pour regrouper les nombres. Grâce à l'élément <xsl:decimal-format>, vous pouvez remplacer les caractères spécifiques par d'autres symboles.

Cet élément est un élément de niveau supérieur (top level).

La fonction format-number() peut être appelée par son nom (name) pour faire référence à l'élément <xsl:decimal-format>.

Grammaire

<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"/>

Attribut

Attribut Valeur Description
name name Optionnel. Définit le nom pour ce format.
decimal-separator char Optionnel. Définit le caractère de point décimal. Par défaut, il s'agit de ".".
grouping-separator char Optionnel. Définit le caractère de séparation des milliers. Par défaut, il s'agit de ",".
infinity string Optionnel. Définit la chaîne de caractères utilisée pour représenter l'infini. Par défaut, il s'agit de "Infinity".
minus-sign char Optionnel. Définit le caractère pour représenter un nombre négatif. Par défaut, il s'agit de "-".
NaN string Optionnel. Définit la chaîne de caractères utilisée lorsque la valeur n'est pas un nombre. Par défaut, il s'agit de "NaN".
percent char Optionnel. Définit le caractère pour le symbole de pourcentage. Par défaut, il s'agit de "%".
per-mille char Optionnel. Définit le caractère pour le symbole de mille. Par défaut, il s'agit de "‰".
zero-digit char Optionnel. Définit le caractère pour le nombre 0. Par défaut, il s'agit de "0".
digit char Optionnel. Définit le caractère, utilisé pour indiquer les endroits où doivent être utilisés des nombres. Par défaut, il s'agit de #.
pattern-separator char. Optionnel. Définit le caractère, utilisé pour séparer les modes positif et négatif du modèle de formatage. Par défaut, il s'agit de ";".

Exemple

Exemple 1

L'exemple suivant montre comment formater en monnaie européenne (veuillez noter que le troisième paramètre de la fonction format-number() fait référence au nom de l'élément <xsl:decimal-format>):

<?xml version="1.0" encoding="ISO-8859-1"?>
<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>

Sortie :

26.825,80