JSON naar XML-converter
Converteer JSON onmiddellijk naar XML. Ondersteunt aangepaste roottags en inspringing voor schone, gestructureerde uitvoer.
Converteer JSON onmiddellijk naar XML. Ondersteunt aangepaste roottags en inspringing voor schone, gestructureerde uitvoer.
Het converteren van JSON naar XML is het omgekeerde van de meer gebruikelijke XML-naar-JSON-richting. De conversie is eenvoudig van aard: verander elk JSON-object in een XML-element, elke sleutel in een onderliggende tag, elke waarde in de tekst van het element, maar XML legt structurele regels op die JSON niet heeft. Sleutels met speciale tekens kunnen geen elementnamen worden; arrays hebben een consistente representatie nodig; waarden die objecten zijn, hebben hun eigen geneste structuur nodig.
Deze converter gebruikt een conventie die dicht bij de conventie ligt die de meeste XML-naar-JSON-tools volgen: sleutels met het voorvoegsel @ worden attributen op het bovenliggende element; een sleutel met de naam #text levert de tekstinhoud van het element; arrays produceren herhaalde elementen met dezelfde naam. Als u deze conventie volgt, blijft de heen- en terugreis consistent als u de JSON oorspronkelijk uit XML hebt geproduceerd.
Uitvoer-XML is goed opgebouwd: elk element is correct gesloten, attribuutwaarden zijn voorzien van escape-tekens, en tekstinhoud is escaped voor speciale XML-tekens (&, <, >). Het resultaat wordt netjes geopend in elke XML-parser, validator of tool die XML gebruikt.
Veel gevestigde systemen verwachten nog steeds XML, zelfs als hun invoer afkomstig is van moderne JSON-producerende pijplijnen. SOAP-services, bedrijfsintegraties, RSS-uitgevers, gegevensinzendingen door de overheid en een lange reeks oudere software accepteren XML en wijzen JSON af. De conversie overbrugt moderne producenten met oudere consumenten.
XML ondersteunt ook functies die JSON niet standaard heeft: naamruimten, schema's (XSD), verwerkingsinstructies en een sterke traditie van formele validatie. Voor systemen waarbij deze kenmerken ertoe doen (XML-handtekeningen, formeel gevalideerde gegevensuitwisseling, complexe schemabeperkingen) blijft het genereren van XML-uitvoer de juiste keuze.
Plak JSON, haal XML op.
De converter loopt de JSON-waarde recursief door. Objecten worden elementen; voor elke sleutel in het object betekent een voorvoegsel @ dat de sleutel wordt geconverteerd naar een attribuut op het bovenliggende element, # tekst levert de tekstinhoud van het element en gewone sleutels worden onderliggende elementen waarvan de waarde wordt herhaald in dezelfde conversie.
Arrays worden geconverteerd naar herhaalde broers en zussen. Een array onder sleutelitems in JSON produceert één <items>-element per array-item in het bovenliggende item. Dit komt overeen met de manier waarop XML-naar-JSON-converters collecties met meerdere elementen vertegenwoordigen.
Elementnamen die ongeldig zouden zijn in XML (die spaties, speciale tekens bevatten of beginnen met cijfers) worden opgeschoond: spaties worden onderstrepingstekens, ongeldige tekens worden verwijderd en namen die leiden tot cijfers worden voorafgegaan. Attribuut- en tekstwaarden zijn voorzien van XML-escape-waarden (& wordt &, < wordt <, enz.) om de uitvoer overzichtelijk te houden.