Skip to content

JSON naar XML Omzetter

Plak JSON en krijg direct XML. Converteert objecten, arrays en @_-attributen in de browser — niets geüpload. Gratis, privé, geen aanmelding vereist.

Geen tracking Draait in je browser Gratis
Opties · 2 spaties · JSON → XML
Inspringing
0 tekens
XML Uitvoer
0 regels
Gecontroleerd op XML 1.0-welgevormdheid, juistheid van de @_/#text-conventie en nauwkeurigheid van rootnormalisatie — Go Tools Engineering Team · May 29, 2026

Wat is JSON-naar-XML-conversie en hoe werkt het?

JSON (JavaScript Object Notation) en XML (Extensible Markup Language) zijn beide gestructureerde dataformaten, maar ze hebben fundamenteel verschillende modellen: JSON is een boom van objecten, arrays, strings, getallen, booleans en null-waarden zonder concept van attributen of documentrootbeperkingen; XML is een boom van elementen die attributen en tekstinhoud kunnen bevatten, en het document moet precies één rootelement hebben. Voor conversie van JSON naar XML is een set conventies nodig om dit verschil te overbruggen.

Deze tool gebruikt de meest wijdverspreide conventie — dezelfde als die van fast-xml-parser (Node.js), xmltodict (Python) en JAXB (Java) — in omgekeerde volgorde toegepast:

**1. Rootelementnormalisatie.** Het belangrijkste verschil tussen JSON en XML is de rootbeperking. JSON heeft geen rootconcept; XML vereist precies één. De omzetter verwerkt vier gevallen automatisch. Een object met één sleutel gebruikt die sleutel als XML-root: { "config": {...} } → .... Een object met meerdere sleutels wordt omsloten in : { "a": 1, "b": 2 } → 12. Een array op het hoogste niveau wordt omsloten als .... Een primitieve waarde wordt omsloten als waarde.

**2. Prefix @_ → XML-attributen.** JSON-sleutels met het prefix @_ worden XML-attributen op het omsluitende element. { "element": { "@_id": "42", "@_class": "primary" } } produceert . Dit prefix is de canonieke conventie — geen geldig XML-elementnaam begint met @, dus er is nooit een botsing met namen van kindelementen.

**3. #text → elementtekstinhoud.** Wanneer een element zowel attributen als tekstinhoud nodig heeft, wordt de tekst opgeslagen onder de sleutel #text: { "price": { "@_currency": "USD", "#text": "29.99" } } → 29.99. Elementen met alleen tekstinhoud (geen @_-sleutels) worden omgezet naar gewone tekstelementen zonder deze omweg.

**4. Arrays → herhaalde gelijknamige nevengeschikte elementen.** XML staat meerdere kindelementen met dezelfde naam toe; JSON gebruikt arrays voor geordende lijsten. Een JSON-array onder een sleutel produceert herhaalde kindelementen die de sleutelnaam hergebruiken: { "items": ["a", "b"] } produceert ab (de twee -elementen zijn nevengeschikte elementen onder de ouder). Wanneer de gehele JSON-invoer een array op het hoogste niveau is, wordt een -wrapper toegevoegd en wordt elk element een -kind — is een vaste reservenaam die alleen in dat geval wordt gebruikt.

**5. Symmetrisch met XML-naar-JSON.** De @_- en #text-conventies die hier worden gebruikt, zijn exact dezelfde als die van de begeleidende XML naar JSON Omzetter. Dit betekent dat een JSON → XML → JSON-heen-en-weercyclus attributen, tekstinhoud en elementstructuur behoudt — zolang de invoer-JSON de @_/#text-conventies volgt.

