DONNÉES CD XML
Tout le texte du document XML sera analysé par l'analyseur.
Seul le texte de la section CDATA sera ignoré par l'analyseur.
PCDATA - données de caractères analysées
Les analyseurs XML analysent généralement tout le texte d'un document XML.
Lorsqu'un élément XML est analysé, le texte entre ses balises est également analysé :
L'analyseur fait cela car les éléments XML peuvent contenir d'autres éléments, comme dans cet exemple, où l'élément <name> contient deux autres éléments (premier et dernier) :
Et l'analyseur le divisera en sous-éléments comme ceci :
<premier>Bill</premier>
<last>Gates</last>
</name>
Les données de caractères analysées (PCDATA) sont un terme utilisé pour les données texte analysées par un analyseur XML.
CDATA - Données de caractères (non analysées)
Le terme CDATA désigne des données texte qui ne doivent pas être analysées par un analyseur XML.
Les caractères comme "<" et "&" sont illégaux dans les éléments XML.
"<" générera une erreur car l'analyseur interprétera ce caractère comme le début d'un nouvel élément.
"&" générera une erreur car l'analyseur interprétera ce caractère comme le début d'une entité de caractère.
Certains textes, comme le code JavaScript, contiennent de nombreux caractères "<" ou "&". Pour éviter les erreurs, le code du script peut être défini comme CDATA.
Tout ce qui se trouve dans la section CDATA sera ignoré par l'analyseur. La partie
CDATA commence par "<![CDATA[" et se termine par "]]> :
<![CDATA[
fonction matchwo(a,b)
{
si (a < b && a < 0) alors
{
Retour 1 ;
>
autre
{
Renvoie 0 ;
}
}
]]>
</script>
Dans l'exemple ci-dessus, l'analyseur ignore tout ce qui se trouve dans la section CDATA.
Remarque sur la partie CDATA :
La partie CDATA ne peut pas contenir la chaîne "]]>". Les sections CDATA imbriquées ne sont pas non plus autorisées.
Le "]]>" marquant la fin de la section CDATA ne peut pas contenir d'espaces ou de nouvelles lignes.