Tutoriel XML

ACCUEIL XML Introduction XML XML Comment utiliser Arbre XML Syntaxe XML Éléments XML Attributs XML Espaces de noms XML Affichage XML Requête HTTP XML Analyseur XML DOM XML XPath XML XML XSLT XQuery XML XMLXLink Validateur XML DTD XML Schéma XML Serveur XML Exemples XML XML Quiz Certificat XML

XMLAJAX

Présentation d'AJAX AJAX XMLHttp Requête AJAX Réponse AJAX Fichier XML AJAX PHP AJAX ASP AJAX Base de données AJAX Applications AJAX Exemples AJAX

DOM XML

Présentation du DOM Nœuds DOM Accès au DOM Informations sur le nœud DOM Liste des nœuds DOM Traversée du DOM Navigation DOM DOM Obtenir des valeurs Nœuds de changement DOM DOM Supprimer les nœuds DOM Remplacer les nœuds DOM Créer des nœuds DOM Ajouter des nœuds Nœuds de clonage DOM Exemples DOM

Tutoriel XPath

Présentation de XPath Nœuds XPath Syntaxe XPath Axes XPath Opérateurs XPath Exemples XPath

Tutoriel XSLT

Présentation de XSLT Langages XSL Transformation XSLT XSLT <modèle> XSLT <valeur-de> XSLT <pour-chaque> XSLT <sort> XSLT <si> XSLT <choisir> Appliquer XSLT XSLT sur le client XSLT sur le serveur XSLT Éditer XML Exemples XSLT

Tutoriel XQuery

Présentation de XQuery Exemple XQuery XQuery FLWOR XQuery HTML Termes XQuery Syntaxe XQuery Ajouter XQuery Sélection XQuery Fonctions XQuery

DTD XML

Présentation de la DTD Blocs de construction DTD Éléments DTD Attributs DTD Éléments DTD vs Attr Entités DTD Exemples de DTD

Schéma XSD

Présentation XSD Comment XSD XSD <schéma> Éléments XSD Attributs XSD Restrictions XSD

Complexe XSD

Éléments XSD XSD vide Éléments XSD uniquement Texte XSD uniquement XSD Mixte Indicateurs XSD XSD <tout> XSD <anyAttribute> Remplacement XSD Exemple XSD

Données XSD

Chaîne XSD Date XSD Numérique XSD Divers XSD Référence XSD

Services Web

Services XML XMLWSDL SAVON XML XML RDF XML RSS

Les références

Types de nœuds DOM Nœud DOM Liste de nœuds DOM DOM NamedNodeMap Documents DOM Élément DOM Attribut DOM Texte DOM DOM CDATA DOM Comment DOM XMLHttpRequest Analyseur DOM Éléments XSLT Fonctions XSLT/XPath

Règles de syntaxe XML


Les règles de syntaxe de XML sont très simples et logiques. Les règles sont faciles à apprendre et faciles à utiliser.


Les documents XML doivent avoir un élément racine

Les documents XML doivent contenir un élément racine qui est le parent de tous les autres éléments :

<root>
  <child>
    <subchild>.....</subchild>
  </child>
</root>

Dans cet exemple , <note> est l'élément racine :

<?xml version="1.0" encoding="UTF-8"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

Le prologue XML

Cette ligne s'appelle le prologue XML :

<?xml version="1.0" encoding="UTF-8"?>

Le prologue XML est facultatif. S'il existe, il doit figurer en premier dans le document.

Les documents XML peuvent contenir des caractères internationaux, comme le norvégien øæå ou le français êèé.

Pour éviter les erreurs, vous devez spécifier l'encodage utilisé ou enregistrer vos fichiers XML au format UTF-8.

UTF-8 est le codage de caractères par défaut pour les documents XML.

L'encodage des caractères peut être étudié dans notre didacticiel sur les jeux de caractères .

UTF-8 est également l'encodage par défaut pour HTML5, CSS, JavaScript, PHP et SQL.



Tous les éléments XML doivent avoir une balise de fermeture

En XML, il est illégal d'omettre la balise de fermeture. Tous les éléments doivent avoir une balise fermante :

<p>This is a paragraph.</p>
<br />

Remarque : Le prologue XML n'a pas de balise de fermeture ! Ce n'est pas une erreur. Le prologue ne fait pas partie du document XML.


Les balises XML sont sensibles à la casse

Les balises XML sont sensibles à la casse. La balise <Letter> est différente de la balise <letter>.

Les balises d'ouverture et de fermeture doivent être écrites avec la même casse :

<message>This is correct</message>

Les "balises d'ouverture et de fermeture" sont souvent appelées "balises de début et de fin". Utilisez ce que vous préférez. C'est exactement la même chose.


Les éléments XML doivent être correctement imbriqués

En HTML, vous pouvez voir des éléments mal imbriqués :

<b><i>This text is bold and italic</b></i>

En XML, tous les éléments doivent être correctement imbriqués les uns dans les autres :

<b><i>This text is bold and italic</i></b>

Dans l'exemple ci-dessus, "Properly nested" signifie simplement que puisque l'élément <i> est ouvert à l'intérieur de l'élément <b>, il doit être fermé à l'intérieur de l'élément <b>.


Les valeurs d'attribut XML doivent toujours être entre guillemets

Les éléments XML peuvent avoir des attributs dans des paires nom/valeur comme en HTML.

En XML, les valeurs d'attribut doivent toujours être entre guillemets :

<note date="12/11/2007">
  <to>Tove</to>
  <from>Jani</from>
</note>

Références d'entité

Certains caractères ont une signification particulière en XML.

Si vous placez un caractère comme "<" à l'intérieur d'un élément XML, cela générera une erreur car l'analyseur l'interprète comme le début d'un nouvel élément.

Cela générera une erreur XML :

<message>salary < 1000</message>

Pour éviter cette erreur, remplacez le caractère "<" par une référence d'entité :

<message>salary &lt; 1000</message>

Il existe 5 références d'entités prédéfinies en XML :

&lt; < less than
&gt; > greater than
&amp; & ampersand 
&apos; ' apostrophe
&quot; " quotation mark

Seuls < et & sont strictement illégaux en XML, mais c'est une bonne habitude de remplacer > par > également.


Commentaires en XML

La syntaxe pour écrire des commentaires en XML est similaire à celle du HTML :

<!-- This is a comment -->

Deux tirets au milieu d'un commentaire ne sont pas autorisés :

<!-- This is an invalid -- comment -->

L'espace blanc est préservé en XML

XML ne tronque pas plusieurs espaces blancs (HTML tronque plusieurs espaces blancs en un seul espace blanc) :

XML: Hello           Tove
HTML: Hello Tove

XML stocke la nouvelle ligne en tant que LF

Les applications Windows stockent une nouvelle ligne sous la forme : retour chariot et saut de ligne (CR+LF).

Unix et Mac OSX utilisent LF.

Les anciens systèmes Mac utilisent CR.

XML stocke une nouvelle ligne en tant que LF.


XML bien formé

Les documents XML conformes aux règles de syntaxe ci-dessus sont dits documents XML "bien formés".