**Wanneer JSON naar XML converteren?** De meest voorkomende scenario's zijn: (1) data versturen naar een oudere SOAP of XML-gebaseerde webservice die een XML-aanvraagbody vereist; (2) XML-configuratiebestanden genereren (Spring, Maven, Ant, Android-resources) vanuit JSON-data; (3) sitemap.xml- of RSS-feed-XML produceren vanuit JSON-inhoudsdata; (4) interoperabiliteit met bedrijfssystemen (ERP, CRM, EDI) die XML consumeren; (5) SVG of andere XML-gebaseerde grafische formaten programmatisch genereren vanuit JSON-data. Gebruik voor het formatteren en valideren van de resulterende XML de XML Formatter.

// Convert JSON to XML in Node.js using fast-xml-parser
import { XMLBuilder } from 'fast-xml-parser';

const data = {
  catalog: {
    product: {
      '@_id': 'P01',
      '@_category': 'electronics',
      name: 'Wireless Headphones',
      price: {
        '@_currency': 'USD',
        '#text': '79.99'
      }
    }
  }
};

const builder = new XMLBuilder({
  attributeNamePrefix: '@_',   // @_ keys become XML attributes
  textNodeName: '#text',       // #text key becomes element text content
  ignoreAttributes: false,     // process @_ attribute keys
  format: true,                // pretty-print with indentation
  indentBy: '  ',              // 2-space indent
});

const xml = builder.build(data);
console.log(xml);
// <catalog>
//   <product id="P01" category="electronics">
//     <name>Wireless Headphones</name>
//     <price currency="USD">79.99</price>
//   </product>
// </catalog>

Kernfuncties

Live conversie

XML-uitvoer wordt direct bijgewerkt terwijl je JSON typt of plakt — geen Omzetten-knop nodig. Grote invoer (>200 KB) schakelt automatisch over naar handmatige modus om de browser responsief te houden.

Automatische rootnormalisatie

XML vereist precies één rootelement. Objecten met één sleutel gebruiken hun sleutel als root; objecten met meerdere sleutels worden omsloten in ; arrays op het hoogste niveau worden ...; primitieven worden waarde — altijd geldige XML-uitvoer.

@_-attribuut- en #text-conventie

Sleutels met het prefix @_ worden XML-attributen; de sleutel #text wordt elementtekstinhoud. Dit past bij de fast-xml-parser- en xmltodict-conventie, waardoor de uitvoer symmetrisch is met de begeleidende XML naar JSON Omzetter.

Array naar herhaalde elementen

JSON-arrays onder een sleutel produceren herhaalde kindelementen die de sleutelnaam hergebruiken — geen enkelvoudiging. { "items": [1, 2, 3] } levert drie -nevengeschikte elementen op. Een array-invoer op het hoogste niveau wordt omsloten als ... waarbij als vaste letterlijke naam wordt gebruikt.

100% browsergebaseerde privacy

Alle conversie draait lokaal in je browser via JavaScript. Je JSON — inclusief inloggegevens, interne configuraties en gevoelige payloads — wordt nooit naar een server verzonden, nooit gelogd en nooit opgeslagen.

Symmetrische heen-en-weercyclus met XML naar JSON

De @_- en #text-conventies worden gedeeld met de begeleidende XML naar JSON Omzetter. Een JSON → XML → JSON-heen-en-weercyclus behoudt attributen, tekstinhoud en geneste structuur nauwkeurig.

Voorbeelden

API-responsobject

{"user":{"id":42,"name":"Alice Kim","email":"alice@example.com","role":"admin","address":{"city":"Seoul","country":"KR"}}}

Een JSON-object met één sleutel waarbij de sleutel op het hoogste niveau het XML-rootelement wordt. Het geneste address-object produceert een kindelement

met - en -kinderen. Omdat het buitenste object precies één sleutel heeft ("user"), wordt er geen wrapper toegevoegd — "user" zelf is het rootelement. Getallen zoals 42 worden letterlijk tekstinhoud: 42.

Array op het hoogste niveau

[{"id":1,"name":"Widget A","price":9.99},{"id":2,"name":"Widget B","price":14.99},{"id":3,"name":"Widget C","price":4.49}]

