¿Qué es YAML? Definición | No es lenguaje de marcado

Los lenguajes de marcado como YAML o HTML dan a los datos una estructura. Sin embargo, al igual que JSON, YAML se usa principalmente para almacenar datos en un formato legible por humanos. YAML se diferencia de XML en su enfoque ligero sin compatibilidad SGML.

YAML originalmente significaba «Yet Another Markup Language«, pero ha sido el acrónimo recursivo «YAML Ain’t Markup Language» desde 2002. Así, YAML se define a sí mismo como un lenguaje de marcado que no es un lenguaje, que en última instancia indica el objetivo.

YAML quiere proporcionar un formato para la serialización de datos. El término «marcado», que proviene de la industria de la impresión, implica un formato de presentación de texto visible, como el que ofrece HTML. Las dos áreas de aplicación también se superponen con otros representantes del género.

Sin duda, existen soluciones que cubren específicamente ambas áreas. Por ejemplo, XML puede, en principio, reemplazar tanto a HTML como a YAML. El principal argumento a favor de YAML es la delgadez de la solución, que también elimina las restricciones que resultan en XML de la amplia gama de aplicaciones o el objetivo de mantener la compatibilidad con SGML. El principal competidor de YAML no es XML sino JSON.

Leer: ¿Qué es VBA?

¿YAML o JSON?

La «Notación de objetos JavaScript», o JSON para abreviar, es un formato para la serialización de datos que provienen del entorno de aplicaciones web. Por tanto, ambos formatos ofrecen funcionalidades muy similares. YAML ha sido un superconjunto de JSON desde la versión 1.2, por lo que puede reemplazar directamente el otro formato en todas las aplicaciones.

La principal diferencia está en el establecimiento de objetivos. Si bien los datos formateados con YAML deben ser lo más fáciles de leer posible no solo para las máquinas sino también para las personas, JSON valora mucho la simplicidad de la aplicación.

¿Cómo funciona YAML?

YAML convierte los datos de un formulario interno del programa para que se puedan guardar como un archivo de texto. Para que esto también sea posible para tipos de datos complejos, como matrices bidimensionales o multidimensionales, los elementos se emiten uno tras otro, de ahí el nombre serialización.

YAML hace visible la estructura jerárquica como el lenguaje de programación Python al sangrarla con espacios, pero también usa corchetes y corchetes. YAML no permite pestañas porque su interpretación no es clara y es manejada de manera diferente por diferentes programas.

Leer: ¿Qué es HELM?

¿Cuál es el propósito de YAML?

Cuál es el propósito de YAML
Cuál es el propósito de YAML

Por un lado, la serialización de datos se puede utilizar para mantener el estado de un programa durante varias ejecuciones del programa. De esta manera, YAML se usa a menudo para almacenar la configuración en tiempo de ejecución en archivos de configuración. La segunda aplicación principal es la transferencia de datos entre sistemas informáticos que están conectados entre sí a través de una red.

¿Qué datos puede procesar YAML?

YAML admite de forma nativa un conjunto de tipos de datos que también utiliza el lenguaje de programación Perl, como:

  • Escalares: números, cadenas
  • Listas: matrices unidimensionales, aunque son posibles matrices multidimensionales, ya que los elementos de la lista también pueden ser listas.
  • matrices asociativas: también llamadas tablas hash o diccionarios

Esto significa que se pueden mapear todos los tipos de datos básicos que se pueden encontrar en los diferentes lenguajes de programación. YAML también admite tipos de datos definidos por el usuario.

Transferir varios registros de datos juntos

Con una sintaxis que se toma prestada de la especificación MIME (RFC 2045) que se usa comúnmente para correo electrónico, YAML permite combinar varios registros de datos. Esto está menos destinado al almacenamiento en un archivo, aunque también puede ser útil aquí, pero más para la transmisión como un flujo de datos en la red.

Deja un comentario