XML CDATA


Der gesamte Text in einem XML-Dokument wird vom Parser geparst.

Nur Text innerhalb eines CDATA-Abschnitts wird vom Parser ignoriert.


PCDATA - Geparste Zeichendaten

XML-Parser parsen normalerweise den gesamten Text in einem XML-Dokument.

Wenn ein XML-Element geparst wird, wird auch der Text zwischen seinen Tags geparst:

<message>Dieser Text wird ebenfalls geparst</message>

Der Parser macht das, weil XML-Elemente andere Elemente enthalten können, wie in diesem Beispiel, in dem das <name>-Element zwei andere Elemente enthält (first und last):

<name><first>Bill</first><last>Gates</last></name>

Der Parser zerlegt es in Unterelemente wie folgt:

<name>
<first>Bill</first>
<last>Gates</last>
</name>

Geparste Zeichendaten (PCDATA) ist ein Begriff für Textdaten, die vom XML-Parser geparst werden.


CDATA – (nicht geparste) Zeichendaten

Der Begriff CDATA bezeichnet Textdaten, die nicht vom XML-Parser geparst werden sollten.

Zeichen wie "<" und "&" sind in XML-Elementen unzulässig.

"<" verursacht einen Fehler, weil der Parser dieses Zeichen als Anfang eines neuen Elements interpretiert.

"&" verursacht einen Fehler, weil der Parser dieses Zeichen als Anfang einer Zeichenentität interpretiert.

Einige Texte, wie JavaScript-Code, enthalten viele "<"- oder "&"-Zeichen. Um Fehler zu vermeiden, kann der Skriptcode als CDATA definiert werden.

Alles innerhalb eines CDATA-Abschnitts wird vom Parser ignoriert.

CDATA-Abschnitt beginnt mit "<![CDATA[und endet mit "]]>:

<script>
<![CDATA[
function matchwo(a,b)
{
if (a < b && a < 0) then
{
return 1;
}
else
{
return 0;
}
}
]]>
</script>

Im obigen Beispiel ignoriert der Parser alles im CDATA-Abschnitt.

Hinweise zu CDATA-Abschnitten:

Ein CDATA-Abschnitt darf die Zeichenfolge "]]>" nicht enthalten. Verschachtelte CDATA-Abschnitte sind ebenfalls nicht erlaubt.

Das "]]>", das das Ende eines CDATA-Abschnitts markiert, darf keine Leerzeichen oder Zeilenumbrüche enthalten.


Andere Erweiterungen