Wanneer de gehele invoer een JSON-array is (niet omsloten in een object), produceert de omzetter .... Elk array-element wordt een -kind — "item" is een vaste letterlijke wrappernaaam die uitsluitend wordt gebruikt voor arrays op het hoogste niveau. Dit is het enige geval waarin verschijnt; arrays onder een objectsleutel hergebruiken de naam van die sleutel voor elk element.

Object met attributen en tekstinhoud

{"catalog":{"product":{"@_id":"P01","@_category":"electronics","name":"Wireless Headphones","price":{"@_currency":"USD","#text":"79.99"}}}}

Sleutels met het prefix @_ worden XML-attributen op het element: @_id wordt id="P01" en @_category wordt category="electronics" op het element . De sleutel #text wordt de tekstinhoud van het element — het price-object produceert dus 79.99. Dit sluit naadloos aan op de XML naar JSON Omzetter, die dezelfde @_- en #text-conventies gebruikt.

Zo gebruik je het

  1. 1

    Plak je JSON

    Voer je JSON-data in of plak deze in het invoerveld hierboven. Je kunt ook op 'Voorbeeld laden' klikken om een voorbeeld te proberen — een API-responsobject, een array-payload of een object met @_-attributen en #text.

  2. 2

    Bekijk de live XML-uitvoer

    XML verschijnt direct in het uitvoerpaneel. Objecten met één sleutel gebruiken hun sleutel als root; objecten met meerdere sleutels worden omsloten in ; @_-prefixed sleutels worden attributen; arrays worden herhaalde kindelementen. Pas de inspringing (2 of 4 spaties) naar wens aan.

  3. 3

    Kopieer of download

    Klik op Kopiëren om de XML naar je klembord te halen, of op Downloaden om het op te slaan als .xml-bestand. Om het resultaat te valideren of te herformatteren, plak het in de XML Formatter.

Veelgemaakte fouten bij conversie

Object met meerdere sleutels krijgt onverwachte -wrapper

Als je JSON op het hoogste niveau meerdere sleutels heeft, worden ze allemaal omsloten in . Dit is correcte XML (die één root vereist), maar past mogelijk niet bij je doelschema. Herstructureer je JSON naar een object met één sleutel om de naam van het rootelement te bepalen.

✗ Fout
// Input: { "status": 200, "data": { "id": 1 } }
// Output: <root><status>200</status><data><id>1</id></data></root>
// Root is <root> — may not match your schema
✓ Correct
// Wrap in a named key to control the root element
// Input: { "response": { "status": 200, "data": { "id": 1 } } }
// Output: <response><status>200</status><data><id>1</id></data></response>

Array op het hoogste niveau krijgt -wrapper

Een JSON-array op het hoogste niveau heeft geen elementnaam, dus hij wordt omsloten als .... Als je betekenisvolle tagnamen wilt, wikkel de array dan eerst in een benoemd object.

✗ Fout
// Input: [{ "id": 1 }, { "id": 2 }]
// Output: <root><item><id>1</id></item><item><id>2</id></item></root>
// Tag names are generic
✓ Correct
// Wrap in a named key for meaningful tag names
// Input: { "products": [{ "id": 1 }, { "id": 2 }] }
// Output: <root><products><id>1</id></products><products><id>2</id></products></root>
// Each array element reuses the key name "products" as its tag

Attribuutsleutels missen het prefix @_

Om een XML-attribuut te produceren, moet de JSON-sleutel het prefix @_ hebben. Zonder het prefix wordt de sleutel behandeld als kindelement, niet als attribuut.

✗ Fout
// Input: { "tag": { "id": "42", "name": "Alice" } }
// Output: <tag><id>42</id><name>Alice</name></tag>  ← id is a child element
✓ Correct
// Use @_ prefix for attributes
// Input: { "tag": { "@_id": "42", "name": "Alice" } }
// Output: <tag id="42"><name>Alice</name></tag>  ← id is an attribute

