tomai
Connexion
Gratuit · Outils développeur

XML vers JSON

Convertir des documents XML en JSON propre et prévisible

Entrée XML
Sortie JSON

Qu'est-ce qu'un convertisseur XML vers JSON ?

XML fut le format de données par défaut des années 2000 et survit dans les flux RSS, les API bancaires, les services SOAP et les fichiers de configuration hérités. Le JavaScript, Python et Go modernes lisent bien plus naturellement le JSON. Un convertisseur XML vers JSON traduit un document en objets simples avec un schéma prévisible : chaque élément devient un objet, les attributs sont préfixés par "@@" pour que l'attribut "id" ne heurte jamais un élément enfant "id", le contenu texte vit sous "@text" et les frères répétés s'assemblent en tableaux.

Ce qu'il peut faire

  • Analyser les éléments imbriqués en objets JSON
  • Séparer les attributs (préfixe @@), le texte (@text) et les enfants
  • Regrouper automatiquement les frères répétés en tableaux
  • Gérer CDATA, commentaires, déclarations et balises auto-fermantes
  • Signaler les balises mal appariées ou non fermées avec une erreur claire
  • Formater le JSON avec une indentation lisible

Quand l'utiliser

  • Lire des flux RSS/Atom ou des réponses de type SOAP
  • Migrer une configuration XML vers des pipelines JSON
  • Inspecter ce que renvoie réellement une API XML héritée
  • Construire des fixtures JSON de test à partir de données XML de référence

Confidentialité : la conversion a lieu entièrement dans votre navigateur — rien de ce que vous collez n'est jamais téléversé.

La correspondance utilisée par ce convertisseur

  • Les attributs XML deviennent des clés préfixées par @ (price currency="EUR"{"@currency":"EUR"}), afin qu’ils ne puissent jamais entrer en conflit avec les éléments enfants.
  • Un élément qui mélange du texte et des éléments enfants conserve son texte sous la clé #text ; un élément contenant uniquement du texte est directement mappé sur une chaîne brute.
  • Les éléments frères répétés sont regroupés dans un tableau ; la déclaration XML, les commentaires et les instructions de traitement sont ignorés.

Les attributs et les nœuds de texte nécessitent une convention

Attributs et texte, jamais mélangés

Les attributs deviennent des clés préfixées "@@id" et le texte vit sous "@text", donc un attribut et un élément du même nom ne peuvent jamais se remplacer l'un l'autre.

🔒

Les listes restent des listes

Les frères répétés s'assemblent automatiquement en tableau JSON : un catalogue de cinq livres devient un tableau de cinq objets, pas un livre écrasé.

🎯

Tolérant au vrai XML

CDATA, commentaires, DOCTYPE et balises auto-fermantes s'analysent proprement, tandis que le XML vraiment mal formé échoue avec un message descriptif.

Questions fréquentes

Comment les attributs sont-ils représentés ?

Les attributs deviennent des clés préfixées "@@", p. ex. <book id="5"> devient {"@@id":"5"}. Cela évite la collision classique entre un attribut "id" et un élément enfant du même nom.

Que deviennent les éléments répétés ?

Les frères répétés du même nom sont regroupés automatiquement en tableau JSON. Une occurrence unique reste un objet unique ; plusieurs deviennent un tableau — les deux cas se lisent intuitivement.

Mon XML est-il envoyé quelque part ?

Non. Tout s'exécute dans votre navigateur en JavaScript pur — rien n'est transmis ni stocké.

Où est passé mon attribut dans la sortie JSON ?

Recherchez la clé préfixée par @ sur le même objet que son élément. Si vous ne voyez que #text, l’élément possédait à la fois des attributs et du contenu ; si vous vous attendiez à trouver un attribut mais n’en trouvez aucun, celui-ci se trouvait sur un nœud parent — développez l’arborescence d’un niveau vers le haut.

Outils associés

Outils associés