WORDS
Escape-tecken: XML
XML används för att representera dokument - av många olika typer. SVG-bilder är kanske det populäraste XML-format som används på webben idag. HTML liknar XML, men det återkommer vi till i nästa post.
I XML är reglerna någorlunda tydliga, om än ganska krångliga.
<root citat="attribut med citattecken">
<text apostrof='attribut med apostrofer'>
Ett meddelande
</text>
</root>
Här ser vi att tecknen som behöver escapas är <
, >
, "
, '
. Hur gör man detta? Jo, med &entitet;
, så också &
måste escapas. Följande entiteter är inbyggda i XML:
&
-&
<
-<
>
->
"
-"
'
-'
Dessa måste man använda:
<root>
<!--
title: "Escape" & mer
message: x < 10
-->
<message title=""Escape" & mer">
x < 10
</message>
<!--
url: /search?query=xml&sort=relevance
-->
<link url="/search?query=xml&sort=relevance" />
</root>
Om man har en större text som man inte orkar escapa, så kan man lägga den i ett CDATA-block. Däremot kan man inte inkludera strängen ]]>
i sitt CDATA-block. Antingen får man dela upp det i två CDATA-block eller escapa allt manuellt.
<root>
<message>
<![CDATA[x < 10]]>
</message>
<!--
Båda följande meddelanden visar:
Ett CDATA-block avslutas med "]]>"
-->
<message>
<![CDATA[Ett CDATA-block avslutas med "]]]]><![CDATA[>"]]>
</message>
<message>
Ett CDATA-block avslutas med "]]>"
</message>
</root>
Man kan inte använda CDATA-block i attribut.