Comment utiliser le formateur XML
- Collez votre XML dans la zone de saisie : une enveloppe SOAP, un flux RSS, un sitemap, un fichier SVG ou un fichier de configuration.
- Cliquez sur Formater pour l'embellir, avec un élément par ligne et une indentation cohérente.
- Cliquez sur Minifier pour supprimer les espaces entre les balises et obtenir la version la plus compacte.
- Si le document n'est pas bien formé, le vérificateur indique ce qui ne va pas et où, pour que vous puissiez aller directement au problème.
- Copiez le résultat dans votre éditeur ou votre requête.
L'analyse se fait localement dans votre navigateur. Le XML que vous collez n'est jamais envoyé ni stocké : vous pouvez donc travailler sans risque avec des charges utiles d'API internes et des fichiers de configuration.
Qu'est-ce que le XML et pourquoi le formater ?
XML (Extensible Markup Language) est une norme du W3C pour représenter des données structurées sous forme d'éléments nommés imbriqués, avec des attributs facultatifs. Il est toujours partout : les services web SOAP, les flux RSS et Atom, les sitemaps XML, les fichiers Microsoft Office, les mises en page Android, les fichiers Maven pom.xml et les graphiques SVG sont tous du XML.
Le XML généré par un logiciel est souvent écrit sur une seule ligne ou avec une indentation irrégulière. Le formatage rend la hiérarchie visible : vous voyez quel élément appartient à quel parent et vous repérez une valeur mal placée. La minification est utile quand vous devez intégrer du XML dans une autre charge utile ou en réduire la taille.
XML bien formé et XML valide
Ces deux termes sont souvent confondus :
- Un XML bien formé respecte les règles de syntaxe de la spécification XML : un seul élément racine, des balises correctement imbriquées et fermées, des valeurs d'attributs entre guillemets et des caractères spéciaux échappés. Tous les analyseurs XML l'exigent.
- Un XML valide est bien formé et conforme à un schéma (DTD, XSD ou RELAX NG) qui définit quels éléments et attributs sont autorisés.
Cet outil vérifie que le XML est bien formé. La validation par schéma exige le fichier de schéma et se fait généralement dans vos outils de build ou votre IDE.
Erreurs XML courantes et comment les corriger
Plus d'un élément racine. Un document XML doit avoir exactement un élément de premier niveau :
<item>A</item>
<item>B</item>
Placez les éléments frères dans un seul parent :
<items>
<item>A</item>
<item>B</item>
</items>
Balises non appariées ou mal imbriquées. Les balises doivent se fermer dans l'ordre inverse et les noms sont sensibles à la casse : <Name>…</name> est donc une erreur, tout comme <b><i>text</b></i>.
Caractères spéciaux non échappés. Un < ou un & isolé dans le texte empêche l'analyse. Utilisez les entités prédéfinies :
| Caractère | Entité | Quand c'est obligatoire |
|---|---|---|
< | < | Toujours dans le texte et les valeurs d'attributs |
& | & | Toujours dans le texte et les valeurs d'attributs |
> | > | Recommandé ; obligatoire dans la séquence ]]> |
" | " | Dans les valeurs d'attributs entre guillemets doubles |
' | ' | Dans les valeurs d'attributs entre guillemets simples |
Par exemple, une URL dans un sitemap doit s'écrire <loc>https://example.com/?a=1&b=2</loc>. Vous pouvez aussi placer de longs blocs de texte dans une section <![CDATA[ … ]]>, où les caractères de balisage ne sont pas interprétés.
Attributs sans guillemets. Contrairement au HTML, le XML exige des guillemets autour de chaque valeur d'attribut : <user id="42">, et non <user id=42>.
Contenu avant la déclaration XML. Si elle est présente, <?xml version="1.0" encoding="UTF-8"?> doit être la toute première chose du fichier. Un simple espace ou une ligne vide avant elle rend le document mal formé.
Conseils et bonnes pratiques
- Déclarez l'encodage et enregistrez les fichiers en UTF-8 pour éviter les problèmes avec les caractères accentués.
- Soyez prudent lorsque vous formatez des documents où les espaces ont un sens, comme le contenu mixte ou les éléments utilisant
xml:space="preserve": ajouter des retours à la ligne peut modifier la valeur du texte. - Utilisez les espaces de noms de façon cohérente : un préfixe comme
soap:doit être déclaré avec un attributxmlns:soapsur l'élément ou sur un ancêtre. - Besoin d'intégrer du XML dans une URL ou une chaîne JSON ? Encodez-le d'abord avec l'outil Encodage et décodage d'URL ou l'outil Encodage et décodage Base64.
Questions fréquentes
Le HTML est-il la même chose que le XML ?
Non. Le HTML est plus tolérant : il admet des éléments non fermés comme <br>, des attributs sans guillemets et des noms de balises insensibles à la casse. XHTML est la variante du HTML qui suit les règles du XML. Pour mettre en forme des pages web ordinaires, utilisez plutôt le Formateur HTML.
Le formatage modifie-t-il mes données ?
L'embellissement ajoute des espaces entre les éléments, et la minification les supprime. Les noms d'éléments, les attributs et le contenu textuel restent identiques, mais dans les documents où les espaces à l'intérieur du texte sont significatifs, l'indentation supplémentaire peut avoir de l'importance.
Cet outil valide-t-il le XML par rapport à un schéma XSD ?
Non. Il vérifie que le document est bien formé. La validation par rapport à une DTD ou à un XSD nécessite le schéma et un analyseur validant.
Pourquoi mon XML échoue-t-il à cause d'une esperluette ?
En XML, & commence toujours une référence d'entité. Une esperluette isolée, fréquente dans les URL et les noms d'entreprises, doit s'écrire & ou être placée dans une section CDATA.
Mis à jour