YAML Ain't Markup Language (YAML 1.2)
YAML configs power most DevOps tooling. Anchor/alias and implicit typing cause subtle bugs — know why `countries: [NO, US]` parses as `[false, null]` in YAML 1.1.
What It Defines
Human-readable structured text format: indentation-based maps/lists, anchors/aliases, explicit typing tags, and multiple scalar styles. Superset of JSON (JSON is YAML 1.2 subset). Common for config (Kubernetes, CI, Docker Compose) and OpenAPI alternatives.
Canonical (Normative)
Convenient (Practical)
Maintains the YAML specification — a human-friendly structured text format widely used for configuration files, CI/CD pipelines, and Kubernetes manifests. YAML 1.2 is a superset of JSON.
Related Specs
JSON is the lingua franca of web APIs. RFC 8259 is short and worth reading once — it clarifies edge cases around numbers, encoding, and trailing commas.
XML remains embedded in enterprise integrations, document formats, and legacy APIs. Namespaces, entity expansion (XXE), and DTD processing are security-critical in parsers.
OpenAPI is the de-facto standard for API documentation, code generation, mock servers, and contract testing. Most APIs you build should have an OpenAPI spec.