Formater et valider du XML
Collez du XML pour l'indenter, le compacter ou vérifier qu'il est bien formé, avec la ligne et la colonne de chaque erreur.
Fonctionne entièrement dans votre navigateur
- Entrée
- 0
- Sortie
- 0
- Variation
- 0%
Données jusqu'à environ 10 Mo. L'outil vérifie que le XML est bien formé ; il ne le valide pas par rapport à un schéma (XSD) ou une DTD.
Comment formater et valider du XML
- Collez votre XML dans le champ, ou cliquez sur Insérer un exemple.
- Choisissez 2 espaces, 4 espaces, tabulations, ou Minifier pour retirer les espaces entre les balises.
- Si le XML n'est pas bien formé, vous voyez la ligne et la colonne du premier problème. Sinon, copiez ou téléchargez le résultat.
Indenter du XML sans le modifier
Le XML est exigeant sur la structure et souple sur la mise en page : entre deux balises, vous pouvez ne rien mettre, une espace ou cent lignes vides, le document a le même sens. C'est pourquoi les flux, les réponses SOAP et les configurations exportées arrivent souvent sur une seule longue ligne. Formater le XML en indentant chaque élément imbriqué rend la hiérarchie visible et permet une comparaison ligne par ligne.
Beaucoup de formateurs analysent le document puis le réécrivent, ce qui peut modifier discrètement des choses auxquelles vous ne leur avez pas demandé de toucher : transformer © en caractère littéral, changer le style des guillemets ou réordonner les attributs. Cet outil lit le texte avec un découpeur lexical et réutilise chaque morceau exactement tel qu'il a été écrit, en ajoutant ou retirant uniquement des espaces entre les éléments. Il utilise ensuite l'analyseur XML du navigateur pour vérifier que le résultat est bien formé.
Les espaces sont le seul endroit où le XML n'est pas toujours souple. Dans un paragraphe comme <p>un <b>deux</b> trois</p>, les espaces autour des balises font partie du texte : les déplacer ou les supprimer changerait ce que voit le lecteur. Les éléments qui mêlent texte et balises, et les éléments marqués xml:space="preserve", ne sont donc jamais remis en forme.
Conseils
- Vous faites passer des données d'un format à l'autre ? Associez cet outil à Formater et valider du JSON pour lire les deux côtés.
- Vous formatez une page web plutôt qu'un fichier de données ? Utilisez Formater et indenter du HTML, qui comprend les balises vides comme
<br>. - Vous voulez voir ce qui a changé entre deux exports ? Formatez-les tous les deux, puis comparez-les dans Comparer deux textes.
Questions fréquentes
Mon XML est-il envoyé en ligne ?
Non. Le document est vérifié et formaté par du code qui s'exécute dans votre navigateur : fichiers de configuration, flux et réponses d'API restent sur votre appareil.
Le formatage modifie-t-il mes données ?
Les balises, attributs et textes sont copiés exactement tels qu'écrits. Les entités comme & et ©, les sections CDATA, les commentaires, les instructions de traitement et le DOCTYPE ne sont ni réencodés ni réordonnés. Seuls les espaces entre les éléments changent.
Que devient le texte mêlé à des balises ?
Un élément comme <p>Bonjour <b>tout le monde</b></p> mélange texte et éléments, et chaque espace peut compter : il est donc laissé exactement tel qu'écrit. C'est aussi le cas de tout élément marqué xml:space="preserve". Une note sous le résultat indique combien d'éléments ont été laissés intacts.
Que retire Minifier ?
Uniquement le texte composé seulement d'espaces entre les balises, comme les sauts de ligne et l'indentation entre les éléments. Le texte à l'intérieur des éléments, le contenu mixte et les éléments préservés ne sont pas touchés : le fichier minifié a donc le même sens que l'original.
Quelle est la différence entre bien formé et valide ?
Bien formé signifie que la syntaxe est correcte : balises fermées et correctement imbriquées, attributs entre guillemets, un seul élément racine. Valide signifie qu'il respecte en plus un schéma ou une DTD. Cet outil vérifie le premier point : il signale une balise fermante manquante ou un attribut sans guillemets, mais pas un élément que votre schéma n'autorise pas.
Pourquoi refuse-t-il une entité HTML comme &nbsp; ?
Le XML ne définit lui-même que cinq entités nommées : &, <, >, " et '. Les autres, dont , nécessitent un DOCTYPE qui les déclare, ou une forme numérique comme  .