Formater et valider un XML
Indentez un XML écrit sur une seule ligne pour le lire, et voyez la ligne et la colonne d'une balise cassée
Vos données restent chez vous. La conversion se fait dans le navigateur ; rien n'est envoyé à un serveur.
Cet outil a-t-il fait le travail ?
Merci, votre retour nous est bien parvenu.
Comment ça marche
Les réponses d'un service web, les messages SOAP, les factures électroniques et les fichiers de configuration exportés arrivent souvent sur une seule ligne, impossible à lire. Collez le texte dans le panneau de gauche : chaque balise passe sur sa propre ligne et l'imbrication apparaît grâce à l'indentation. Une réponse de commande de 3 Ko sur une ligne devient environ 90 lignes lisibles avec 2 espaces, et l'on voit tout de suite quel article appartient à quelle commande. Le même passage vérifie que le document est bien formé. Si une balise n'est jamais fermée, se ferme dans le mauvais ordre ou si une valeur d'attribut n'a pas de guillemets, aucun résultat n'est produit : vous lisez un message comme « </commande> apparaît à la ligne 4, mais la balise ouverte est <article> (ligne 3) », avec la colonne exacte. L'inverse existe aussi : « Minifié — une ligne » supprime l'indentation entre les balises et le document rétrécit ; sans les commentaires, encore plus. La ligne de résultat donne la taille avant et après. Le texte qui contient des balises (Paiement <b>en espèces</b>) et les sections CDATA restent intacts.
Cet outil est aussi connu sous le nom de formater xml, formateur xml en ligne, valider xml, xml formatter, minifier xml, indenter xml, verifier xml en ligne.
Qu'est-ce que XML ?
Le XML écrit les données sous forme de paires <balise>valeur</balise> imbriquées ; on le trouve derrière les services SOAP, les flux RSS, les images SVG, les fichiers Office et d'innombrables fichiers de configuration. Pour un analyseur, les blancs entre balises ne comptent pas, c'est pourquoi les logiciels écrivent souvent le XML sur une ligne. Pour une personne, seule une indentation qui suit l'imbrication permet de le lire. Formater change ces blancs, et rien d'autre.
Qu'est-ce que XML bien formé ?
Un XML bien formé respecte les règles de base de la syntaxe : chaque balise ouvrante a sa balise fermante, les balises imbriquées se ferment dans l'ordre inverse, il existe un seul élément racine et les valeurs d'attribut sont entre guillemets. Si une règle est enfreinte, aucun logiciel XML n'ouvre le fichier. Un XML valide va plus loin : il respecte en plus un schéma (XSD ou DTD). Cet outil vérifie le premier point, pas le second.
Quelle différence entre formater et minifier un XML ?
Formater, c'est écrire pour les personnes : une balise par ligne, une indentation qui montre l'imbrication et un fichier plus gros. Minifier, c'est écrire pour les machines : les blancs et retours à la ligne entre balises disparaissent, les commentaires aussi si vous le voulez, et le fichier devient plus léger et plus rapide à transmettre. Les données restent identiques : mêmes balises, mêmes attributs, même texte. Prenez la version indentée pour lire ou chercher une erreur, la version sur une ligne pour l'envoyer à un service.
Ce que le formatage ne modifie jamais
L'indentation n'est ajoutée que là où l'espace entre deux balises est fait uniquement de blancs. Quand un élément contient à la fois du vrai texte et des balises (contenu mixte, comme « Paiement <b>en espèces</b> à la livraison »), ajouter un retour à la ligne changerait le texte ; l'intérieur d'un tel élément est donc recopié octet par octet. Les éléments marqués xml:space="preserve" et tout ce qu'ils contiennent sont traités de la même façon, et les sections CDATA ne bougent pas.
Les attributs gardent leur ordre, leur type de guillemets et leur écriture d'origine : les entités comme & ne sont ni décodées ni réécrites, <a/> reste <a/> et <a></a> reste <a></a>. Le DOCTYPE et la ligne <?xml …?> passent sans changement. Formater puis minifier de nouveau redonne le même arbre.
Ce que la validation vérifie, et ce qu'elle ne vérifie pas
L'outil contrôle la bonne formation : chaque balise ouverte est fermée, dans l'ordre inverse ; il y a un seul élément racine ; les valeurs d'attribut sont entre guillemets ; aucun attribut n'apparaît deux fois ; commentaires et CDATA sont fermés. Les erreurs sont données avec la ligne et la colonne, car dans un fichier minifié seule la colonne permet de trouver l'endroit.
Il n'y a pas de validation par schéma (XSD ou DTD). Une facture UBL peut être bien formée et pourtant manquer un champ obligatoire du schéma ; cet outil ne peut pas le dire. Par sécurité, les entités définies dans une DTD ne sont pas développées ; seules & < > " ' et les références numériques de caractères sont reconnues.
Questions fréquentes
Comment rendre un fichier XML lisible ?
Collez le XML dans le panneau de gauche de cette page. Chaque balise passe sur sa propre ligne et les niveaux imbriqués sont indentés de 2 espaces. Réglez « Mise en forme du résultat » pour 4 espaces ou des tabulations, puis copiez le résultat ou téléchargez-le en .xml.
Comment savoir si mon XML contient une erreur ?
Collez-le ici. Si le document est bien formé, la ligne de résultat affiche « Bien formé ». Sinon, aucun résultat n'est produit et vous voyez le nom de la balise non fermée ou mal fermée, avec sa ligne et sa colonne. La conformité à un schéma (XSD) n'est pas vérifiée.
Comment minifier un XML sur une seule ligne ?
Réglez « Mise en forme du résultat » sur « Minifié — une ligne ». Les retours à la ligne et l'indentation entre les balises disparaissent, les espaces à l'intérieur du texte restent. Réglez « Commentaires » sur « Supprimer » pour les enlever aussi ; la ligne de résultat montre la taille avant et après.
Est-ce que cela marche pour SOAP, SVG ou une facture UBL ?
Oui. Enveloppes SOAP, WSDL, SVG, XAML, RSS et factures UBL sont tous du XML, et les préfixes d'espace de noms comme soap: ou cac: sont conservés. Le formatage suit la structure des balises, le type de fichier ne compte pas.