2026-09-29 · 5 Min. Lesezeit
JSON vs. YAML vs. XML: Syntax, Einsatzgebiete und Konvertierung
JSON, YAML und XML können dieselben Daten beschreiben, doch jedes Format hat seine Stärken an anderer Stelle. Vergleichen Sie die Syntax direkt, sehen Sie typische Einsatzgebiete und vermeiden Sie Fallstricke beim Konvertieren.
JSON, YAML und XML sind Klartextformate für strukturierte Daten. Mit denselben Informationen beschreiben alle drei sie korrekt, doch in der Praxis hat jedes sein eigenes Revier gefunden: JSON in APIs, YAML in Konfigurationsdateien, XML in Dokumenten und Unternehmenssystemen. Wer die Gründe kennt, wählt das passende Format und erlebt beim Konvertieren keine Überraschungen.
Dieselben Daten in drei Formaten
Hier ist die Definition eines kleinen Dienstes, auf drei Arten geschrieben. Zuerst JSON:
{
"service": "web",
"port": 8080,
"debug": false,
"tags": ["api", "public"]
}
Dasselbe in YAML:
# web service
service: web
port: 8080
debug: false
tags:
- api
- public
Und in XML:
<?xml version="1.0" encoding="UTF-8"?>
<service name="web">
<port>8080</port>
<debug>false</debug>
<tags>
<tag>api</tag>
<tag>public</tag>
</tags>
</service>
Einige Unterschiede fallen sofort auf:
- JSON verwendet geschweifte und eckige Klammern sowie Anführungszeichen. Es ist streng: keine Kommentare, keine abschließenden Kommas, Schlüssel immer in doppelten Anführungszeichen.
- YAML setzt auf Einrückung statt Klammern und erlaubt Kommentare mit
#. Es ist am kompaktesten und auf einen Blick am leichtesten zu lesen. - XML umschließt jeden Wert mit öffnenden und schließenden Tags und kann Elementen Attribute zuweisen (
name="web"). Es ist am ausführlichsten, aber auch am ausdrucksstärksten.
JSON: die Sprache der APIs
JSON entspricht direkt den Objekten und Arrays fast jeder Programmiersprache und wurde deshalb zum Standardformat von Web-APIs. Parser sind schnell, in Browser und Standardbibliotheken eingebaut, und die Grammatik ist so klein, dass es kaum Möglichkeiten gibt, ein Dokument falsch zu interpretieren.
Diese Strenge ist ein Vorteil für Maschinen und ein kleines Ärgernis für Menschen. Sie können keinen Kommentar hinterlassen, der eine Einstellung erklärt, und ein einziges fehlendes Komma macht die ganze Datei ungültig. Deshalb funktioniert JSON am besten, wenn Software es schreibt und Software es liest: API-Antworten, Logs, Datenexporte, package.json.
YAML: Konfiguration, von Menschen geschrieben
YAML wurde dafür entworfen, von Menschen geschrieben und geprüft zu werden. Genau deshalb haben sich so viele DevOps-Tools dafür entschieden: Kubernetes-Manifeste, GitHub Actions-Workflows und Docker Compose-Dateien sind YAML. Kommentare, mehrzeilige Strings und der Verzicht auf Satzzeichen machen lange Konfigurationsdateien angenehm wartbar.
Der Preis sind Feinheiten. Die Einrückung ist bedeutungstragend, ein falsch gesetztes Leerzeichen ändert also die Struktur. Außerdem errät YAML die Typen von Werten ohne Anführungszeichen, was zu seinen berühmtesten Fallen führt:
country: NO # YAML 1.1: false
version: 1.10 # 1.1 (number)
zip: 01234 # 1234 or octal
Nach den Regeln von YAML 1.1, die viele Parser noch anwenden, werden NO, yes, on und off zu Booleans. Zahlen verlieren nachgestellte Nullen, und führende Nullen können als Oktalzahl gelesen werden. Die Lösung ist einfach: Setzen Sie alles in Anführungszeichen, was ein String bleiben muss.
country: "NO"
version: "1.10"
zip: "01234"
XML: Dokumente, Schemas und Unternehmens-Feeds
XML ist älter als die beiden anderen und bringt Funktionen mit, die ihnen fehlen: Namespaces, um Vokabulare zu mischen, Schemas (XSD), um die Struktur streng zu validieren, Attribute und gemischte Inhalte, in denen sich Text und Tags abwechseln. Damit eignet es sich besonders für Dokumente und für Systeme, in denen ein formaler Vertrag zählt: RSS- und Atom-Feeds, SOAP-Dienste, Rechnungs- und Bankstandards, SVG-Grafiken, Mavens pom.xml und die Dateien im Inneren einer DOCX oder XLSX.
Wenn Sie etwas Neues bauen und nur Daten austauschen müssen, ist XML selten die erste Wahl. Sie werden es aber weiterhin von Partnern, Altsystemen und öffentlichen Datenquellen erhalten, daher ist es eine sehr praktische Fähigkeit, es in JSON umzuwandeln.
Schnellvergleich
- Lesbarkeit: YAML > JSON > XML.
- Strenge und Vorhersagbarkeit: JSON und XML sind eindeutig; YAML hängt von Einrückung und Typerkennung ab.
- Kommentare: YAML und XML ja, JSON nein.
- Validierung: XML hat die ausgereiftesten Schema-Werkzeuge; JSON Schema ist weit verbreitet; YAML wird meist ebenfalls per JSON Schema validiert.
- Typisches Revier: JSON für APIs und Daten, YAML für Konfiguration, XML für Dokumente und Unternehmensintegration.
Konvertieren: worauf Sie achten sollten
Da alle drei Datenbäume beschreiben, ist die Konvertierung meist unkompliziert. Einige Details sollten Sie trotzdem kennen:
- Von YAML nach JSON gehen Kommentare verloren. JSON hat keinen Platz dafür. Anker und Aliase (
&und*) werden zu gewöhnlichen Kopien aufgelöst. - Von JSON nach YAML geht nichts verloren. Jedes gültige JSON lässt sich in YAML ausdrücken; in YAML 1.2 ist JSON nahezu eine Teilmenge von YAML.
- XML-Attribute brauchen eine Konvention. JSON kennt keine Attribute, daher speichern Konverter sie als normale Schlüssel, oft mit einem Präfix wie
@. Prüfen Sie das Ergebnis, bevor Sie es an ein anderes Programm weitergeben. - Einzelnes Element oder Liste. In XML sehen ein
<tag>und drei<tag>-Elemente gleich aus. In JSON wird das eine womöglich zum Objekt, das andere zum Array, daher sollte der verarbeitende Code beide Fälle abdecken. - In XML ist alles Text.
8080undfalsesind nur Zeichen zwischen Tags; beim Weg von XML nach JSON müssen Sie sie eventuell wieder in Zahl oder Boolean umwandeln. - Von JSON nach XML braucht es genau ein Wurzelelement und Schlüssel, die gültige Elementnamen sind (keine Leerzeichen, nicht mit einer Ziffer beginnend).
Im Browser konvertieren
Die Datenkonverter von Azpy laufen vollständig in Ihrem Browser: Fügen Sie Ihren Text ein oder ziehen Sie eine Datei hinein, und das Ergebnis erscheint sofort, ohne dass etwas hochgeladen wird. So können Sie sie bedenkenlos für Konfigurationsdateien mit internen Hostnamen oder API-Antworten mit Kundendaten nutzen. JSON in YAML, YAML in JSON, XML in JSON und JSON in XML finden Sie unter den Tools.
Eine Faustregel
Maschinen, die mit Maschinen sprechen → JSON. Menschen, die Konfiguration bearbeiten → YAML, mit Anführungszeichen um alles Mehrdeutige. Dokumente, strenge Schemas oder ein bestehender Unternehmensvertrag → XML. Und wenn Ihr Format nicht das ist, das Sie brauchen: konvertieren Sie es und prüfen Sie die oben genannten Sonderfälle.
Verwandte Tools
Verwandte Beiträge
Machen Sie aus einem gescannten PDF durchsuchbaren Text mit OCR, im Browser und ohne Upload. Schritte, Tipps für Genauigkeit und was zu prüfen ist.
JPG-, PNG- oder iPhone-HEIC-Fotos in ein PDF umwandeln: Seitenformat, Ausrichtung, Qualität und Dateigröße, Scan-Tipps und Komprimierung.