bonjour à tous le monde je voudrais vous posez une question
quand on utilise CDATA SECTION et les commentaire et processing
instructions le parseur xml ne les parse pas
donc c'est quoi la différence entre eux
Version imprimable
bonjour à tous le monde je voudrais vous posez une question
quand on utilise CDATA SECTION et les commentaire et processing
instructions le parseur xml ne les parse pas
donc c'est quoi la différence entre eux
Mes parseurs XML ont tous toujours récupéré les processing instructions.
Certains récupèrent aussi les commentaires, ou proposent une option pour le faire, mais pas tous.
Certains signalent les nœuds textes en CDATA, ou proposent une option pour le faire, mais pas tous.
- Les sections CDATA sont une manière simple d'insérer du texte normal sans embêter avec les échappements :
C'est plus clair que :Code:<text><![CDATA[Profitez de notre <<< GRANDE PROMO >>> && de nos prix imbattables !]]></text>
Mais identique.Code:<text>Profitez de notre <<< GRANDE PROMO >>> && de nos prix imbattables !</text>
Comme c'est identique, les parseurs peuvent se contenter de remonter le texte, sans préciser qu'il était dans une section CDATA. Mais certains permettent de faire la différence entre texte normal et texte en section CDATA.
- Les commentaires... Sont des trucs que le parseur a le droit d'ignorer. Ils servent à ça : pouvoir insérer des choses dont les machines ne tiendront aucun compte.
Les humains, par contre, peuvent le lire, et cela permet par exemple de documenter un peu les choses.
Si tu connais C, C++, PHP, Java, Pyhton, Ruby ou n'importe quoi en fait, ben les commentaires XML, c'est la même chose que les commentaires dans le code.
Sinon, apprends simplement que ça existe dans tous les langages et que c'est fait pour les humains, ignoré par les machines.
- Les processing instructions... Sont encore autre chose.
Jusque-là tu connaissais grosso-modo deux choses en XML :
-- les éléments, qu'on ouvre et ferme. Ils peuvent avoir des attributs, et contenir des choses.
-- le texte. C'est du texte.
(Les sections CDATA ne sont qu'une manière d'écrire du texte. Les commentaires sont ignorés et ne sont donc rien.)
Il y en existe une troisième : les processing instructions. Commencent par <? et termine par ?>. Elles ont au moins un nom, juste après le <? . Et après, tout ce qu'il y a après le nom et avant le ?> est leur contenu, qui est libre. Il peut ne pas y avoir de contenu du tout.
Les processing-instruction ne sont pas très utilisées, en général seule celle permettant de lier une stylesheet, <?xml-stylesheet href="style.xsl"?>, est utilisée.
En principe, elles servent à indiquer quels traitements réaliser sur l'information que contient le XML, au lieu d'être l'information elle-même comme le sont les éléments et le texte.
Mais c'est le principe et la bonne pratique. Les règles sont qu'on peut en mettre autant qu'on veut, du nom qu'on veut, avec le contenu qu'on veut. Le parseur les voit. Le programmeur peut choisir de les ignorer.