YAML Tutorial - Eine Dokumentation dieses universell einsetzbaren Dateiformats in deutscher Sprache

1. Was ist YAML?

YAML ist die Abkürzung für Yet Another Markup Language.
Übersetzt also: Noch eine weitere Auszeichnungssprache.
Die Betreuer von YAML haben sie später dann in: YAML Ain’t Markup Language umbenannt.
Das heißt übersetzt: YAML ist keine Auszeichnungssprache. Man will damit die Daten orientierten Features, die YAML auszeichnen, betonen.

Was ist YAML denn nun wirklich? Aus meiner Sicht ein standardisiertes Dateiformat, mit dem man Daten in einer für Menschen gut lesbaren Form strukuriert sammeln kann, um sie dann flexibel in Anwendungen oder Programmiersprachen darstellen und/oder verarbeiten zu können.

zurück zum Inhaltsverzeichnis

2. Wo kann man YAML anwenden?

YAML kann man sehr flexibel einsetzen. YAML wird beispielsweise als Format für Konfigurationsdateien benutzt. Verschiedene Datenbanken können dieses Dateiformat verarbeiten und viele Programmiersprachen unterstützen YAML.
Außerdem unterstützen viele Content Management Systeme und Static Website Generatoren YAML. Das ist der Hauptgrund, warum ich diesem Dateiformat eine extra HTML Seite widme.
Die Referenzseite zu YAML ist zwar sehr umfangreich aber für Einsteiger in YAML abschreckend. Wenn man die aufgerufen hat, wird man sie nach kurzer Zeit wahrscheinlich wieder verlassen und sich vorläufig nicht mehr mit YAML befassen, was sehr schade ist.

YAML ist nämlich ein einfaches Dateiformat, mit dem man sich, nachdem man sich in die Materie eingearbeitet hat, auf lange Sicht sehr viel Arbeit ersparen kann und mit dem man (nicht nur!) in Kombination mit Programmiersprachen sehr flexibel Daten auf Websites darstellen kann, was ohne YAML nicht oder sehr viel komplizierter erreichbar wäre.

Man muss sich nicht mit YAML beschäftigen, wenn man eine Website erstellen will oder betreibt. Und man muss sich schon gar nicht in jedes Detail von YAML einarbeiten.
Aber man sollte meines Erachtens wissen, was man mit YAML alles machen kann. Wenn man ein paar Grundkenntnisse darüber hat, werden einem schnell verschiedene Anwendungsmöglichkeiten für die eigene Website einfallen, die einem das Leben sehr viel einfacher machen können.

zurück zum Inhaltsverzeichnis

2.1 Welche Content Management Systeme unterstützen YAML?

Unter anderem:

Hugo (Static Site Generator)
Jekyll (Static Site Generator)

zurück zum Inhaltsverzeichnis

2.2 Welche Programmiersprachen unterstützen YAML?

Unter anderem:

ActionScript
C
C++
Java
JavaScript
Perl
PHP
Python
R
Ruby
.NET-Plattform

zurück zum Inhaltsverzeichnis

3. Die Syntax von YAML

YAML Dateien sind normale Textdateien. Die Dateiendung ist: ".yml"
Jede Datei beginnt mit 3 Bindestrichen. Damit wird der Beginn eines neuen YAML Dokuments signalisiert.

---
vorname: Max
nachname: Mustermann
zahl: 2
pi: 3.14159
ostern: true

YAML Dateien sind meistens als Schlüssel/Wert Paare aufgebaut.
In Zeile 2 des obigen Beispiels ist vorname der Schlüssel der auf den Wert Max zeigt. Analog zeigt in Zeile 4 der Schlüssel zahl auf den Wert 2.

YAML unterstützt 4 Datentypen:

  1. Strings (Zeile 2 und 3)
  2. Ganzzahlen (Zeile 4)
  3. Fließkommazahlen (Zeile 5)
  4. Boolean (Zeile 6)

Zu 1.: Strings können in doppelten Anführungszeichen " " oder einfachen Anführungszeichen ' ' oder ohne Anführungszeichen stehen.
Wenn das verarbeitende Programm eine Fehlermeldung ausgibt, sollte man mit den verfügbaren Optionen experimentieren.

Zu 2. und 3.: Ganzzahlige Ziffern und Dezimalzahlen die nicht in Anführungszeichen stehen, werden automatisch als Ganzzahlen oder Fließkommazahlen erkannt.

Zu 4.: Der Datentyp boolean kann nur den Wert true oder false annehmen. Insofern wird auch er automatisch erkannt.

zurück zum Inhaltsverzeichnis

3.1 Arrays

---
vogelarten:
  - Adler
  - Geier
  - Meise
  - Spatz

In dem obigen Beispiel wird ein Array in YAML dargestellt.
Das Array vogelarten enthält die 4 gelisteten Werte.
Die Werte eines Arrays beginnen immer mit Einrückungen. Oben sind es 2 Leerzeichen.
Wichtig: Als Einrückungen sind keine Tabulatoren erlaubt!
Die Werte beginnen alle mit einem Bindestrich.

zurück zum Inhaltsverzeichnis


Die Datei wurde zuletzt aktualisiert am: 16.01.2023