Hoja de referencia de sintaxis YAML

Referencia rápida de YAML: escalares, cadenas, listas, mapeos, texto multilínea, anclas, varios documentos y los valores que se interpretan de forma distinta a lo esperado.

Última revisión:

AdSense Placeholder
Slot: header_reference_page
En esta página

YAML es un formato de datos basado en sangrías que expresa las mismas estructuras que JSON. Los espacios marcan el anidamiento (nunca tabuladores), # inicia un comentario y todo documento JSON es también YAML válido. Comprueba cualquier archivo con el validador YAML y convierte con el conversor de YAML a JSON o el conversor de JSON a YAML. Los resultados siguientes se obtuvieron pasando los fragmentos por un analizador YAML 1.1.

Escalares

Las cadenas solo necesitan comillas cuando, de otro modo, se leerían como otro tipo o contienen caracteres especiales como : o #.

Texto YAML Interpretado como
42 42
3.14 3.14
true true
null null
~ null
"42" "42"
2026-10-27 date 2026-10-27
0o14 "0o14"

Listas y mapeos

Las listas usan - por elemento (estilo de bloque) o [a, b] (estilo de flujo). Los mapeos usan clave: valor o {k: v}. Sangra con espacios y mantén el ancho constante.

fruits:
  - apple
  - banana
  - cherry
short: [1, 2, 3]
server:
  host: localhost
  port: 8080
  tags: {env: dev, debug: true}

Parsed: {"fruits": ["apple", "banana", "cherry"], "short": [1, 2, 3]} and {"server": {"host": "localhost", "port": 8080, "tags": {"env": "dev", "debug": true}}}.

Cadenas multilínea

| conserva los saltos de línea tal como se escriben; > los pliega en espacios. El salto de línea final se conserva por defecto.

literal: |
  line one
  line two
folded: >
  line one
  line two

Parsed: {"literal": "line one\nline two\n", "folded": "line one line two\n"}.

Anclas, alias y combinación

&nombre define un ancla, *nombre la reutiliza y <<: *nombre combina un mapeo en otro. La clave de combinación la admiten muchos analizadores, pero no todos.

base: &base
  retries: 3
  timeout: 30
prod:
  <<: *base
  timeout: 60

Parsed: {"base": {"retries": 3, "timeout": 30}, "prod": {"retries": 3, "timeout": 60}}.

Varios documentos y comentarios

Separa documentos en un mismo archivo con ---; termina con ... si hace falta. Los comentarios empiezan por # y llegan hasta el final de la línea.

---
name: one
---
name: two

Trampas

Distintas versiones de YAML leen de forma diferente algunos valores simples. YAML 1.1 trata yes, no, on y off como booleanos y un cero inicial como octal; YAML 1.2 no. Entrecomilla cualquier valor que deba seguir siendo una cadena.

Valor Interpretado por un analizador YAML 1.1
no false
yes true
on true
NO false
off false
010 8
1_000 1000
1e3 "1e3"
0x1F 31
"no" "no"

Pruebe estas herramientas

Véase también

  • Comparativa JSON frente a YAML frente a XML
    JSON para API e intercambio de datos, YAML para configuración editada a mano, XML para documentos y estándares con esquemas.
  • Guía Cómo funciona JSON
    Los seis tipos de valor JSON, por qué falla el análisis, trampas con enteros grandes y orden de claves, JSONPath y conversión a TypeScript.
  • Glosario YAML
    YAML es un formato de datos legible para personas que usa sangrado en lugar de llaves, muy usado en archivos de configuración.
  • Glosario JSON
    JSON (JavaScript Object Notation) es un formato de texto ligero para datos estructurados, formado por objetos, matrices, cadenas, números.
AdSense Placeholder
Slot: footer_leaderboard