Convertir XML en JSON en ligne — attributs, tableaux, Unicode
Convertissez les attributs XML en clés @ et les éléments répétés en tableaux
Traitement dans le navigateur · aucun envoi de fichier
Les attributs utilisent @nom et le texte mixte #text. Les éléments frères de même nom deviennent des tableaux. Les valeurs restent des chaînes. L’ordre exact du contenu mixte n’est pas conservé. Les DTD ne sont pas prises en charge.
Mode d’emploi
- Collez un document XML comportant un seul élément racine.
- Examinez les clés d’attributs et les tableaux d’éléments répétés.
- Copiez le JSON obtenu dans votre application ou votre outil d’analyse.
Règles de conversion
La balise racine est conservée comme clé extérieure du JSON. Les attributs prennent le préfixe @, par exemple @id. Les enfants de même nom sous un même parent deviennent des tableaux. Un élément sans attribut ni enfant devient une chaîne, et un élément vide une chaîne vide. Les sections CDATA et les références de caractères XML standard sont lues comme du texte.
Lorsqu’un élément contient des enfants, son texte direct est regroupé dans #text. Les blancs qui ne servent qu’à la mise en forme autour des enfants sont omis. L’ordre relatif du texte et des éléments imbriqués n’est donc pas conservé dans le contenu mixte. Les commentaires et les instructions de traitement sont omis. Les préfixes d’espace de noms et les attributs xmlns gardent leur nom d’origine, sans restructuration selon les espaces de noms.
Exemples
<r><item>한글</item><item>中文😀</item></r> produit un tableau item sous r. <price currency="KRW">001</price> produit @currency avec KRW et #text avec la chaîne 001.
Validation et limites
Les balises non fermées, les racines multiples et les entités inconnues provoquent une erreur. Les déclarations DTD et d’entités ne sont pas prises en charge. L’entrée est limitée à un million de caractères et à 64 niveaux d’imbrication. Cette correspondance est pratique pour inspecter des données, mais ce n’est pas une sérialisation XML sans perte. Le résultat reste du texte inerte, et toute la conversion a lieu localement dans votre navigateur.
Questions fréquentes
Les valeurs qui ressemblent à des nombres sont-elles converties ?
Non. Le texte des éléments et les valeurs des attributs restent des chaînes, ce qui préserve les zéros initiaux dans des valeurs comme 001.
L’ordre du contenu mixte est-il conservé ?
Non. Le texte direct est regroupé dans #text. La position relative de ce texte et des éléments enfants n’est pas conservée.
L’outil peut-il charger des DTD ou des entités externes ?
Non. Les déclarations DOCTYPE et ENTITY sont refusées. L’outil ne télécharge aucun document externe et ne développe pas les entités déclarées.
Que deviennent les commentaires XML ?
Ils sont ignorés, tout comme les instructions de traitement. Seuls les éléments, les attributs et le texte passent dans le JSON.