Analyseur XML
Formatez, validez et interrogez des documents XML instantanément. Propulsé par des API natives du navigateur pour une vitesse et une confidentialité maximales.
Le XML n'est pas bien formé
Résultats
Arborescence des nœuds
Comment utiliser l'analyseur XML
Collez votre XML
Copiez et collez votre contenu XML dans le champ de saisie, ou cliquez sur Charger un exemple XML.
Formatez et validez
Utilisez Formater pour embellir, Minifier pour compresser, ou Valider pour vérifier les erreurs.
Interrogez avec XPath
Entrez une expression XPath et cliquez sur Exécuter XPath pour extraire des nœuds spécifiques.
Qu'est-ce que XML ?
XML (eXtensible Markup Language) est un langage de balisage qui définit un ensemble de règles pour encoder des documents dans un format à la fois lisible par l'homme et par la machine. Il est largement utilisé pour les fichiers de configuration, l'échange de données (SOAP, RSS, Atom) et le stockage de documents.
Caractéristiques principales de XML
Auto-descriptif
XML utilise des balises personnalisées pour décrire la structure des données, ce qui facilite la compréhension du contenu et de la hiérarchie au premier coup d'œil.
Indépendant de la plateforme
En tant que texte brut, XML fonctionne sur toutes les plateformes, langages de programmation et systèmes sans problèmes de compatibilité.
Extensible
Vous pouvez définir vos propres balises et structure de document à l'aide de DTD ou XML Schema pour adapter n'importe quel modèle de données.
Questions fréquentes
Un XML bien formé suit les règles syntaxiques de base du XML (imbrication correcte, balises fermantes, élément racine unique). Un XML valide est bien formé ET conforme à un schéma (DTD, XSD) qui définit la structure et les types de données autorisés.
Non, cet outil vérifie uniquement la bonne formation (correction syntaxique). La validation basée sur un schéma par rapport à une DTD ou un XSD n'est pas prise en charge nativement dans le navigateur.
La fonction native document.evaluate() du navigateur prend en charge XPath 1.0. Cela couvre la plupart des requêtes courantes, y compris les axes, les prédicats et les fonctions comme contains(), text() et @attribute.
Un espace de noms associe des noms d'éléments à une URI via des attributs xmlns - par exemple un élément atom:feed déclarant xmlns:atom="http://www.w3.org/2005/Atom". Le préfixe est arbitraire ; seule l'URI identifie l'espace de noms, de sorte que deux documents peuvent utiliser des préfixes différents pour un même vocabulaire. C'est à cause des espaces de noms que la correspondance XPath nécessite souvent des astuces avec local-name() lorsque les préfixes diffèrent.
Les expressions XPath 1.0 parcourent l'arborescence : /rss/channel/item sélectionne par chemin, //item trouve des éléments n'importe où dans le document, item[@type='news'] filtre sur un attribut, et des prédicats comme item[1] ou item[last()] ciblent des nœuds précis. C'est le langage de requête qui se cache derrière XSLT, de nombreux frameworks de test et l'évaluateur de cet outil.
L'injection XXE (XML External Entity) exploite une entité DTD pointant vers un chemin de fichier ou une URL, poussant un analyseur côté serveur à la récupérer - avec des fuites historiques de /etc/passwd ou de services internes. Les analyseurs XML des navigateurs ne résolvent pas les entités externes, et cet outil s'exécute entièrement dans votre navigateur sans aller-retour serveur, de sorte que le XML collé ne peut déclencher ni lecture de fichiers ni SSRF.
DOM charge tout le document dans une arborescence que vous pouvez parcourir dans n'importe quel ordre - intuitif mais gourmand en mémoire pour les fichiers volumineux. SAX diffuse des événements (balise ouvrante, texte, balise fermante) en un seul passage avec une mémoire constante - rapide mais uniquement vers l'avant. Le JavaScript des navigateurs expose DOMParser (approche DOM) ; le streaming de XML en JavaScript nécessite une bibliothèque ou les Web Streams.
Échappez-les en < et & dans le texte ordinaire - < et & sont interdits à l'état brut dans les données de caractères. Pour des blocs de texte riche en balisage, enveloppez-le dans une section CDATA, qui ne nécessite aucun échappement jusqu'à la séquence ]]> à sa fin. Seuls < et & doivent strictement être échappés dans le contenu ; > ne doit être échappé que lorsqu'il forme cette séquence de fermeture.
Outils connexes
Boîte à outils d'analyse JSON
Validez, formatez, minifiez et interrogez du JSON avec JSONPath dans votre navigateur avec retour d'erreur instantané
Analyseur CSV
Analysez les données CSV dans un tableau visuel avec délimiteur configurable et statistiques de colonnes
Analyseur YAML
Analysez et convertissez YAML en JSON et inversement avec validation
Références faisant autorité
Les sources primaires à l'origine de cet outil - normes et spécifications officielles, et non des résumés de seconde main.
W3C - Extensible Markup Language (XML) 1.0
La recommandation W3C définissant Extensible Markup Language 1.0, la fondation du format.
XML - Wikipedia
Modèle arborescent XML, espaces de noms, et pourquoi le format met l'accent sur la validité et la bien-formité.
MDN Web Docs - XML
Le guide Mozilla sur le traitement du XML dans le navigateur, y compris l'utilisation de DOMParser.