BrowserTools
Publicité
Accueil / Validateurs / Validateur et formateur XML

Validateur et formateur XML

Validez et mettez en forme du XML dans votre navigateur à l'aide du DOMParser.

Chargement de Validateur et formateur XML… Si rien ne se passe, activez JavaScript.

XML (eXtensible Markup Language) est un format basé sur le texte pour stocker et transporter des données structurées. Développé par le groupe de travail XML du W3C et publié pour la première fois comme recommandation en 1998, XML a été conçu pour être à la fois lisible par les humains et analysable par les machines, autodescriptif et extensible, ce qui signifie que les développeurs pouvaient définir leurs propres balises et structures de document plutôt que de se limiter à un vocabulaire fixe. XML est issu directement de SGML (Standard Generalised Markup Language), la norme ISO complexe utilisée pour la documentation technique, mais en a retiré la majeure partie de la complexité pour produire quelque chose qui pouvait être mis en oeuvre en un week-end.

Exemples

Entrée <note><to>Ada</to></note>
Sortie Well-formed
Entrée <note><to>Ada</note>
Sortie Not well-formed · unclosed <note>

Chaque balise d'ouverture a besoin d'une balise de fermeture correspondante, correctement imbriquée.

Questions fréquentes

Mon XML est-il envoyé à un serveur ?
Non. L'analyse et la mise en forme se font entièrement dans votre navigateur à l'aide de l'API DOMParser intégrée, qui fait partie de la plateforme web et s'exécute localement sur votre appareil. Votre contenu XML n'est jamais transmis sur le réseau, ce qui rend cet outil sûr pour les fichiers de configuration confidentiels, les schémas internes ou les formats de données propriétaires.
Quelle est la différence entre un XML bien formé et un XML valide ?
Un document XML bien formé suit les règles de syntaxe de base de la spécification XML : il a un seul élément racine, toutes les balises sont correctement imbriquées et fermées, les valeurs d'attribut sont entre guillemets et les caractères réservés sont échappés par des références d'entité. Un document XML valide se conforme en outre à un schéma déclaré, une DTD (Document Type Definition) ou un XSD (XML Schema Definition), qui contraint quels éléments et attributs sont autorisés et dans quel ordre. Cet outil ne vérifie que la bonne formation.
Quand aurais-je besoin de valider du XML en pratique ?
Les cas courants incluent le débogage des requêtes et réponses des services web SOAP, l'inspection des fichiers de construction Maven ou Gradle, l'examen des fichiers de ressources Android, la révision du balisage des flux RSS/Atom, la vérification des fichiers d'image SVG, la mise en forme des configurations de beans Spring Framework et la validation des messages HL7 ou FHIR dans les intégrations de santé. Chaque fois qu'un outil ou une bibliothèque signale une erreur d'analyse XML, coller le contenu ici révèle rapidement la ligne problématique.
En quoi XML diffère-t-il de HTML ?
HTML est conçu pour être résilient aux erreurs ; les navigateurs affichent une page même avec des balises non fermées, des guillemets manquants et des éléments qui se chevauchent, en appliquant des règles complexes de récupération d'erreur. XML est strict : une seule erreur de syntaxe rend tout le document invalide et il ne doit pas être traité plus avant. HTML utilise un vocabulaire fixe d'éléments défini par la spécification HTML ; XML autorise n'importe quel nom de balise défini par l'auteur du document ou par son schéma régissant.
Cet outil valide-t-il par rapport à un schéma XSD ou DTD ?
Pas actuellement. Cet outil ne vérifie que la bonne formation du XML, la syntaxe correcte, à l'aide du DOMParser du navigateur. La validation de schéma par rapport à un XSD (XML Schema Definition) ou une DTD (Document Type Definition) est une opération plus complexe qui nécessite un validateur spécialisé. Pour la validation XSD, des outils en ligne de commande comme xmllint (libxml2) ou des validateurs XSD en ligne qui acceptent à la fois le schéma et le document sont mieux adaptés.
Quelle est la taille maximale de XML que je peux valider ?
Il n'y a pas de limite codée en dur, mais la mémoire disponible du navigateur et les performances du DOMParser imposent des contraintes pratiques. Les documents allant jusqu'à quelques mégaoctets s'analysent et se mettent en forme en quelques millisecondes. Les très gros fichiers XML, de plusieurs centaines de mégaoctets, comme les exports de bases de données ou les grandes réponses SOAP, peuvent rendre l'onglet du navigateur lent ou peu réactif. Pour le traitement XML à grande échelle, des outils en ligne de commande comme xmllint ou Saxon sont plus appropriés.
L'outil fonctionne-t-il avec les espaces de noms XML ?
Oui. Le DOMParser prend pleinement en charge les espaces de noms XML tels que définis par la spécification Namespaces in XML. Les préfixes d'espace de noms (xmlns:ns="...") et les espaces de noms par défaut (xmlns="...") sont analysés et préservés dans la sortie mise en forme. Les éléments et attributs sensibles aux espaces de noms sont affichés avec leurs préfixes intacts.
Puis-je utiliser cet outil pour mettre en forme des fichiers SVG ?
Oui. Les fichiers SVG (Scalable Vector Graphics) sont des documents XML bien formés et peuvent être validés et mis en forme par cet outil. Coller un SVG et le mettre en forme est un moyen rapide d'inspecter sa structure, de vérifier les chemins malformés ou d'examiner les métadonnées intégrées. Notez que le formateur resérialise le XML, ce qui peut changer l'ordre des attributs (bien que cela n'affecte pas le rendu).
Que sont les entités XML, et dois-je échapper des caractères dans mon contenu ?
XML définit cinq références d'entité prédéfinies pour les caractères qui ont une signification spéciale dans la syntaxe XML : &amp;amp; pour &, &amp;lt; pour <, &amp;gt; pour >, &amp;apos; pour ' et &amp;quot; pour ". Elles doivent être utilisées chaque fois que le caractère littéral apparaît dans le contenu textuel d'un élément ou dans les valeurs d'attribut. Utiliser un & ou un < brut à l'intérieur du contenu provoquera une erreur de bonne formation. Dans les sections CDATA (entourées de <![CDATA[...]]>) le contenu est traité comme du texte littéral et aucun échappement n'est nécessaire.
Quelle est une erreur courante qui rend le XML invalide ?
L'erreur la plus fréquente est l'utilisation d'une esperluette non échappée (&) dans le contenu textuel, par exemple dans une URL comme href="https://example.com/page?a=1&b=2", où & doit être écrit &amp;. Parmi les autres erreurs courantes figurent les balises auto-fermantes écrites sans la barre oblique finale (<br> au lieu de <br />), les incohérences de casse des balises (<Item> fermée par </item>) et l'absence de guillemets autour des valeurs d'attribut. Contrairement aux analyseurs HTML, les analyseurs XML refuseront de continuer après l'une quelconque de ces erreurs.

