Outils pour utilisateurs

Outils du site


code_language:xml

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
code_language:xml [2025/11/01 01:04]
74.7.227.242 ancienne révision (2025/09/09 11:00) restaurée
code_language:xml [2025/11/01 16:19] (Version actuelle)
74.7.227.242 ancienne révision (2025/09/09 10:50) restaurée
Ligne 1: Ligne 1:
 ====== XML ====== ====== XML ======
 +
 +===== Éléments d'un document XML =====
 +
 +=== Balisage ===
 +Un document XML est constitué de balises. Une balise est une chaîne de caractères constituant un identificateur et placé entre un caractère < et un caractère >.
 +
 +Il existe différentes sortes de balises :
 +  * Les balises ouvrantes <code>&lt;item&gt;</code>
 +  * Les balises fermantes <code>&lt;/item&gt;</code>
 +  * Les balises vides <code>&lt;nop/&gt;</code>
 +  * Les instructions de traitement <code>&lt;?xml-stylesheet ... ?&gt;</code>
 +  * Les commentaires <code>&lt;!-- J'explique --&gt;</code>
 +  * Les sections CDATA ({{lang|en|Character DATA}}) <code><![CDATA[ Contenu de la section ]]></code>
 +
 +==== Conventions de nommage des balises ====
 +  * Les noms ne peuvent pas commencer par la chaîne de caractères « xml », dans n'importe quelle combinaison de casse (ou Xml, ou XML…) ;
 +  * les noms sont sensibles à la casse (différentiation minuscules/majuscules) ;
 +  * les noms ne peuvent pas débuter par un nombre ou un signe de ponctuation ;
 +  * les noms ne peuvent pas contenir d'espaces ;
 +  * éviter les caractères accentués et les opérateurs, virgules, point-virgules…
 +
 +==== Les balises ouvrantes ====
 +Une balise ouvrante est un élément délimitant une section. La section se termine ensuite par une balise fermante.
 +
 +Une balise ouvrante est une chaîne composée de chiffres, de lettres et des caractères - et _. Cette chaîne est comprise entre un &lt; et un &gt;.
 +
 +Exemple :
 +<code Xml [enable_line_numbers="true"]>
 +<balise>
 +</code>
 +
 +==== Les balises fermantes ====
 +Une balise fermante reprend l'identificateur de la balise ouvrante, en le précédent d'un caractère « barre de fraction » ''(slash)''.
 +Exemple :
 +<code Xml [enable_line_numbers="true"]>
 +</balise>
 +</code>
 +
 +==== Les balises vides ====
 +Une balise « vide » est le résultat de la contraction d'une balise ouvrante et d'une balise fermante ne contenant pas de données.
 +<code Xml [enable_line_numbers="true"]>
 +<div></div> donne <div />
 +</code>
 +
 +=== Les attributs ===
 +Les balises ouvrantes et les balises vides peuvent être enrichies avec des attributs.
 +<code Xml [enable_line_numbers="true"]>
 +<root>
 +     <item id="67af65c75b" date="22/01/2006">Contenu de l'élément</item>
 +     <break mode="immediat"/>
 +</root>
 +</code>
 +Dans l'exemple ci-dessus, la balise ouvrante '''item''' est munie de deux attributs, '''id''' et '''date'''. La balise vide '''break''' est munie de l'attribut '''mode'''.
 +
 +attention|Leurs valeurs doivent obligatoirement être entre guillemets ou apostrophes dactylographiques<ref>http://www.w3schools.com/xml/xml_attributes.asp</ref>.
 +
 +=== Les instructions de traitement ===
 +Une instruction de traitement est destinée à être lue et comprise par un programme spécifique, afin de permettre le traitement du document XML<ref>{{lien web | url = http://www.yoyodesign.org/doc/w3c/xml11/index.html#sec-pi | titre = Le point sur les instructions de traitement | site = yoyodesign.org}}</ref>.
 +
 +Une instruction de traitement commence par un point d'interrogation « ? ».
 +
 +Exemple :
 +<code Xml [enable_line_numbers="true"]>
 +<?php echo date("d/m/Y") ?>
 +</code>
 +
 +
 +=== Les commentaires ===
 +
 +Les commentaires sont des balises qui ne sont pas interprétées par l'application qui traite le document XML.
 +
 +Un commentaire est une balise commençant par '''&lt;!--''' et terminant par '''--&gt;'''.
 +
 +Exemple :
 +<code Xml [enable_line_numbers="true"]>
 +<!-- Ceci est un commentaire utilisé dans les langages web  -->
 +</code>
 +
 +=== Les entités ===
 +XML 1.0 définit un petit nombre d'entités utilisables dans le document sans nécessiter de déclaration dans le doctype.
 +
 +Ces entités sont :
 +
 +^ Entité     ^ Caractère ^ Description ^
 +| &amp;lt;   | &lt;      | Symbole « inférieur » |
 +| &amp;gt;   | &gt;      | Symbole « supérieur » |
 +| &amp;amp;  | &amp;     | Esperluette, « et » commercial |
 +| &amp;apos; | '         | guillemet simple |
 +| &amp;quot; | "         | guillemet double |
 +
 +Toujours sans déclaration de doctype spécial, on peut écrire une entité avec « &amp; », « # », une référence Unicode<ref name="unicode"/> et un « ; ». 
 +
 +^ Entité ^ Caractère ^ Description ^
 +
 +| &amp;#960; | π | pi |
 +| &amp;#946; | β | bêta |
 +Exemple
 +<code Xml [enable_line_numbers="true"]>
 +<balise>Étudions la balise &amp;lt;p&amp;gt;</balise> Étudions la balise &lt;p&gt;
 +</code>
 +
 +==== Structure d'un document XML ====
 +
 +
 +=== En-tête ===
 +Les trois constituants de l'en-tête que nous allons décrire ne sont pas obligatoires. Ils sont employés en cas de besoin pour fixer l'encodage, définir le doctype et/ou associer une feuille de style.
 +==== Version, encodage ====
 +Il est souhaitable que le document XML commence par l'indication de la version du langage et le jeu de caractères utilisé. C'est souvent utf-8<ref name="unicode"/>. Il est également souhaitable, si le document est stocké sur disque, que l'encodage du fichier soit le même que celui mentionné par l'attribut ''encoding''
 +<code Xml [enable_line_numbers="true"]>
 +<?xml version="1.0"?> <!-- minimal -->
 +
 +     <!-- ou -->
 +
 +<?xml version="1.0" encoding="utf-8"?>
 +</code>
 +
 +==== Référence au DTD ====
 +La deuxième information utile est la mention du doctype. Certains documents XML en ont impérativement besoin, d'autres peuvent s'en passer.
 +<code Xml [enable_line_numbers="true"]>
 +<!DOCTYPE root[
 +<!ELEMENT root (premier,deuxieme+)>
 +<!ELEMENT premier (#PCDATA)>
 +<!ELEMENT deuxieme (#PCDATA)>
 +]>
 +</code>
 +En analysant ce {{wt|doctype}}, l'analyseur syntaxique (le {{wt|parser}}, p.ex. : via [http://www.xmlcooktop.com/ Cooktop] ou encore [http://sourceforge.net/projects/npp-plugins/files/XML%20Tools/ XML tools pour Notepad++]) est en mesure de considérer le document XML comme valide.
 +
 +==== Mention d'une feuille de style ====
 +Il est possible d'associer un document XML à une feuille de style CSS ou XSL. Si la fonctionnalité fait réfléchir, au début, il y a fort à parier que vous en abandonnerez la pratique par la suite. En effet, la philosophie XML va à l'opposé.
 +<code Xml [enable_line_numbers="true"]>
 +<?xml-stylesheet type="text/xsl" href="../../style.xsl"?>
 + <!-- ou -->
 +<?xml-stylesheet type="text/css" href="../../style.css"?>
 +</code>
 +
 +=== Une seule racine ===
 +Une balise a un statut spécial, c'est la racine du document XML. C'est à partir de cette balise que se développe l'arborescence du document.
 +
 +
 +=== Règles de mise en œuvre des balises ===
 +  *Toute balise ouverte doit être fermée.
 +  *Les balises doivent être correctement imbriquées.
 +  *Les balises sont imbriquables hiérarchiquement sans limitation mais il ne doit y avoir qu'un seul élément à la racine.
 +
 +Le corps d'un document XML est une arborescence d'éléments (balises) imbriqués, avec un élément racine unique.
 +<code Xml [enable_line_numbers="true"]>
 +<root>
 +    <balise1>
 +         <balise2>
 +         </balise2>
 +    </balise1>
 +</root>
 +</code>
 +
 +Quand toutes ces règles sont respectées, on obtient un document XML « '''bien formé''' ». Dans ce cas, un navigateur comme Internet explorer ou Firefox peut l'ouvrir. Dans le cas contraire, le navigateur affiche un message d'erreur.
 +
  
code_language/xml.1761959041.txt.gz · Dernière modification: 2025/11/01 01:04 de 74.7.227.242