XML Zeichenreferenzen und CDATA-Abschnitte

In diesem Kapitel möchte ich noch auf ein paar Kleinigkeiten zur Notation eingehen. XML benutzt den Zeichensatz ISO/IEC 10646 (Unicode). Das bedeutet, daß man alle Zeichen, die auf der Tastatur zu finden sind, auch benutzen kann. Zumindest in der Theorie, denn in der Praxis darf man die Zeichen die für XML eine besondere Bedeutung haben (zum Beispiel < oder &) natürlich nicht überall sorglos benutzen. Außerdem gibt es Zeichen die auf der Tastatur nicht vorhanden sind, aber trotzdem benutzt werden sollen.

Für solche Fälle gibt es die Zeichenreferenz. Im Prinzip ist das die Nummer des entsprechenden Zeichens im Zeichensatz, eingeschlossen in &# und ;

&#187;

Diese Zeichenreferenz referenziert ein Anführungszeichen.

Es ist auch möglich, die Referenz in hexadezimaler Notation anzugeben. In diesem Fall wird sie von &#x und ; eingeschlossen.

&#xbb;

Nun wird es aber auf Dauer ziemlich nervig, ständig alle möglichen Zeichen in einem Text mit einer Zeichenreferenz zu "maskieren". Stellt euch vor, ihr müßtet ein Buch über XML mit XML verfassen. Ihr würdet aus dem Zeichenreferenzenschreiben (was für ein Wort!) nicht mehr heraus kommen. An dieser Stelle kommen CDATA-Abschnitte in Spiel.

<![CDATA[ Hier kann ich jetzt alles schreiben…zum Beispiel < & > ; ""
OHNE es maskieren zu müssen!!!]]>

Eingeleitet wird der CDATA-Abschnitt mit <![CDATA[ und beendet wird er mit ]]>. Dazwischen können alle Zeichen stehen, sie werden vom Parser nicht als Markup interpretiert. Davon ausgeschlossen ist logischerweise die Zeichenfolge ]]>.

zurück                weiter

nach oben