À propos de Validateur et formateur XML

Malgré la montée de JSON jusqu'à dominer les API web, XML reste profondément ancré dans les logiciels d'entreprise et de système. Les services web SOAP, très utilisés dans la banque, la santé (HL7 FHIR) et les systèmes gouvernementaux, transmettent des messages XML. Les documents Microsoft Office (.docx, .xlsx) sont des archives ZIP de fichiers XML. Les fichiers de disposition Android et les descripteurs de projet Maven sont du XML. Les flux RSS et Atom sont du XML. Les images SVG sont du XML. Les systèmes de configuration comme Spring Framework, Hibernate et les fichiers de construction Ant utilisent abondamment XML. Tout développeur travaillant avec des intégrations héritées, des systèmes d'entreprise ou des formats de document rencontrera régulièrement du XML.

Cet outil valide et met en forme le XML entièrement à l'intérieur de votre navigateur à l'aide de l'API DOMParser intégrée du navigateur, le même moteur qui affiche les pages HTML. Il analyse votre saisie et signale la première erreur de bonne formation avec le numéro de ligne et de colonne afin que vous puissiez repérer les problèmes instantanément. Le XML valide est ensuite resérialisé avec une indentation cohérente pour produire une sortie propre et lisible. Comme tout le traitement se fait localement, vos documents XML, qui peuvent contenir des schémas propriétaires, des identifiants dans des fichiers de configuration ou des données commerciales sensibles, ne sont jamais envoyés à aucun serveur.

XML est plus strict que HTML sur des points importants qui déroutent les développeurs nouveaux dans le format. Chaque élément doit être correctement fermé (contrairement à HTML, qui tolère les balises non fermées). Les valeurs d'attribut doivent toujours être entre guillemets. Le document doit avoir exactement un élément racine. Les cinq références d'entité prédéfinies (&amp;, &lt;, &gt;, &apos;, &quot;) doivent être utilisées pour les caractères littéraux correspondants à l'intérieur du texte et des valeurs d'attribut. XML est aussi sensible à la casse : <Tag> et <tag> sont des éléments différents. La bonne formation (syntaxe correcte) est un concept distinct de la validité (conformité à un schéma tel que XSD ou DTD), et cet outil ne vérifie que la première.

XML et la quête d'un format de document universel

XML est né d'un effort d'une décennie pour dompter SGML (Standard Generalised Markup Language), une norme ISO puissante mais d'une complexité énorme conçue à l'origine pour la documentation technique au ministère de la Défense des États-Unis. SGML était si compliqué que seul un logiciel spécialisé pouvait le traiter. En 1996, un groupe de travail du W3C dirigé par Jon Bosak entreprit de créer un 10 % simplifié de SGML qui couvrirait 90 % des cas d'usage, et de le faire sous une forme qui pourrait être mise en oeuvre en un week-end plutôt qu'en plusieurs années. XML 1.0 est devenu une recommandation du W3C le 10 février 1998.

La fin des années 1990 et le début des années 2000 furent l'apogée de l'enthousiasme pour XML. Les technologues imaginaient XML comme la colle universelle d'internet : documents, données, configuration, messagerie et même la programmation seraient tous du XML. Les services web utiliseraient des enveloppes SOAP (Simple Object Access Protocol) en XML. Les applications décriraient leurs interfaces en WSDL (Web Services Description Language), lui-même un dialecte XML. La « taxe des chevrons », la verbosité de la syntaxe XML, était perçue comme un prix justifié pour une interopérabilité universelle.

La réaction est venue avec la montée de JSON au milieu des années 2000. La compacité de JSON et sa correspondance directe avec les objets JavaScript l'ont rendu radicalement plus simple pour les cas d'usage des API web, et il a rapidement supplanté XML dans ce domaine. Pourtant, XML n'a jamais disparu. Il reste le format dominant dans l'intégration d'entreprise, les formats de document (ODF, OOXML), les systèmes de configuration et partout où les schémas, les espaces de noms et la capacité de mêler document et données sont véritablement précieux. Le langage de transformation XSLT et le langage de requête XPath du W3C, tous deux fondés sur XML, n'ont pas de réels équivalents en JSON pour les tâches complexes de transformation de documents.

Publicité
Publicité
Publicité