A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
Die Deklaration xsl:decimal-format dient dazu, ein Format zu erstellen in dem bestimmte Zeichen eines Formatierungsmusters für Dezimalzahlen definiert werden. Der Name des Formats wird im Attribut name angegeben. Wird kein solches Attribut angegeben, überschreibt die Formatdefinition das Defaultformat. Das xsl:decimal-format-Element ist ein Toplevel-Element und muss leer sein.
Zu den definierbaren Zeichen gehören beispielsweise das "Minuszeichen", welches negative Zahlen kennzeichnet (Default: Minuszeichen "-"), das "Komma", welches Vor- und Nachkommastellen trennt (Default: Punkt ".") oder der Gruppenseperator, der zur Gruppierung zwischen Ziffern gesetzt wird (Default: Komma ","). Anstelle der Defaultwerte wird bei Anwendung einer xsl:decimal-format-Deklaration jeweils der Wert des minus-sign-, decimal-separator- bzw. grouping-separator-Attributs verwendet. Zusätzlich können das Prozentzeichen (%) mit dem percent-Attribut und das Pomillezeichen (‰) mit per-mille sowie die Ausgabe bei dem Wert "unendlich" mit infinity und bei NaN-Werten mit NaN bestimmt werden.
Angewandt wird ein definiertes Format bei der Funktion fn:format-number. Hier kann im dritten Argument mit dem Formatnamen auf ein solches Format referenziert werden. Für die Funktion fn:format-number werden zusätzlich Steuerzeichen verwendet, die ebenfalls in der xsl:decimal-format-Deklaration angegeben werden können. Das Attribut zero-digit bestimmt die festgelegten Stellen (Default: "0"), digit die variablen Stellen (Default: "#") und pattern-seperator das Trennzeichen zwischen den Formatierungsmustern für die postiven und negativen Werte.
Attribute
name, decimal-separator, grouping-separator, minus-sign, percent, per-mille, infinity, NaN, zero-digit, digit, pattern-separator<?xml version="1.0"encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:decimal-format decimal-separator="," grouping-separator="."></xsl:decimal-format> <xsl:template match="/"> <root> <xsl:for-each select="/root/stadt"> <stadt> <name><xsl:value-of select="name"></xsl:value-of></name> <einwohner><xsl:value-of select="format-number (einwohner, '#.###.##0')"></xsl:value-of></einwohner> </stadt> </xsl:for-each> </root> </xsl:template> </xsl:stylesheet>
<?xml version="1.0"encoding="UTF-8"?> <root> <stadt> <name>Berlin</name> <einwohner>3.420.786</einwohner> </stadt> <stadt> <name>Hamburg</name> <einwohner>1.773.218</einwohner> </stadt> <stadt> <name>Paris</name> <einwohner>2.166.200</einwohner> </stadt> <stadt> <name>Ludwigshafen</name> <einwohner>163.777</einwohner> </stadt> </root>
<?xml version="1.0"encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:decimal-format decimal-separator="," grouping-separator="."> </xsl:decimal-format> <xsl:template match="/"> <root> <xsl:for-each select="/root/stadt"> <stadt> <name><xsl:value-of select="name"></xsl:value-of></name> <einwohner><xsl:value-of select="format-number (einwohner, '#.###.##0')"></xsl:value-of></einwohner> </stadt> </xsl:for-each> </root> </xsl:template> </xsl:stylesheet>
<?xml version="1.0"encoding="UTF-8"?> <root> <stadt> <name>Berlin</name> <einwohner>3.420.786</einwohner> </stadt> <stadt> <name>Hamburg</name> <einwohner>1.773.218</einwohner> </stadt> <stadt> <name>Paris</name> <einwohner>2.166.200</einwohner> </stadt> <stadt> <name>Ludwigshafen</name> <einwohner>163.777</einwohner> </stadt> </root>
<?xml version="1.0"encoding="UTF-8"?> <root> <stadt land="de"> <name>Berlin</name> <einwohner>3420786</einwohner> <fläche>891.85</fläche> <gemeinde>11000000</gemeinde> <bewertung>5</bewertung> </stadt> <stadt land="de"> <name>Hamburg</name> <einwohner>1773218</einwohner> <fläche>755.264</fläche> <gemeinde>02000000</gemeinde> <bewertung>4</bewertung> </stadt> <stadt land="fr"> <name>Paris</name> <einwohner>2166200</einwohner> <fläche>105.40</fläche> <bewertung>3</bewertung> </stadt> <stadt land="de"> <name>Ludwigshafen</name> <einwohner>163777</einwohner> <fläche>77.68</fläche> <bewertung>-3</bewertung> </stadt> </root>
<?xml version="1.0"encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0"> <xsl:decimal-format decimal-separator="," grouping-separator="."> </xsl:decimal-format> <xsl:decimal-format name="fläche" decimal-separator="." grouping-separator=","> </xsl:decimal-format> <xsl:decimal-format name="gemeinde" decimal-separator="." grouping-separator=" " NaN="Kein Gemeindeschlüssel"></xsl:decimal-format> <xsl:decimal-format name="bewertung" minus-sign="↘"> </xsl:decimal-format> <xsl:template match="/"> <root> <xsl:for-each select="/root/stadt"> <stadt> <name> <xsl:value-of select="name"> </xsl:value-of> </name> <einwohner> <xsl:value-of select="format-number(einwohner, '#.###.##0')"> </xsl:value-of> </einwohner> <fläche> <xsl:value-of select="format-number(fläche, '###,##0.00 km²','fläche')"> </xsl:value-of> </fläche> <gemeindeschlüssel> <xsl:value-of select="format-number (gemeinde, '00 0 00 000','gemeinde')"> </xsl:value-of> </gemeindeschlüssel> <bewertung> <xsl:value-of select="format-number(bewertung, '0', 'bewertung')"> </xsl:value-of> </bewertung> </stadt> </xsl:for-each> </root> </xsl:template> </xsl:stylesheet>
<?xml version="1.0"encoding="UTF-8"?> <root> <stadt> <name>Berlin</name> <einwohner>3.420.786</einwohner> <fläche>891.85 km²</fläche> <gemeindeschlüssel>11 0 00 000</gemeindeschlüssel> <bewertung>5</bewertung> </stadt> <stadt> <name>Hamburg</name> <einwohner>1.773.218</einwohner> <fläche>755.26 km²</fläche> <gemeindeschlüssel>02 0 00 000</gemeindeschlüssel> <bewertung>4</bewertung> </stadt> <stadt> <name>Paris</name> <einwohner>2.166.200</einwohner> <fläche>105.40 km²</fläche> <gemeindeschlüssel>Kein Gemeindeschlüssel</gemeindeschlüssel> <bewertung>3</bewertung> </stadt> <stadt> <name>Ludwigshafen</name> <einwohner>163.777</einwohner> <fläche>77.68 km²</fläche> <gemeindeschlüssel>Kein Gemeindeschlüssel</gemeindeschlüssel> <bewertung>↘3</bewertung> </stadt> </root>
| > nach oben | |
| > zurück zur alphabetischen Liste der XSLT Elemente |