XML-Know How

CDATA-Abschnitte

Character-Data-(CDATA)-Abschnitte sind besonders gekennzeichnete Abschnitte, in denen Tags als Text behandelt werden. Sie werden also wie Kommentarabschnitte behandelt, nur dass ihr Inhalt zum Dokument gehört und mit ausgegeben wird.

CDATA-Abschnitte werden z. B. dann benötigt, wenn Sie in einem XML-Dokument einen Ausschnitt aus einem anderen XML-Dokument als Beispiel anführen wollen – genau wie es in diesem Beitrag geschieht. Da die Tags des Beispiel-XML nicht Teil der Struktur des Haupt-Dokumentes sind und als ganz normaler Text ausgegeben werden sollen, müssen sie anders behandelt werden als »richtige« Tags. Genau das geschieht im CDATA-Abschnitt: alles Markup wird hier als einfacher Text behandelt.

Der Begriff »CDATA« steht im Gegensatz zu »PCDATA« – parsed character data – und meint also Zeichendaten, die nicht geparst werden, d. h. von der XML-Software nicht nach auswertbaren Tags durchsucht werden.

Sie stehen in folgenden Begrenzungszeichen: <![CDATA[ und ]]>.

Im nachstehenden Beispiel wird die Zeichenfolge <beispieltag attribut=
"12345"/>
nicht als Tag ausgewertet, sondern zeichengetreu als Text ausgegeben:

<kapitel>
    <überschrift>EinXML-Beispiel</überschrift>
    <absatz>

       <![CDATA[ <beispieltagattribut=“12345“/> ]]>
   </absatz>
</kapitel>

Ausgabe:

Ein XML-Beispiel

<beispieltag attribut="12345"/>