UltKit

JSON in XML umwandeln

Übergeben Sie JSON-Daten an Software, die nur XML versteht. Jeder Datensatz wird zu einem Element, jeder Schlüssel zu einem untergeordneten Tag, und das ganze Dokument steht unter einem Root-Element, dessen Namen Sie selbst wählen.

Daten-Konverter

oder CSV, TSV, TXT …-Dateien hierher ziehen ·

Max. 95 MB pro Datei· Bis zu 20 Dateien· Gelöscht nach 30 Minuten

Ausgabe

Dateien werden auf unseren Servern verarbeitet und nach 30 Minuten gelöscht.

So verwenden Sie dieses Tool

  1. 1

    JSON hochladen

    Fügen Sie eine .json-Datei hinzu, etwa eine API-Antwort, oder eine JSON-Lines-Datei. Bis zu 20 Dateien mit je 95 MB.

  2. 2

    Root-Element benennen

    Geben Sie unter Erweiterte Einstellungen im Feld XML-Wurzelelement das äußere Tag ein (voreingestellt ist rows) und lassen Sie Formatiert ausgeben für eingerückte Ausgabe aktiviert.

  3. 3

    Umwandeln und zuordnen

    Klicken Sie auf Umwandeln in XML und laden Sie die Datei herunter. Benennen Sie Tags um, wenn das Schema des empfangenden Systems andere Namen erwartet.

Warum JSON in XML umwandeln, wenn die meisten APIs auf JSON umgestiegen sind

JSON hat sich bei Web-APIs durchgesetzt; die aktuelle Spezifikation, RFC 8259 von 2017, passt auf wenige Seiten. XML ist älter, seit Februar 1998 eine W3C-Empfehlung, und ist nie aus den Bereichen verschwunden, in denen strenge Vorgaben gelten: Banking, E-Rechnung, Verlagswesen und behördliche Meldungen.

Die Richtung dieser Umwandlung folgt daher meist Geld oder Regulierung. Ein Entwickler holt Bestellungen aus einer JSON-API und muss sie an den SOAP-Dienst eines Partners senden. Ein Shop pflegt Produkte als JSON, doch das Vergleichsportal verlangt einen XML-Feed. Ein Team speichert Übersetzungen als JSON, und ein Android-Build erwartet strings.xml. Ist das Ziel stattdessen eine Tabelle, liefert JSON in CSV Zeilen statt Elemente.

Systeme, die weiterhin XML als Eingabe erwarten

Wo ein JSON-zu-XML-Konverter zum Einsatz kommt
OrganisationAnforderungQuelle
SOAP-WebservicesJede Anfrage wird als XML-Umschlag übertragen; SOAP 1.2 wurde 2003 W3C-Empfehlung—
Google Merchant CenterProdukt-Feeds werden als XML in RSS 2.0 oder Atom 1.0 sowie als Text mit Trennzeichen akzeptiert—
Peppol E-RechnungRechnungen werden als UBL-2.1-XML-Dokumente nach den Regeln von Peppol BIS Billing 3.0 ausgetauscht—
Android-AppsTextressourcen und Übersetzungen liegen in res/values/strings.xml—

Beispiel JSON in XML: zwei Produkte

XML erzeugt aus [{"sku":"A-17","price":12.5,"tags":["new","sale"]}, {"sku":"B-02","price":8}]
<?xml version="1.0" encoding="UTF-8"?>
<rows>
  <row>
    <sku>A-17</sku>
    <price>12.5</price>
    <tags>neu</tags>
    <tags>angebot</tags>
  </row>
  <row>
    <sku>B-02</sku>
    <price>8</price>
  </row>
</rows>

MythosJSON und XML lassen sich eins zu eins abbilden, die Umwandlung ist also exakt.

FaktXML kennt Attribute, gemischten Inhalt und Namensräume, die JSON fehlen, und JSON kennt Datentypen, die XML fehlen. Ein Konverter muss sich für eine Abbildung entscheiden; dieser verwendet durchgängig untergeordnete Elemente.

MythosDie Zahl 12.5 bleibt im XML eine Zahl.

FaktXML speichert Zeichen. 12.5 ist Text, bis ein Schema oder das lesende Programm sie als Dezimalzahl auffasst.

Was sich ändert, wenn JSON zu XML wird

Drei Dinge sollten Sie prüfen. Typen werden zu Text, also kommen true, null und 0 alle als Zeichen an; null wird meist zu einem leeren Element. Schlüssel, die keine gültigen XML-Namen sind, müssen umbenannt werden, da ein Tag nicht mit einer Ziffer beginnen oder ein Leerzeichen enthalten darf. Und die Ausgabe ist größer, weil jeder Wert in ein öffnendes und ein schließendes Tag eingefasst ist, die den Schlüssel wiederholen.

