YAML erklärt + JSON vs. YAML
Aktualisiert 2026-07-06
Wenn du je eine Konfigurationsdatei für ein modernes Tool bearbeitet hast — Docker Compose, GitHub Actions, Kubernetes — hast du YAML geschrieben. Es ist als das menschenlesbarste Datenformat gedacht, aber diese Lesbarkeit bringt ein paar scharfe Kanten mit. Dieser Ratgeber erklärt, wie YAML funktioniert, welche Fallen zu beachten sind und wie es sich mit JSON vergleicht.
Was YAML ist
YAML („YAML Ain’t Markup Language“) ist ein Datenformat, das dieselben Dinge wie JSON darstellt — Schlüssel/Wert-Paare, Listen und verschachtelte Strukturen — aber mit einer Syntax, die auf das Lesen und Schreiben von Hand abgestimmt ist. Es ist die erste Wahl für Konfigurationsdateien, gerade weil es sich leicht überfliegen lässt.
name: RunWebTools active: true tags: - json - free address: city: London postcode: null
Wie die Syntax funktioniert
Drei Ideen decken das meiste von YAML ab:
- Einrückung zeigt Struktur. Verschachtelung wird mit Leerzeichen ausgedrückt, nicht mit geschweiften Klammern. Elemente auf derselben Einrückungsebene sind Geschwister.
- Schlüssel/Wert-Paare nutzen
key: value(das Leerzeichen nach dem Doppelpunkt ist Pflicht). - Listen nutzen ein führendes
-für jedes Element.
Die Fallstricke
Leerzeichen, niemals Tabs
YAML verbietet Tabulatorzeichen zur Einrückung — sie verursachen einen Parse-Fehler. Stelle deinen Editor so ein, dass er Leerzeichen einfügt, denn beide sehen auf dem Bildschirm identisch aus, aber nur eines ist gültig.
Das „Norwegen-Problem“
YAML versucht, Typen zu erraten, was gelegentlich nach hinten losgeht. Unquotierte no, yes, on und off werden zu Booleschen Werten — bekanntlich kann der Ländercode NO für Norwegen zu false werden. Wenn du eine wörtliche Zeichenkette meinst, setze sie in Anführungszeichen: "NO".
Einrückungsfehler bleiben stumm
Weil Leerraum Bedeutung trägt, kann eine einzige falsch ausgerichtete Zeile die Struktur ohne jeden Fehler verändern — die Datei wird einfach zu etwas geparst, das du nicht beabsichtigt hast. Sie durch einen YAML-Validator zu schicken, der das geparste Ergebnis neu ausgibt, ist der schnellste Weg zu sehen, was YAML tatsächlich verstanden hat.
YAML vs. JSON
Sie können dieselben Daten darstellen — tatsächlich ist jedes gültige JSON auch gültiges YAML. Die Abwägungen:
- Lesbarkeit: YAML gewinnt für Menschen — keine Klammern oder Anführungszeichen, und es unterstützt Kommentare (
#), was JSON nicht tut. - Strenge: JSON gewinnt für Maschinen — seine starre Syntax lässt kaum Raum für das Typraten und die Einrückungsüberraschungen, die YAML zulässt.
- Einsatzzweck: Greife zu YAML für Dateien, die Menschen bearbeiten (Konfiguration), und zu JSON für Daten, die Programme austauschen (APIs).
Musst du zwischen beiden wechseln? Formatiere und prüfe jedes mit dem YAML-Formatter und dem JSON-Formatter. Wenn sich YAML kniffelig anfühlt, ist unser Ratgeber zu JSON und seinen häufigen Fehlern eine gute begleitende Lektüre.
Mehr zu Datenformate & Kodierung
Alle Datenformate & Kodierung-Ratgeber ansehen →In diesem Ratgeber erwähnte Tools