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 Zeichentypo3/, 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