Element met zowel attributen als tekst — #text ontbreekt

Als je wilt dat een element zowel XML-attributen als tekstinhoud heeft, moet je de sleutel #text gebruiken voor de tekst. Zonder die sleutel heeft de tekst nergens naartoe en wordt het element leeg of geeft het een fout.

✗ Fout
// Input: { "price": { "@_currency": "USD", "value": "29.99" } }
// Output: <price currency="USD"><value>29.99</value></price>
// Text is a child element, not text content
✓ Correct
// Use #text for element text content
// Input: { "price": { "@_currency": "USD", "#text": "29.99" } }
// Output: <price currency="USD">29.99</price>  ← text content

JSON-sleutels met XML-ongeldige tekens

XML-elementnamen mogen niet beginnen met een cijfer en mogen geen spaties, dubbele punten (behalve voor naamruimteprefixen) of de meeste speciale tekens bevatten. Als je JSON-sleutels deze tekens bevatten, is de XML-uitvoer ongeldig. Hernoem de problematische sleutels vóór het converteren, of saneer ze in een naverwerkingsstap.

✗ Fout
// JSON key starts with digit — invalid XML element name
// Input: { "1stItem": "value" }
// Output: <1stItem>value</1stItem>  ← invalid XML
✓ Correct
// Use a valid XML element name
// Input: { "firstItem": "value" }
// Output: <firstItem>value</firstItem>  ← valid XML

Speciale tekens in waarden niet geschreven

XML-tekstinhoud mag geen ruwe <, >, & of "-tekens bevatten — ze moeten worden geschreven als <, >, & en ". De omzetter schrijft deze tekens automatisch in elementtekstinhoud en attribuutwaarden. Als vervolgverwerking ze dubbel schrijft, controleer dan of je XML-parser ruwe XML-bytes consumeert in plaats van al-geschreven inhoud opnieuw te schrijven.

✗ Fout
// JSON: { "query": "name = 'Alice' & role = 'admin'" }
// Converter outputs: <query>name = 'Alice' &amp; role = 'admin'</query>
// If double-processed: &amp;amp; — consumer is re-escaping
✓ Correct
// Converter output is correct — consume it as XML, not as a raw string
// <query>name = 'Alice' &amp; role = 'admin'</query>
// XML parser decodes to: name = 'Alice' & role = 'admin'

Veelvoorkomende gebruiksscenario's

SOAP en oudere XML-webservices aanroepen
Bouw de JSON-payload in je toepassing, converteer die naar XML en POST het naar het SOAP-eindpunt. Dit vermijdt het handmatig opbouwen van XML-strings en laat je werken met de data in een native JSON-structuur tot het moment dat je het moet serialiseren voor de oudere service.
XML-configuratiebestanden genereren
Spring, Maven, Ant, Tomcat en Android gebruiken allemaal XML-configuratieformaten. Genereer of transformeer configuratiedata als JSON — makkelijker te vergelijken en te versiebeheren — en converteer naar XML voor implementatie.
Sitemap- en RSS-feed-XML produceren
Contentmanagementsystemen en statische sitegeneratoren slaan pagina-meta-data vaak op als JSON. Converteer die meta-data naar sitemap.xml of RSS-feed-XML om in te dienen bij zoekmachines of inhoud te syndiceren naar feedlezers.
Bedrijfsdataintegratie (EDI / ERP / CRM)
ERP-systemen (SAP, Oracle), CRM-platformen en EDI-netwerken wisselen data vaak uit in XML. Converteer JSON-exports van moderne REST API's naar XML om deze systemen te voeden zonder een aangepaste XML-serializer te bouwen.
Android-resourcebestanden
Android-stringresources, layoutbeperkingen en manifest-vermeldingen zijn allemaal XML. Genereer of update resourcebestanden programmatisch vanuit JSON-databronnen en converteer naar het vereiste XML-formaat voor het Android-buildsysteem.
SVG en vectorgraphics genereren
SVG is XML. Bouw SVG-structuur als JSON-data — paden, vormen, kleuren, transformaties — en converteer naar XML om geldige SVG-bestanden te produceren voor web, druk of vectorbewerkingstools.

