# YAML (YAML Ain't Markup Language) Confidence: high Last verified: 2026-05-22 Generation: human_only ## TL;DR YAML is a human-readable data serialization format created by Clark Evans in 2001. It uses indentation for structure (like Python) and is the dominant configuration format for DevOps tools (Docker Compose, Kubernetes, Ansible, GitHub Actions, CI/CD pipelines). YAML v1.2.2 (2021) is the current specification. ## Key Characteristics - **Indentation-based**: No braces or brackets — whitespace defines structure - **Three basic types**: Scalars (strings, numbers, booleans), sequences (`- item`), mappings (`key: value`) - **Comments**: `#` for inline comments (unlike JSON) - **Anchors & Aliases**: `&anchor` / `*alias` for reusing values - **Multi-document**: `---` separates documents, `...` terminates ## Gotchas - Norway problem: `no` parses as `false` in YAML 1.1; fixed in 1.2 - Indentation must use spaces, not tabs - Complex YAML degrades readability quickly ## Further Reading - [YAML Spec v1.2.2](https://yaml.org/spec/1.2.2/): Current specification - [yaml.org](https://yaml.org/): Official site