Strukturen på ett XML-dokument

CDATA-sektioner

CDATA-sektioner (Unparsed Character Data Sections) används för att man ska kunna inkludera text i sina dokument som inte ska behandlas utan betraktas som vanlig text. Detta kan vara om man till exempel vill ha tillgång till tecken som i vanliga fall tolkas som uppmärkning, t ex tecknen < och &. Dessa tecken kan behövas för att visa markord på skärmen i till exempel en XML-guide eller för att exekvera stilmallar eller skript. I HTML brukar man dölja de sistnämnda i kommentarer. Detta är dock inte tillåtet i XML. Dels därför att tecknen som börjar kommentaren tolkas som markord, dels därför att en XML-parser kan tömma kommentaren på sitt innehåll.

CDATA-sektioner kan förekomma var som helst i dokumentet där teckendata kan förekomma. En CDATA-sektion börjar med <! [CDATA[ och slutar med ]]> - observera de dubbla hakparanteserna. Teckendata i CDATA-sektioner är alla teckensträngar som inte innehåller tecknen "]]>" då dessa uppfattas som slut på sektionen.

Vill man visa uppmärkningen på skärmen kan man antingen ersätta alla < och > med deras entitetsreferenser &lt; (less than) och &gt; (grater than) eller inkludera innehållet i en CDATA-sektion. En sådan sektion tolkas som vanlig text och inte som markord.

<![CDATA[
<artikel>
<titel>De olika markeringsspråken</titel>
<skribent>Eva von Pepel</skribent>
<rubrik>SGML</rubrik>
<stycke>Standard Generalized Markup Language. Trots sin ringa ålder ....</stycke>
<stycke>... följande stycke ....</stycke>
<rubrik>HTML</rubrik>
<stycke>HyperText Markup Language är en typ av SGML-dokument ....</stycke>
<stycke>... följande stycke ....</stycke>
</artikel>
]]>

Även en kommentar som inkluderas i CDATA-sektionen kommer att vara synlig.

<! [CDATA[ <!-- en synlig kommentar --> ]]>

CDATA-sektionen kan även användas för stil- och skriptspråk, t ex CSS, JavaScript eller VisualBasic.

Valid HTML 4.0!