CDATA
CDATA (engl. Character Data) ist ein Schlüsselwort in XML und SGML. Mit CDATA werden Zeichendaten gekennzeichnet, die vom Parser nicht oder nur eingeschränkt analysiert werden.
CDATA-Abschnitt
Innerhalb eines CDATA-Abschnittes werden Zeichendaten vom Parser nicht analysiert.
Mit einem CDATA-Abschnitt wird einem Parser mitgeteilt, dass kein Markup folgt, sondern normaler Text. Der CDATA-Abschnitt hat folgende Syntax:
<![CDATA[Inhalt]]>
Der CDATA-Abschnitt kann auch Markup-Zeichen (<
, >
und &
) enthalten. Diese werden vom Parser nicht weiter interpretiert. Die schließende Zeichenfolge ]]>
darf innerhalb von Inhalt nicht verwendet werden.
Falls dennoch ]]>
im Inhalt benötigt wird, teilt man den CDATA-Abschnitt in zwei separate Teile auf und trennt dabei die Zeichenfolge vor ]>
oder vor >
:
<![CDATA[...]]]><![CDATA[]>...]]>
<![CDATA[...]]]]><![CDATA[>...]]>
CDATA-Abschnitte können in XML-basiertem HTML dazu verwendet werden, lange Computerprogramme oder sogar XML-Code über einen größeren Bereich einzubinden. Dadurch entfällt die sonst nötige Kodierung der vordefinierten Entities, beispielsweise <
und &
.
CDATA-Datentyp
In einer Dokumenttypdefinition (DTD) ist CDATA ein Datentyp einer Attributdeklaration, zum Beispiel:
<!ATTLIST img
src CDATA #REQUIRED
>
Ein Attribut mit dem Datentyp als CDATA wird vom Parser nur eingeschränkt analysiert. Da in CDATA-Attributwerten die Verwendung von Zeichenverweisen (beispielsweise ∑
für ∑) und benannten Entitäten (∑
) zulässig ist, führt der Parser eine Analyse des Inhaltes des Attributwertes durch.
Siehe hierzu Deklarationen von Attributen.
Siehe auch
- PCDATA – Zeichendaten, deren Inhalt vom Parser analysiert werden.
Weblinks
- Basic HTML data types - SGML basic types (englisch) w3.org
- CDATA Sections in XML (englisch) w3.org