Von XML zu JSON – warum konvertieren?
XML und JSON sind die beiden dominanten Formate für strukturierte Daten. Während XML lange Zeit der Standard für Webservices, Konfigurationen und Datenaustausch war, hat JSON in modernen Anwendungen die Führung übernommen. JSON ist kompakter, benötigt weniger Bandbreite und wird von JavaScript nativ unterstützt. Die Konvertierung von XML zu JSON ist daher ein häufiger Schritt bei der Modernisierung von Legacy-Systemen, der Integration alter SOAP-APIs in REST-Architekturen oder der Migration von Konfigurationsdateien.
Wie die Konvertierung funktioniert
XML-Elemente werden zu JSON-Objekten, wobei der Elementname zum Schlüssel wird. Textinhalt wird als Wert gespeichert. Verschachtelte Elemente erzeugen verschachtelte Objekte. Attribute erhalten typischerweise ein @-Präfix zur Unterscheidung vom Elementinhalt. Wiederholte Elemente auf derselben Ebene werden automatisch zu Arrays zusammengefasst – ein wichtiger Unterschied, da JSON zwischen einzelnen Werten und Arrays unterscheidet, XML jedoch nicht. Namespaces und XML-Kommentare werden bei der Konvertierung meist ignoriert, da JSON diese Konzepte nicht kennt.
Herausforderungen bei der Konvertierung
Die Umwandlung ist nicht immer verlustfrei. XML unterscheidet zwischen Elementen und Attributen – beides muss in JSON-Eigenschaften abgebildet werden. Gemischter Inhalt (Text und Elemente gemischt) ist in JSON schwer darstellbar. Die Reihenfolge von Elementen, die in XML signifikant sein kann, geht in JSON-Objekten verloren. Auch die Unterscheidung zwischen einem einzelnen Element und einem Array mit einem Element ist problematisch, wenn man später zurück zu XML konvertieren möchte. Für einfache Datenstrukturen funktioniert die Konvertierung jedoch zuverlässig.
Praktische Anwendungsfälle
API-Migration: Alte SOAP-Webservices liefern XML, moderne Frontends erwarten JSON. RSS-Feed-Verarbeitung: Feed-Daten im XML-Format für JavaScript-Anwendungen aufbereiten. Konfigurationsmodernisierung: XML-Configs in das besser lesbare JSON-Format überführen. Datenanalyse: XML-Exporte aus Enterprise-Systemen für JSON-basierte Analysetools konvertieren. Legacy-Integration: Alte XML-Schnittstellen an moderne Microservices anbinden, die JSON sprechen.