onlinetools.dev

XML ↔ JSON-converter

Converteer XML-documenten naar JSON en terug, attributen inbegrepen

Draait lokaal
loading…
Over deze tool

Converteer XML naar JSON om oude SOAP-antwoorden, RSS-feeds of Maven-POM’s in JavaScript, jq of een JSON-native API te voeren — of ga de andere kant op en maak XML uit JSON-data. Attributen blijven behouden: ze worden "@_naam"-sleutels, en tekstinhoud die naast attributen bestaat komt onder "#text" terecht, zodat er niets stilletjes verdwijnt.

De twee formaten zijn het over fundamentele zaken oneens, en deze converter maakt de gangbare pragmatische keuzes: herhaalde zusterelementen worden samengevoegd tot een JSON-array, numeriek ogende waarden worden getallen, en namespaces reizen mee als deel van de elementnaam. XML → JSON → XML behoudt structuur en inhoud voor typische documenten.

Beide richtingen draaien lokaal in je browser. Plak een factuurfeed of een API-antwoord zonder dat het ergens heen gaat.

Veelgestelde vragen

Waarom komen sommige waarden terug als getallen in plaats van strings?
De parser herkent numerieke tekst en converteert die, wat de meeste consumenten willen. Pas op met identifiers met voorloopnullen (productcodes, telefoonnummers) — is dat belangrijk voor je data, zet ze dan na de conversie tussen aanhalingstekens of behandel de uitvoer als startpunt.
Hoe worden herhaalde elementen behandeld?
Twee of meer broers en zussen met dezelfde naam worden een JSON-array onder die sleutel. Eén enkel voorkomen blijft een gewoon object — die asymmetrie zit in de afbeelding zelf, dus code die de JSON verwerkt moet beide vormen tolereren of eerst normaliseren.
Wat betekenen de @_- en #text-sleutels?
@_ markeert wat een XML-attribuut was, #text draagt de elementtekst wanneer er ook attributen zijn. Diezelfde conventie terugvoeren in de richting JSON → XML reconstrueert de oorspronkelijke markup.
Waarom weigert JSON → XML mijn array op het hoogste niveau?
Een XML-document moet precies één rootelement hebben, en een kale array heeft er geen. Wikkel de array in een object — {"items": {"item": [...]}} — en de converter levert een welgevormd document.
Gerelateerde tools