XML in JSON umwandeln — Attribute, Arrays, Unicode
XML-Attribute werden zu @-Schlüsseln, wiederholte Elemente zu Arrays
Verarbeitung im Browser · kein Hochladen
Attribute werden als @name geschrieben, Text in gemischtem Inhalt als #text. Wiederholte gleichnamige Geschwisterelemente werden zu Arrays. Werte bleiben Strings. Die genaue Reihenfolge gemischter Inhalte bleibt nicht erhalten. DTDs werden nicht unterstützt.
So funktioniert es
- Fügen Sie ein XML-Dokument mit einem Wurzelelement ein.
- Prüfen Sie die Attributschlüssel und die Arrays aus wiederholten Elementen.
- Kopieren Sie das JSON in Ihre Anwendung oder Ihr Analysewerkzeug.
Abbildungsregeln
Das Wurzel-Tag bleibt als äußerer JSON-Schlüssel erhalten. Attribute erhalten das Präfix @, zum Beispiel @id. Gleichnamige Kindelemente unter einem Elternelement werden zu Arrays. Ein Element ohne Attribute und Kindelemente wird zu einem String, ein leeres Element zu einem leeren String. CDATA und die üblichen XML-Zeichenreferenzen werden als Text gelesen.
Enthält ein Element Kindelemente, wird sein direkter Text in #text gesammelt. Reine Leerraum-Formatierung um Kindelemente entfällt. Die relative Reihenfolge von Text und verschachtelten Elementen in gemischtem Inhalt bleibt nicht erhalten. Kommentare und Verarbeitungsanweisungen werden ausgelassen. Namespace-Präfixe und xmlns-Attribute behalten ihre ursprünglichen Namen, ohne namespace-bewusste Umstrukturierung.
Beispiele
<r><item>Grüße</item><item>中文😀</item></r> ergibt ein item-Array unter r. <price currency="EUR">001</price> ergibt @currency mit EUR und #text mit dem String 001.
Prüfung und Grenzen
Nicht geschlossene Tags, mehrere Wurzelelemente und unbekannte Entities führen zu einem Fehler. DTD- und Entity-Deklarationen werden nicht unterstützt. Die Eingabe ist auf eine Million Zeichen und 64 Verschachtelungsebenen begrenzt. Diese Abbildung eignet sich gut zum Sichten von Daten, ist aber keine verlustfreie XML-Serialisierung. Das Ergebnis ist reiner Text, und die gesamte Umwandlung erfolgt lokal im Browser.
Häufige Fragen
Werden Werte, die wie Zahlen aussehen, in Zahlen umgewandelt?
Nein. Elementtext und Attributwerte bleiben Strings, damit führende Nullen wie in 001 erhalten bleiben.
Bleibt die Reihenfolge bei gemischtem Inhalt erhalten?
Nein. Direkter Text wird in #text gesammelt. Die relative Position von Text und Kindelementen geht verloren.
Kann das Tool DTDs oder externe Entities laden?
Nein. DOCTYPE- und ENTITY-Deklarationen werden abgelehnt. Das Tool lädt keine externen Dokumente und expandiert keine deklarierten Entities.
Wird mein XML irgendwohin gesendet?
Nein. Die Umwandlung findet lokal im Browser statt.