JSON-zu-XML-Konverter

Konvertieren Sie JSON-Daten in XML. @attributes wird zu Element-Attributen, #text zu Textinhalt und Arrays werden zu wiederholten Geschwisterelementen — der umgekehrte Vorgang zu unserem XML-zu-JSON-Konverter, direkt im Browser.

Tipps zur Verwendung

  • Legen Sie ein Objekt unter dem Schlüssel `@attributes` ab, und jede seiner Eigenschaften wird zu einem Attribut des konvertierten Elements.
  • Verwenden Sie einen Schlüssel `#text` für den Textinhalt eines Elements, das auch Attribute oder Kindelemente hat. Ein einfaches Element ohne Attribute kann direkt eine Zeichenkette als Wert verwenden.
  • Geben Sie demselben Schlüssel ein Array, und jedes Element wird als wiederholtes Geschwisterelement mit diesem Namen ausgegeben.
  • Ein Wert von `null` erzeugt ein leeres, selbstschließendes Tag (``) ohne Attribute, Text oder Kinder.
  • Dieses Tool erwartet eine Eingabe im Format, das unser "XML-zu-JSON-Konverter" erzeugt (ein Objekt mit dem Namen des Wurzelelements als Schlüssel, mit genau einem Schlüssel auf oberster Ebene).

Häufig gestellte Fragen

Ein Schlüssel namens `@attributes`, der ein Objekt enthält, macht jede seiner Eigenschaften zu einem Attribut des resultierenden XML-Elements. Zum Beispiel wird `{"@attributes": {"category": "fiction"}}` zu einem Attribut `category="fiction"`.

Wenn Sie demselben Schlüssel ein Array zuweisen, wird jedes Array-Element als wiederholtes Geschwisterelement mit diesem Namen ausgegeben. Zum Beispiel wird `"book": [{"title": "A"}, {"title": "B"}]` zu XML mit zwei ``-Tags konvertiert.

Die häufigste Ursache ist ein JSON-Syntaxfehler (ein fehlendes Komma oder ein Schlüssel ohne Anführungszeichen). XML erfordert außerdem genau ein Wurzelelement, sodass JSON mit mehreren Schlüsseln auf oberster Ebene oder mit einem Array als Wurzel ebenfalls fehlschlägt.

Ja, unser "XML-zu-JSON-Konverter" übernimmt die umgekehrte Richtung. Da beide Tools dieselbe Konvertierungskonvention verwenden, bleibt der Inhalt bei einer Hin- und Rückkonvertierung erhalten.

Dieses Tool geht von der Konvention des "XML-zu-JSON-Konverters" aus (`@attributes`, `#text`, Arrays und null). Frei strukturiertes JSON, das dieser Konvention nicht folgt — wie eine typische API-Antwort voller Zahlen und Booleans — lässt sich möglicherweise nicht in die erwartete XML-Struktur konvertieren.
ツールくん

Übrigens – Worauf man achten sollte, wenn man JSON zurück in XML verwandelt

Die Umwandlung von XML in JSON ähnelt einer Informationskompression. XML kann drei Arten von Informationen tragen — Attribute, Text und Kindelemente —, während JSON nur einfache Schlüssel-Wert-Paare kennt. Deshalb muss bei der Konvertierung eine Konvention gewählt werden (dieses Tool folgt denselben vier Regeln: `@attributes`, `#text`, Arrays und null). Solange diese Konvention eingehalten wird, ist die Rückumwandlung von JSON in XML ein mechanischer, eindeutig definierter Vorgang — wird aber frei strukturiertes JSON, das dieser Konvention nicht folgt, gewaltsam in XML gepresst, kann unklar bleiben, was ein Attribut und was ein Element sein soll, und das Ergebnis entspricht möglicherweise nicht den Erwartungen.

In der Praxis kommt das vor, wenn die Antwort einer veralteten XML-API zur einfacheren Verarbeitung in JavaScript zunächst in JSON umgewandelt und anschließend wieder in XML zurückverwandelt wird, um sie an ein anderes System zu senden — etwa wenn die Antwort einer SOAP-API als JSON aufbereitet und danach wieder als SOAP-artige Anfrage zurückgeschickt werden muss. Bei einer solchen Hin- und Rückkonvertierung ist es entscheidend, die Konvertierungskonvention konsistent zu halten; wird zwischendurch ein Tool mit einer anderen Konvention verwendet, kann die Zuordnung zwischen Attributen und Text durcheinandergeraten.

Dass dieses Tool strikt genau einen Schlüssel auf oberster Ebene verlangt, spiegelt eine Regel von XML selbst wider — ein Dokument muss genau ein Wurzelelement haben. Wenn Sie JSON mit mehreren Schlüsseln auf oberster Ebene konvertieren müssen, verpacken Sie es zuvor in einen gemeinsamen übergeordneten Schlüssel (z. B. `root`), und es wird sauber in XML mit einem einzigen Wurzelelement umgewandelt.