CDATA-Abschnitte
(Auszug aus "XML in a Nutshell" von Elliotte Rusty Harold & W. Scott Means)
Wenn ein XML-Dokument Beispiele für XML- oder HTML-Quellcode enthält, müssen die Zeichen < und & in diesen Beispielen als < und & kodiert werden. Je mehr Abschnitte solchen Codes ein Dokument enthält und je länger diese sind, umso nervtötender wird diese Kodierung. Stattdessen können Sie jedes Code-Beispiel in einen CDATA-Abschnitt einschließen. Ein CDATA-Abschnitt wird durch <![CDATA[ und]]> eingeschlossen. Alles, was sich zwischen <![CDATA[ und ]]> befindet, wird als reine Zeichendaten interpretiert. Kleiner-als-Zeichen leiten keine Tags ein. Ampersands leiten keine Entity-Referenzen ein. Es gibt nur einfache Zeichendaten, kein Markup.
In einer Scalable Vector Graphics-(SVG-)Anleitung, die in XHTML geschrieben ist, könnten Sie beispielsweise Folgendes sehen:
<p>Sie können ein vorgegebenes <code>xmlns</code>-Attribut benutzen, damit Sie nicht allen Ihren Elementen das Präfix svg hinzufügen müssen:</p>
<pre><![CDATA[
<svg xmlns="http://www.w3.org/2000/svg" width="12cm" height="10cm">
<ellipse rx="110" ry="130" />
<rect x="4cm" y="1cm" width="3cm" height="6cm" />
</svg>
]]></pre>
Der SVG-Quellcode ist direkt in die XHTML-Datei eingefügt worden, ohne dass sorgfältig jedes < durch < ersetzt wurde. Das Ergebnis ist ein Beispiel-SVG-Dokument, kein eingebettetes SVG-Bild, wie es der Fall wäre, wenn sich dieses Beispiel nicht innerhalb eines CDATA-Abschnitts befinden würde.
Das Einzige, was nicht in einem CDATA-Abschnitt auftauchen kann, ist das Ende-Trennzeichen eines CDATA-Abschnitts ]]>.
CDATA-Abschnitte sind für die Bequemlichkeit menschlicher Autoren gedacht, nicht für Programme. Parser müssen Ihnen nicht sagen können, ob ein bestimmter Textblock aus einem CDATA-Abschnitt, aus normalen Zeichendaten oder aus Zeichendaten stammt, die Entity-Referenzen wie < und & enthielten. Wenn Sie die Daten erhalten, sind die Unterschiede möglicherweise nicht mehr zu erkennen. Der Code, den Sie schreiben, sollte sich nie auf den Unterschied zwischen ihnen stützen.
<< zurück | vor >> |
Tipp der data2type-Redaktion: Zum Thema XML bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: |
Copyright © 2005 O'Reilly Verlag GmbH & Co. KG
Für Ihren privaten Gebrauch dürfen Sie die Online-Version ausdrucken.
Ansonsten unterliegt dieses Kapitel aus dem Buch "XML in a Nutshell" 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.
O’Reilly Verlag GmbH & Co. KG, Balthasarstraße 81, 50670 Köln, kommentar(at)oreilly.de