fn:codepoints-to-string

(Auszug aus "XSLT 2.0 & XPath 2.0" von Frank Bongers, Kapitel 5.)

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

   

Kategorie: Stringfunktionen – Codepoint-Umwandlung

Herkunft: XPath 2.0

Rückgabewert: Ein String xs:string

Aufruf/Argumente:

fn:codepoints-to-string($integer*)

$integer:
Eingangswert ist eine Sequenz aus einer beliebigen Anzahl von Integerwerten, die einzeln als Unicode-Codepoints interpretiert werden. Die in Unicode-Zeichen umgewandelten Codepoints werden verkettet in Form einer Zeichenkette xs:string zurückgegeben. Ist die Eingangssequenz leer, so wird ein leerer String zurückgegeben. Ergibt die Umwandlung eines der in der Sequenz übergebenen Codepoints ein in XML verbotetenes Zeichen, so wird die Fehlermeldung Code point not valid (err:FOCH0001) ausgegeben.

Verwendungszweck:

Die Funktion fn:codepoints-to-string() bildet ein Unicode-Zeichen (abstract character) aus der Integerzahl, die dessen Codepoint entspricht. Das Prinzip entspricht dem einer Character Reference – beispielsweise &#163, wobei der numerische Anteil 163 dem Unicode-Codepoint entspricht. Der Codepoint kann führende Nullen enthalten, die in diesem Zusammenhang jedoch nicht übergeben werden müssen. Mit &#163 gemeint ist das Zeichen £. Der dezimale Codepoint 163 entspricht also dem Integerwert 163, die beispielsweise Argument der fn:codepoints-to-string-Funktion sein könnte.

Anmerkung: Das Gegenstück zu dieser Funktion ist fn:string-to-codepoints(), die einen Eingabestring in eine Sequenz aus Codepoint-Integerwerten umwandelt.

Beispiele:

Beispiel 1 – Anwendung auf einen einzelnen Codepoint:

fn:codepoints-to-string((163))

ergibt das Zeichen £. Da die Eingabesequenz nur aus einem Item besteht, kann hier statt (163) auch vereinfachend 163 geschrieben werden. Sobald die Sequenz aus mehreren Items besteht (Beispiel 2), ist dies nicht möglich.

Beispiel 2 – Anwendung auf eine Eingabesequenz aus Codepoints:

fn:codepoints-to-string(
              (72, 97, 108, 108, 111, 32, 87, 101, 108, 116, 33)
  )

ergibt den String Hallo Welt!.

Jeder Integerwert der Eingabesequenz wird als Unicode-Codepoints interpre­tiert, der durch das entsprechende Zeichen ersetzt wird – so die 72 (Unicode U+0072) durch H. Die resultierende Zeichenfolge wird zu einem einzigen Aus­gabestring verkettet.

Funktionsdefinition:

XPath 1.0:

Funktion nicht verfügbar

XPath 2.0:

fn:codepoints-to-string($arg as xs:integer*) as xs:string

   

<< zurück vor >>
Tipp der data2type-Redaktion:
Zum Thema XSLT bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an:

Copyright © Galileo Press, Bonn 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XSLT 2.0 & XPath 2.0 ― Das umfassende Handbuch" denselben Bestimmungen wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Galileo Press, Rheinwerkallee 4, 53227 Bonn