Mehr geht nicht verloren. Verschachtelung bleibt als verschachtelte Elemente erhalten, die Reihenfolge der Datensätze bleibt bestehen, und Unicode-Text bleibt intakt, weil die Datei in UTF-8 geschrieben wird. Weitere Optionen für strukturierte Daten, von YAML bis SQL, finden Sie auf der Seite zum Datenkonverter.

Fakten zu den Formaten JSON und XML

JSON

JavaScript Object Notation

JSON ist ein schlankes Textformat für strukturierte Daten, in den frühen 2000er-Jahren von Douglas Crockford populär gemacht und als RFC 8259 und ECMA-404 standardisiert. Es stellt Objekte, Arrays, Zeichenketten, Zahlen, Booleans und null in einfacher, lesbarer Syntax dar. Es ist das Standardformat für Web-APIs, Konfigurationsdateien und den Datenaustausch zwischen Anwendungen in nahezu allen Programmiersprachen. Kommentare, Datumstypen und Schemas sind nicht eingebaut, und große verschachtelte Dateien sind ohne Viewer schwer lesbar.

Komprimierung
–
Transparenz
–
Animation
–
Eingeführt
2001 · Douglas Crockford
JSON-Konverter

XML

Extensible Markup Language

XML ist eine Auszeichnungssprache für strukturierte Daten, die 1998 vom W3C veröffentlicht wurde. Sie verwendet verschachtelte Tags mit Attributen und unterstützt Schemata, Namensräume und Validierung, wodurch sie für komplexe Dokumente robust ist. XML liegt RSS-Feeds, SVG, Office-Dokumenten, Sitemaps und vielen Datenaustauschen in Unternehmen und Behörden zugrunde. Im Vergleich zu JSON ist XML umständlich, aber jede Programmiersprache und viele Tabellenprogramme können es lesen.

Komprimierung
–
Transparenz
–
Animation
–
Eingeführt
1998 · W3C
XML-Konverter

JSON wird in XML umgewandelt, wenn moderne Daten in eine ältere Schnittstelle müssen: einen SOAP-Endpunkt, einen Produkt-Feed, ein E-Rechnungs-Netzwerk oder eine Konfigurationsdatei, deren Empfänger Elemente statt geschweifter Klammern verarbeitet.

Häufige Fragen: JSON in XML umwandeln

Warum braucht XML ein Root-Element, wenn mein JSON mit einem Array beginnt?

Die XML-1.0-Spezifikation verlangt, dass jedes wohlgeformte Dokument genau ein Element enthält, das alles andere umschließt. Ein JSON-Array hat keine solche Hülle, deshalb ergänzt der Konverter eine, benannt nach XML-Wurzelelement, und setzt jedes Array-Element als <row> hinein.

Was passiert mit JSON-Schlüsseln wie „2024 total“ oder „unit price“?

Beides ist kein gültiger XML-Elementname: Namen dürfen nicht mit einer Ziffer beginnen und keine Leerzeichen enthalten. Benennen Sie solche Schlüssel vor dem Umwandeln im JSON um, am besten gleich in die Tag-Namen, die das Zielschema verwendet, damit die Ausgabe keine Nacharbeit braucht.

Wie wird ein JSON-Array innerhalb eines Datensatzes in XML geschrieben?

Als dasselbe Element, das pro Eintrag wiederholt wird. Ein Array tags mit drei Strings wird zu drei aufeinanderfolgenden <tags>-Elementen in einer row. Ein leeres Array hinterlässt nichts; das ist eine der wenigen Stellen, an denen bei der Umwandlung von JSON in XML Information verloren geht.

Besteht das XML die XSD-Validierung meines Partners?

Nur, wenn die Struktur bereits passt. Der Konverter erzeugt eine getreue, wohlgeformte Kopie Ihres JSON; die vorgeschriebene Elementreihenfolge, Namensräume oder Attribute eines Partners kennt er nicht. Nutzen Sie die Ausgabe als Ausgangspunkt und passen Sie sie an das Schema an.

Kann ich XML wieder in JSON umwandeln?

Verwenden Sie XML in JSON. Beim Hin- und Rückweg sind kleine Abweichungen zu erwarten: XML speichert jeden Wert als Text, daher kann eine Zahl oder ein true, das in JSON begann, als String zurückkommen.