Technische details

RFC 8259-conforme JSON-verwerking
JSON-invoer wordt verwerkt via de ingebouwde JSON.parse() van de browser, die volledig voldoet aan RFC 8259. Het geeft nauwkeurige syntaxisfoutmeldingen met beste-schatting positie-informatie (regel en kolom) en verwerkt alle JSON-gegevenstypen: strings, getallen, booleans, null, arrays en objecten.
Aangepaste recursieve JSON-naar-XML-serializer
Na het verwerken doorloopt een aangepaste recursieve serializer de JSON-boom. Objectsleutels die beginnen met @_ worden uitgegeven als XML-attributen op het ouderelement. De sleutel #text wordt uitgegeven als de tekstinhoud van het element. Gewone objectsleutels worden kindelementen. Arraywaarden produceren herhaalde gelijknamige nevengeschikte elementen. Speciale tekens (<, >, &, ", ') in tekstinhoud en attribuutwaarden worden geschreven naar hun XML-entiteitsreferenties.
Rootnormalisatie
Omdat XML precies één rootelement vereist, past de serializer rootnormalisatie toe vóór het opbouwen van het document: objecten met één sleutel gebruiken de sleutel als root; objecten met meerdere sleutels en arrays op het hoogste niveau krijgen een synthetische -wrapper. Dit zorgt ervoor dat de uitvoer altijd welgevormde XML is ongeacht de invoervorm.
100% browsergebaseerd — geen upload, geen server
Alle verwerking draait in de JavaScript-engine van je browser. Er worden geen gegevens via het netwerk verzonden. Invoer groter dan 200 KB schakelt automatisch over van live-modus naar handmatige modus (waarbij een expliciete klik op Omzetten nodig is) om de browser responsief te houden tijdens zware serialisatie.

Aanbevolen aanpak

Beheer het rootelement met een object met één sleutel
De schoonste manier om betekenisvolle XML te produceren is ervoor te zorgen dat je JSON op het hoogste niveau een object met één sleutel is waarvan de sleutel de gewenste rootelementnaam is. Data met meerdere sleutels insluiten onder één benoemde sleutel geeft je een semantisch betekenisvolle root in plaats van de generieke -wrapper.
Gebruik @_ en #text voor attribuutrijke XML
Als je doel-XML-schema veel attributen gebruikt (gangbaar in configuratiebestanden, SVG en SOAP-envelopes), herstructureer dan je JSON om @_-prefixed sleutels en #text te gebruiken vóór het converteren. De resulterende XML past dan exact bij het doelschema zonder naverwerking.
Wikkel arrays in benoemde objecten voor betekenisvolle tagnamen
Een array op het hoogste niveau produceert het generieke ...-patroon, waarbij een vaste letterlijke naam is. De array insluiten onder een benoemde sleutel — { "products": [...] } — produceert herhaalde -elementen (de sleutelnaam wordt hergebruikt voor elk array-element) onder een -wrapper. Dit geeft je een domein-betekenisvolle tagnaam en is bijna altijd te verkiezen voor XML die wordt verwerkt of gevalideerd door een schema.
Valideer de uitvoer met de XML Formatter
Na het converteren, plak de XML-uitvoer in de XML Formatter om de welgevormdheid te valideren, de inspringing te controleren en eventuele structurele problemen te identificeren vóór het versturen van de XML naar een vervolgservice of het committen naar versiebeheer.
Saneer JSON-sleutels vóór het converteren
XML-elementnamen moeten beginnen met een letter of underscore en mogen geen spaties of de meeste speciale tekens bevatten. Als je JSON-sleutels afkomstig zijn van een externe bron (een databasekolomnaam, een API-veldnaam of gebruikersinvoer), controleer ze dan op XML-naamgeldigheid vóór het converteren om ongeldige uitvoer te voorkomen.

