Formateur XML

Les dumps XML minifiés provenant de services SOAP, de flux RSS et d’exports de configuration sont illisibles sur une seule ligne. Ce formateur analyse le document, le reconstruit avec une indentation cohérente (2 ou 4 espaces, tabulations, ou pas d’indentation pour une sortie minifiée), préserve l’ordre des attributs et les sections CDATA, et signale tout problème de bien formé avec la ligne et la colonne exactes afin que vous puissiez corriger les balises non appariées sans chercher.

Comment formater XML

  1. 1

    Collez XML

    Toute longueur, tout encodage ; la déclaration est préservée.

  2. 2

    Choisissez l'indentation

    Espaces (2 ou 4), tabulations, ou minifier.

  3. 3

    Formater

    Le parseur construit un DOM puis re-sérialise avec un espacement cohérent.

  4. 4

    Copier le résultat

    La sortie est un XML bien formé prêt à être collé dans des journaux ou des documents.

Ce que la mise en forme préserve

  • Déclaration XML (<?xml version="1.0" encoding="UTF-8"?>) conservée telle quelle.
  • Déclarations DOCTYPE et sous-ensembles internes préservés.
  • Instructions de traitement (<?xml-stylesheet ?>) conservées sur leur propre ligne.
  • Commentaires sur leur propre ligne ou en ligne selon le contexte.
  • Sections CDATA préservées exactement y compris les espaces à l’intérieur.
  • Valeurs d’attributs re-citées avec des guillemets doubles si elles ne contiennent pas de guillemets doubles, des guillemets simples sinon.
  • Références d’entité comme &amp;, &lt;, &gt; laissées telles quelles sauf si vous activez l’expansion complète des entités.

Exemples d’indentation

Entrée (minifiée) :

<books><book id="1"><title>1984</title><author>George Orwell</author></book></books>

Formaté (2 espaces) :

<books>
  <book id="1">
    <title>1984</title>
    <author>George Orwell</author>
  </book>
</books>

Erreurs courantes que l’outil détecte

Erreur Correction
Balise de fermeture non appariée Faire correspondre les noms d’ouverture et de fermeture
Élément non fermé Ajouter la balise de fermeture
Caractère invalide dans le nom de balise Les noms de balise doivent commencer par une lettre ou un underscore
Attributs en double sur le même élément Supprimer le duplicata
CDATA mal formé Vérifier l’appariement <![CDATA[ et ]]>
< ou & non échappé dans le texte Utiliser &lt; ou &amp;

Bien formé vs valide

  • Bien formé : XML suit les règles syntaxiques : balises équilibrées, caractères valides, imbrication correcte. Le formateur vérifie cela.
  • Valide : XML se conforme en plus à un schéma (DTD ou XSD). Pour cela, utilisez le validateur XSD.

Un document XML peut être bien formé sans être valide, mais pas l’inverse.

Remarques pratiques

  • L’ordre des attributs XML est significatif pour certains systèmes (pas beaucoup de systèmes modernes), le formateur préserve l’ordre d’entrée.
  • Balises auto-fermantes vs balises vides explicites : <foo/> et <foo></foo> sont équivalents en XML ; le formateur utilise l’auto-fermeture pour les éléments vides à moins que vous ne choisissiez de ne pas le faire.
  • Les préfixes de namespace sont préservés exactement.

Questions fréquentes

Oui. Le texte à l’intérieur des éléments à contenu mixte et des sections CDATA est conservé tel quel ; seuls les espaces entre les éléments sont ajustés pour l’indentation.

La limite pratique est d’environ 50 Mo dans le navigateur. Au-delà, le parsing DOM consomme trop de mémoire. Pour les fichiers énormes, utilisez un formateur en streaming comme xmllint en ligne de commande.

Oui. Les déclarations de namespace sont préservées sur leur élément ; le formateur ne les réorganise pas à la racine sauf si vous activez “consolider les namespaces”.

Non. Le parsing et la mise en forme se font dans votre navigateur, rien n’est transmis.

Outils similaires

Outil disponible dans d’autres langues