So wandeln Sie JSON in XML um
- Fügen Sie JSON ein oder öffnen Sie eine
.json-Datei. Das XML erscheint schon während der Eingabe daneben. - Legen Sie den Namen des Wurzelelements fest (oder lassen Sie das Feld leer, um den einzigen Schlüssel der obersten Ebene zu verwenden), dazu das Attribut-Präfix und die Einrückung.
- Kopieren Sie das XML oder laden Sie es als
.xml-Datei herunter.
So wird JSON auf XML abgebildet
| JSON | XML |
|---|---|
{"name": "Ada"} | <name>Ada</name> |
{"@id": "7"} | Attribut id="7" am Elternelement |
{"#text": "Hello"} | Textinhalt des Elternelements |
{"tag": ["a", "b"]} | <tag>a</tag><tag>b</tag> |
{"note": null} | <note/> |
{"2nd key": 1} | <_2nd_key>1</_2nd_key> – ungültige Namen werden korrigiert |
Array auf oberster Ebene [1, 2] | <root><item>1</item><item>2</item></root> |
&, <, > im Text | &, <, > |
JSON vs. XML
JSON kennt Arrays, Zahlen, Booleans und null; XML kennt nur Elemente, Attribute und Text, daher bleiben Typen nicht erhalten: 42 und "42" werden beide zum Text 42. XML wiederum hat Attribute, Namespaces und gemischten Inhalt, die es in JSON nicht gibt. Wenn Sie das XML später wieder in JSON umwandeln möchten, halten Sie sich an die hier verwendeten gängigen Konventionen – @ für Attribute und #text für Textinhalt –, die die meisten Konverter verstehen.
Häufig gestellte Fragen
Wie werden JSON-Arrays in XML umgewandelt?
Jeder Eintrag wird zu einem Element, das nach dem Schlüssel des Arrays benannt ist – aus {"book": [ … ]} werden also mehrere <book>-Elemente. Einträge eines Arrays auf oberster Ebene werden zu <item>-Elementen innerhalb des Wurzelelements.
Wie erzeuge ich XML-Attribute aus JSON?
Stellen Sie dem Schlüssel ein @ voran: {"user": {"@id": 7, "name": "Ada"}} wird zu <user id="7"><name>Ada</name></user>. Das Präfix können Sie in den Optionen ändern.
Was passiert mit Schlüsseln, die keine gültigen XML-Namen sind?
Zeichen, die in XML-Namen nicht vorkommen dürfen, etwa Leerzeichen, werden durch Unterstriche ersetzt, und Namen, die mit einer Ziffer oder mit „xml“ beginnen, erhalten einen Unterstrich davor: "2nd key" wird zu <_2nd_key>.
Ist das erzeugte XML gültig?
Ja. Sonderzeichen werden maskiert, jeder Elementname ist gültig, und das Dokument hat genau ein Wurzelelement – auf Wunsch mit XML-Deklaration am Anfang.