Veelgestelde vragen

Wordt mijn JSON-data naar een server verzonden wanneer ik deze tool gebruik?
Nee. Alle conversie vindt volledig plaats in je browser via JavaScript. Je JSON wordt nooit via het netwerk verzonden, nooit opgeslagen op een server, en nooit gelogd of geanalyseerd. Dit maakt de tool veilig voor gebruik met JSON-payloads met API-sleutels, databaseconfiguratie, interne servicedata of andere gevoelige inhoud. Je kunt dit verifiëren door het tabblad Netwerk van je browser te openen — je ziet nul verzoeken bij het plakken of converteren van JSON.
Hoe bepaalt de tool wat het XML-rootelement is?
XML vereist precies één rootelement; JSON heeft geen dergelijke beperking. De omzetter past deze regels toe: (1) Een object met één sleutel gebruikt die sleutel als naam van het rootelement — { "user": { ... } } wordt .... (2) Een object met meerdere sleutels (twee of meer sleutels op het hoogste niveau) wordt omsloten in een -element zodat alle sleutels kinderen worden van één enkele root. (3) Een array op het hoogste niveau wordt omsloten als ..., waarbij elk array-element een -kind wordt. (4) Een primitieve waarde (string, getal, boolean, null) op het hoogste niveau wordt waarde. Deze regels garanderen dat de uitvoer altijd welgevormde XML is met precies één root.
Waarom wordt een JSON-object met meerdere sleutels omsloten in ?
XML is een documentformaat met een strikte vereiste voor één root — een geldig XML-document moet precies één element op het hoogste niveau hebben. JSON-objecten kunnen een willekeurig aantal sleutels op het hoogste niveau hebben, dus wanneer je JSON meerdere sleutels heeft op het hoogste niveau (zoals { "status": 200, "data": {...}, "meta": {...} }), is er geen enkelvoudige sleutel om als root te gebruiken. Insluiten in is de veiligste en meest voorspelbare conventie. Als je een andere rootelement wilt, herstructureer je JSON dan tot een object met één sleutel vóór het converteren — bijv. { "response": { "status": 200, "data": {...} } }.
Hoe wordt een JSON-array op het hoogste niveau omgezet naar XML?
Een array op het hoogste niveau wordt omsloten als ....... Elk array-element wordt een -kind — "item" is een vaste letterlijke naam die alleen wordt gebruikt voor arrays op het hoogste niveau. Dit verschilt van arrays genest onder een objectsleutel: als je { "products": [...] } schrijft, wordt elk array-element een -kind (de sleutelnaam wordt hergebruikt), niet . Als je aangepaste tagnamen wilt voor een array op het hoogste niveau, wikkel het dan eerst in een benoemd object: { "products": [...] } geeft je herhaalde -elementen.
Hoe zet ik JSON-sleutels om naar XML-attributen?
Zet het prefix @_ voor de sleutel en de omzetter geeft het uit als XML-attribuut in plaats van kindelement. Zo produceert { "tag": { "@_id": "42", "@_lang": "nl", "#text": "Hallo" } } Hallo. De @_-prefixconventie is dezelfde als die van fast-xml-parser (Node.js) en xmltodict (Python), waardoor de uitvoer consistent heen-en-weer-converteerbaar is met die bibliotheken. Dit is ook de conventie die wordt gebruikt door de begeleidende XML naar JSON Omzetter.
Waarvoor wordt de sleutel #text gebruikt?
Wanneer een element zowel XML-attributen als tekstinhoud nodig heeft, kun je de tekst niet eenvoudig toewijzen aan een kindelement — het moet het eigen tekstknooppunt van het element zijn. De sleutel #text in je JSON wordt die tekstinhoud. Voorbeeld: { "price": { "@_currency": "USD", "#text": "29.99" } } produceert 29.99. Als een object alleen een #text-sleutel heeft en geen @_-sleutels, produceert het nog steeds een gewoon tekstelement: { "note": { "#text": "hallo" } } wordt hallo.
Heeft inspringing invloed op de XML-structuur?
Nee. Inspringing is puur cosmetisch — het verandert hoe de XML wordt opgemaakt voor leesbaarheid door mensen maar heeft geen invloed op de elementstructuur, attribuutwaarden of tekstinhoud. Kies 2 spaties voor compacte uitvoer of 4 spaties voor meer leesbare uitvoer. Beide produceren semantisch identieke XML. De meeste XML-parsers behandelen witruimte-tekstvelden tussen elementen als negeerbare witruimte, zodat ingesprongen en geminimaliseerde XML equivalent zijn voor verwerkingsdoeleinden.
Hoe wordt een JSON-array genest in een object omgezet naar XML?
Een JSON-arraywaarde onder een sleutel produceert herhaalde gelijknamige kindelementen, waarbij de sleutelnaam voor elk element wordt hergebruikt. Zo produceert { "items": [1, 2, 3] } drie -nevengeschikte elementen — niet . Evenzo produceert { "products": [{"name":"A"},{"name":"B"}] } twee -elementen, elk met een -kind. De sleutelnaam wordt voor elk array-element ongewijzigd gebruikt; er vindt geen enkelvoudiging plaats. De letterlijke naam verschijnt alleen wanneer de gehele JSON-invoer een array op het hoogste niveau is (zie hierboven), waar een vaste reservenaam is.
Hoe zet ik XML terug naar JSON?
Gebruik de begeleidende XML naar JSON Omzetter. Hij past dezelfde @_- en #text-conventies in omgekeerde volgorde toe: XML-attributen worden @_-prefixed JSON-sleutels, elementtekstinhoud gecombineerd met attributen wordt een #text-sleutel, en herhaalde gelijknamige nevengeschikte elementen worden een JSON-array. De twee tools zijn symmetrisch voor gebruik bij heen-en-weer-conversies.
Kan ik de XML-uitvoer valideren of formatteren?
Ja — plak de XML-uitvoer in de XML Formatter om de welgevormdheid te valideren, de inspringing aan te passen of te minimaliseren. De XML Formatter is het juiste gereedschap voor het inspecteren en polijsten van de XML zodra deze omzetter het heeft geproduceerd.
Is er een bestandsgroottelimiet voor JSON-invoer?
Er is geen harde limiet, maar invoer groter dan 200 KB schakelt automatisch over van live-conversie naar handmatige modus. In handmatige modus verschijnt een Omzetten-knop en vindt conversie alleen plaats wanneer je erop klikt — dit houdt de browser responsief tijdens zware serialisatie. Voor zeer grote JSON-bestanden (meerdere megabytes) kun je beter commandoregeltools overwegen voor betere prestaties: node -e "const {XMLBuilder}=require('fast-xml-parser');console.log(new XMLBuilder({attributeNamePrefix:'@_'}).build(JSON.parse(require('fs').readFileSync('in.json','utf8'))))" of een gelijkwaardig Python-script met xmltodict.
Welke JSON-typen worden ondersteund?
Alle zes JSON-typen worden ondersteund. Objecten worden XML-elementen met kindelementen. Arrays worden herhaalde gelijknamige nevengeschikte elementen. Strings, getallen, booleans en null worden elementtekstinhoud. Booleans en null worden geserialiseerd als hun letterlijke stringrepresentaties: true, false en lege inhoud voor null. Er wordt geen type-omzetting toegepast — getallen worden naar XML-tekstinhoud geschreven exact zoals ze in de JSON verschijnen, met behoud van decimalen en precisie.

Gerelateerde tools

Alle tools bekijken →