XML Formatter, Parser et Audit
Formatez, parsez et auditez du XML en local, avec contrôles sitemaps, flux, SOAP et SVG.
Ce formateur XML parse votre document directement dans le navigateur, confirme qu'il est well-formed, puis le beautify ou le minify pour vous. Au-delà du pretty printing, il construit un audit de structure rapide autour de ce que le parser a renvoyé : l'élément racine, une carte des namespaces, un inventaire des attributes, les chemins d'éléments avec leur profondeur, des avertissements sur les IDs en double, et le compte des commentaires, des noeuds CDATA et texte. Les contrôles de profil ajoutent des indices pratiques pour ce sur quoi vous bossez vraiment : un sitemap fait vérifier ses valeurs loc, un flux ses essentiels, une enveloppe SOAP son Body, et un SVG signale les éléments script avant publication. Copiez un rapport compact directement dans un ticket. Rien ne quitte jamais la page.
100% dans votre navigateur. Rien de ce que vous tapez ne quitte cette page.
XML formatter, parser et audit de structure
Collez votre XML. La page vérifie qu'il parse, puis le beautify ou le minify pour vous. Vous récupérez aussi les namespaces, les attributes, les IDs en double, les noeuds texte et les chemins d'éléments, plus quelques contrôles taillés pour ce sur quoi vous bossez vraiment : sitemaps, flux, enveloppes SOAP, bouts de SVG, fichiers de config.
La validation de syntaxe s'appuie sur le parser XML natif du navigateur. Il ne vérifiera pas vos règles métier XSD perso, non. Ce qu'il fait, c'est rendre la structure lisible avant que vous ne la passiez à la validation par schéma.
Le formatage XML reste bien utile pour le travail technique d'aujourd'hui
Un formateur XML reste un outil utile parce qu'on n'arrête pas de déclarer le XML mort, et il ne l'est pas. Sitemaps, flux RSS et Atom, intégrations SOAP, exports de paiement, flux produits, SVG, fichiers de config, des tas d'APIs d'entreprise : tout ça c'est du XML, et tout ça tourne encore très bien en prod. Le truc agaçant, c'est la façon dont il arrive généralement. Minifié sur une seule ligne, ou imbriqué sur quinze niveaux, ou tellement noué de namespaces qu'on ne sait même plus à quoi ressemble la structure. Ajouter des sauts de ligne ne règle pas ça. Un formatter qui vaut le coup confirme que le document parse, vous montre la racine, fait remonter les namespaces, liste les attributes, pointe les chemins répétés et signale les trucs propres au profil avant qu'un autre système ne rejette votre fichier.
Donc c'est ce que celui-ci essaie de faire. Le parser du navigateur gère la validation de syntaxe, puis un petit audit se construit autour de ce qui en ressort. Beautify ou minify le résultat. Parcourez l'arbre des éléments. Inspectez les attributes, traquez les valeurs d'ID en double, comptez vos commentaires et vos noeuds CDATA. Vérifiez les valeurs loc dans un sitemap, jetez un oeil aux essentiels d'un flux, puis copiez un rapport compact directement dans un ticket. Honnêtement, quand vous courez après un sitemap que la Search Console n'arrête pas de recracher, ou que vous documentez une requête SOAP à 18h, ça vaut largement mieux qu'un simple pretty printer.
Comment utiliser l'audit XML
Commencez par le résumé. Le parser a échoué ? Corrigez d'abord cette première erreur de syntaxe avant de vous embêter à formater quoi que ce soit. Le XML ne pardonne pas grand-chose. Un tag pas fermé, une mauvaise entité, une imbrication qui ne s'aligne pas, et tout le document est mort. Une fois qu'il parse proprement, passez aux onglets arbre et attributes. L'arbre vous montre où se planquent les éléments répétés. La vue des attributes, c'est là que les IDs manquants et les valeurs-qui-ne-devraient-pas-être-en-double ont tendance à vous sauter aux yeux. Et l'onglet namespaces ? Il étale quels prefixes sont en jeu et où un default namespace a discrètement pris le dessus.
- XML formaté vous donne une version lisible pour la relecture, ou une version écrasée pour le transport.
- Arbre des éléments liste les chemins, la profondeur, les enfants, de petits aperçus de texte.
- Attributes traîne au grand jour les IDs répétés et les valeurs que vous auriez sinon ratées.
- Namespaces sépare les prefixes, les default namespaces et les valeurs d'URI pour que vous puissiez les lire.
- Contrôles de profil glissent des indices pratiques pour les sitemaps, les flux, SOAP et les payloads d'API, le SVG.
La validation au-delà du formatage
Voilà le truc que le formatage ne peut pas vous promettre. Il prouve que le XML est well-formed. Il ne dit rien sur le fait que le système destinataire l'acceptera vraiment. Un sitemap parse nickel et envoie quand même des URLs non canoniques. Un flux parse alors qu'il lui manque la moitié de ses métadonnées utiles. Une requête SOAP est techniquement well-formed mais explose quand même parce que le namespace de l'opération est faux, et bon courage pour repérer ça à l'oeil nu. Un SVG peut parser tout en transportant des éléments dont votre workflow de publication ne veut vraiment pas. Donc voyez cette page comme la passe de structure rapide, le premier coup d'oeil. Ensuite, faites entrer la validation XSD, les validateurs de flux, la Search Console, le sandboxing d'API, bref ce que votre vraie cible exige quand ses règles deviennent plus strictes.
Questions fréquentes
Est-ce que ça valide contre un XSD ?
Non, non. Ça vérifie la syntaxe XML et audite la structure, le tout dans votre navigateur. La validation XSD a besoin d'un fichier de schéma plus des règles qui vivent entièrement en dehors de ce formatter.
Quelle est la différence entre du XML well-formed et du XML valid ?
Le well-formed, c'est une question de syntaxe correcte. Tags fermés, une seule racine, imbrication qui s'aligne. Le valid va plus loin : il faut aussi qu'il colle à un schéma ou à une DTD. Un formatter ne vérifie que la partie well-formed, et les gens confondent ces deux-là tout le temps.
Pourquoi mon XML ne parse pas ?
En général un truc tout bête. Un tag laissé ouvert ou mal apparié. Plus d'un élément racine alors qu'il ne peut y en avoir qu'un. Une esperluette, un inférieur ou un supérieur bruts plantés là sans être échappés. Parfois c'est juste un encodage de caractères cassé, celui auquel personne ne pense à aller voir.
Comment échapper les caractères spéciaux en XML ?
Remplacez l'esperluette par son entité, l'inférieur par lt, le supérieur par gt, les guillemets par les leurs. Ou alors, si vous avez un gros bloc de contenu brut, balancez le tout dans une section CDATA et zappez le tripotage caractère par caractère.