RUNWEBTOOLS
Español
Formatos de datos y codificación

YAML explicado + JSON vs. YAML

Actualizado 2026-07-06

Si alguna vez has editado un archivo de configuración de una herramienta moderna — Docker Compose, GitHub Actions, Kubernetes — has escrito YAML. Está diseñado para ser el formato de datos más legible para las personas, pero esa legibilidad viene con unas cuantas aristas afiladas. Esta guía explica cómo funciona YAML, las trampas que vigilar y cómo se compara con JSON.

Qué es YAML

YAML («YAML Ain’t Markup Language») es un formato de datos para representar las mismas cosas que JSON — pares clave/valor, listas y estructuras anidadas — pero con una sintaxis pensada para que las personas la lean y escriban a mano. Es la opción por defecto para los archivos de configuración precisamente porque es fácil de ojear.

name: RunWebTools
active: true
tags:
  - json
  - free
address:
  city: London
  postcode: null

Cómo funciona la sintaxis

Tres ideas cubren la mayor parte de YAML:

  • La sangría muestra la estructura. El anidamiento se expresa con espacios, no con llaves. Los elementos con la misma sangría son hermanos.
  • Los pares clave/valor usan key: value (el espacio tras los dos puntos es obligatorio).
  • Las listas usan un - al inicio de cada elemento.

Las trampas

Espacios, nunca tabuladores

YAML prohíbe los caracteres de tabulación para la sangría — provocan un error de análisis. Configura tu editor para que inserte espacios, porque los dos se ven idénticos en pantalla pero solo uno es válido.

El «problema de Noruega»

YAML intenta adivinar los tipos, lo que de vez en cuando le sale por la culata. Sin comillas, no, yes, on y off se vuelven booleanos — es famoso que el código de país NO de Noruega puede convertirse en false. Cuando quieras una cadena literal, ponla entre comillas: "NO".

Los errores de sangría son silenciosos

Como el espacio en blanco tiene significado, una sola línea desalineada puede cambiar la estructura sin ningún error — el archivo simplemente se analiza como algo que no pretendías. Pasarlo por un validador de YAML que reemita el resultado analizado es la forma más rápida de ver qué entendió YAML realmente.

YAML vs. JSON

Pueden representar los mismos datos — de hecho, todo JSON válido es también YAML válido. Las compensaciones:

  • Legibilidad: YAML gana para las personas — sin llaves ni comillas, y admite comentarios (#), cosa que JSON no.
  • Rigor: JSON gana para las máquinas — su sintaxis rígida deja poco margen para la adivinación de tipos y las sorpresas de sangría que YAML permite.
  • Caso de uso: recurre a YAML para archivos que editan personas (configuración) y a JSON para datos que intercambian programas (APIs).

¿Necesitas pasar de uno a otro? Formatea y comprueba cualquiera con el formateador de YAML y el formateador de JSON. Si YAML se te hace quisquilloso, nuestra guía sobre JSON y sus errores comunes es una buena lectura complementaria.

Más de Formatos de datos y codificación

Ver todas las guías de Formatos de datos y codificación →

Herramientas mencionadas en esta guía