Está en la página 1de 10

Tema:

Historia de YAML, XML y JSON

Materia:
Automatización de Infraestructura Digital I

Maestro:
Michel Orozco Carrera

Alumno:
13350 – Yonathan Hernández Guzmán

Programa Educativo:
Ingeniería en Redes Inteligentes y Ciberseguridad

Modalidad, grado y grupo:


V-S_9°A
YAML
YAML es un formato de serialización de datos que significa YAML no es lenguaje de marcado. La
principal ventaja de usar YAML es la legibilidad y la capacidad de escritura. Si tiene un archivo de
configuración que debe ser más fácil de leer para los humanos, es mejor usar YAML. YAML no es una
sustitución completa de JSON ya que JSON y XML también tienen su lugar; sin embargo, es útil
aprender YAML. Otro beneficio de YAML es que admite varios tipos de datos como casos, matrices,
diccionarios, listas y escalares. Tiene un buen soporte para los lenguajes más populares como
JavaScript, Python, Ruby, Java, etc.

➢ YAML solo admite espacios, y distingue entre mayúsculas y minúsculas y


espacio.
➢ Las pestañas no se aceptan universalmente.  Un archivo YAML tiene. yaml
extensión.
Sintaxis básica de YAML

Cada YAML comienza con --- que denota el inicio de un archivo YAML.

Cuando usamos una API, estamos interesados en una función proporcionada por YAML conocida como
mapeo.

Los siguientes ejemplos muestran el ejemplo de mapeo en YAML.

Tipos de datos
El primer tipo de datos es un booleano, donde puede tener dos valores: verdadero o falso. El valor de
GPA es de punto flotante. YAML también admite el tipo de datos nulo como tenemos para "Cuestiones".
El valor de "Nombre” Es una cadena que debe estar entre comillas simples o dobles. YAML también
admite cadenas de líneas múltiples y cadenas de líneas múltiples como una sola para facilitar la lectura.

XML

El XML proviene de un lenguaje que inventó IBM en los años 70. El lenguaje de IBM se llama GML
(General Markup Language) y surgió por la necesidad que tenían en la empresa de almacenar grandes
cantidades de información de temas diversos. Necesitaban una manera de guardar la información y
los expertos de IBM se inventaron GML, un lenguaje con el que poder clasificarlo todo y escribir
cualquier documento para que se pueda luego procesar adecuadamente.

XML es un lenguaje de marcado sencillo similar al HTML. Su objetivo es facilitar la representación,


almacenamiento y trasmisión de información varia por parte de aplicaciones informáticas,
computadoras y medios de comunicación digital en general. XML no es un lenguaje en particular, sino
que sirve de marco para definir lenguajes para diferentes necesidades. Algunos ejemplos son XHTML,
XSLT, SOAP. Consiste en un conjunto de reglas para representar información en una forma fácilmente
procesable por un ordenador. Su diseño persigue enfatizar la simplicidad y usabilidad a través de
Internet. Su formato es basado en caracteres de texto con soporte para todos los idiomas.
Originalmente diseñado para afrontar el reto que representa la publicación de información electrónica
a gran escala, XML ha jugado un gran papel en el intercambio de información en la Web y otras esferas.
XML comenzó a desarrollarse a fines de 1996 a instancias del World Wide Web Consortium, con la
intención de crear un estándar en el lenguaje de marcas que permitiera integrar la simplicidad que
ofrece el HTML y las posibilidades de expresión del GML (Generalized Markup Language), desarrollado
por Internacional Bussiness Machine IBM a fines de los años 60 y principios de los 70. La superación
de las dificultades que tenía el uso del HTML en lo referido a la mezcla de los estilos que se aplican,
las limitaciones al compartir la información con dispositivos (ordenadores o teléfonos móviles) y la
presentación en pantalla la información en dependencia del navegador o visor utilizado, fueron las
principales consideraciones que impulsaban este nuevo estándar. Los antecedentes se encuentran en
el GML que permitía guardar grandes volúmenes de información junto a la posibilidad de clasificar y
escribir cualquier documento para procesarlo posteriormente de manera requerida. La directiva de ISO,
encargada de las normas a nivel global, se interesó en el nuevo lenguaje y en 1986 presentaron el
SGML (Standard Generalized Markup Language), que estableció una definición de los estándares del
lenguaje, sin embargo, aún resultaba un freno en el desarrollo de la distribución de la información sin
las limitaciones que implica el formato en un documento.

Con el XML se pretendía la distinción del contenido y la estructura de los documentos para su
presentación en papel o en pantalla, lo esencial era mostrar de manera explícita la estructura y los
contenidos informativos, así como la creación de documentos que pudieran ser intercambiados y
procesados con facilidad en sistemas informáticos heterogéneos. XML se ha aceptado como facilitador
de la gestión, también se utiliza en la recuperación, el intercambio y la codificación de contenidos y
metadatos. La lista de iniciativas puestas en práctica es vasta, y aunque no todas han logrado nivel de
aceptación, existen numerosos ejemplos de la aplicación exitosa de este lenguaje en los ámbitos
académicos, empresariales e institucionales. Desde 2004 se han mostrado nuevas propuestas e
iniciativas relacionadas con el uso del lenguaje y se ha visto como algunas de sus especificaciones
maduran continuamente hasta solidificarse. Continuamente ven la luz versiones de aplicaciones
informáticas destinadas a trabajar con XML, así como el diseño de nuevos vocabularios o la adopción
del lenguaje en distintos ámbitos de trabajo. Este proceso se muestra en la publicación definitiva de la
primera versión del vocabulario Universal Business Language (UBL) para el intercambio de
documentos comerciales, el desarrollo del vocabulario DITA (Darwin Information Typing Architecture)
por OASIS para la codificación y reutilización de documentación técnica; y el lanzamiento de nuevas
versiones de programas informáticos como DB XML de Sleepycat Software, Astoria 4.3 o la adquisición
de Advent Publishing por parte de Arbortext, son una muestra del auge que ha alcanzado la utilización
del XML en el mundo de las ciencias de la información.
A partir del año 2005 creció el interés en las especificaciones orientadas a la integración de aplicaciones
informáticas mediante el intercambio de datos a través de los servicios de la web, de ahí las utilidades
en tal sentido que presenta el Tom Cat y el Eclipse, para dar salida a documentos cuya base sea el
XML. Un documento XML consiste en etiquetas organizadas de formas jerárquicas. Cada etiqueta
representa una entidad y su ámbito se extiende hasta que se encuentra la etiqueta complementaria
que lo cierra. Cada etiqueta es una marca hecha en el documento, que señala una porción de éste
como un elemento. Un pedazo de información con un sentido definido. Las etiquetas tienen la forma
<nombre>, donde nombre es el nombre del elemento que se está señalando.

Ejemplo:

<?xml version="1.0" encoding="UTF-8" ?>


<Mensaje>
<Remitente>
<Nombre>Nombre del remitente</Nombre>
<Mail> Correo del remitente </Mail>
</Remitente>
<Destinatario>
<Nombre>Nombre del destinatario</Nombre>
<Mail>Correo del destinatario</Mail>
</Destinatario>
<Texto>
<Asunto>
Este es mi documento con una estructura muy sencilla
no contiene atributos ni entidades...
</Asunto>
<Parrafo>
Este es mi documento con una estructura muy sencilla
no contiene atributos ni entidades...
</Parrafo>
</Texto>
</Mensaje>

JSON
JSON (JavaScript Object Notation) es un formato de texto pensado para el intercambio de datos. Su
sintaxis está basada originalmente en la sintaxis de JavaScript, pero realmente es independiente de
cualquier lenguaje de programación. El formato JSON fue definido por Douglas Crockford a finales de
2002 y dado a conocer a través de su página web http://json.org/. Esta página contenía la definición
del formato y una implementación en Java. En poco tiempo el uso del formato se extendió y aparecieron
implementaciones para todos los lenguajes de programación. El motivo de su éxito es su sencillez y
facilidad de uso. El formato JSON se ha publicado además en forma de norma, tanto por la IETF como
por ECMA, que también han definido otros formatos derivados como I-JSON.

Sintaxis de JSON

Las reglas sintácticas de JSON son bastante sencillas:

➢ En JSON existen dos tipos de elementos


➢ Matrices (arrays): Las matrices son listas de valores separados por
comas. Las matrices se escriben entre corchetes [ ]

➢ objetos (objects). Los objetos son listas de parejas nombre / valor. El nombre y el valor están
separados por dos puntos: y las parejas están separadas por comas. Los objetos se escriben
entre llaves { } y los nombres de las parejas se escriben siempre entre comillas dobles.

➢ Un documento JSON está formado por un único elemento (un objeto o una matriz).
➢ Los espacios en blanco y los saltos de línea no son significativos, es decir, puede haber
cualquier número de espacios en blanco o saltos de línea separando cualquier elemento o
símbolo del documento.

Los valores (tanto en los objetos como en las matrices) pueden ser:

➢ Números: enteros, decimales o en notación exponencial. El separador decimal es el punto ., un


número negativo empieza por el signo menos - y el indicador de la notación exponencial es e o
E. Los números positivos no pueden empezar por el signo +, los números no pueden empezar
por varios ceros o por un cero seguido de otra cifra.
➢ Cadenas. Las cadenas se escriben entre comillas dobles. Los caracteres especiales y los
valores Unicode se escriben con una contrabarra \ delante. Los caracteres que deben escribirse
siempre como caracteres especiales son \" (comillas), \\ (contrabarra), \b (retroceso), \f (salto
de página), \n (salto de línea), \r (retorno de carro), \t (tabulador) y los caracteres unicode (\u...).
El carácter / (barra) puede escribirse como carácter / o como carácter especial \/ (suele ser
necesario cuando el contenido es código html y la barra indica un cierre de etiquetas).
➢ Los valores true, false y null. Estos valores se escriben sin comillas.
➢ Objetos y matrices. Puede haber objetos y matrices dentro de objetos y de matrices, sin límite
de anidamiento. o Los ficheros JSON no pueden contener comentarios.
JSON se utiliza cada vez más en la web como sintaxis para usos concretos.

SON-RPC: JSON Remote Procedure Call

En informática, los procedimientos remotos son una característica de los sistemas distribuidos. En un
programa está distribuido entre varios ordenadores, los procedimientos remotos permiten que una
parte del programa ejecute otra parte del programa situada en otro ordenador de forma transparente,
es decir, sin que el programador se tenga que preocupar de dónde está situada cada parte. En general,
cuando que un programa solicita información a otro programa situado en otro ordenador podemos decir
que se trata de una llamada a un procedimiento remoto, aunque los dos programas sean
completamente independientes. JSON-RPC es un formato para el intercambio de información entre
dos programas. Utiliza la notación JSON y define una estructura y unos campos mínimos útiles para
dar formato tanto a la petición como a la respuesta.

Existen dos versiones de JSON-RPC, pero se recomienda utilizar la segunda versión:

➢ 2005: JSON-RPC 1.0. Reemplazada por JSON-RPC 2.0 en marzo de 2010.


➢ marzo de 2010: JSON-RPC 2.0

Una llamada RPC tiene que seguir la sintaxis de JSON y contener los siguientes campos:

➢ jsonrpc: una cadena que indica la versión ("2.0") o method: una cadena que indica el método
invocado. o params: (optativo) una matriz o una lista de valores o id: un número o cadena
establecido por el cliente

Si una llamada no incluye identificador id, se considera que es una notificación y no requiere respuesta,
ni siquiera en caso de error.

La respuesta RPC tiene que seguir también la sintaxis de JSON y contener los siguientes campos: o
jsonrpc: una cadena que indica la versión ("2.0") uno de estos dos campos:
➢ result: (optativo) el resultado de la consulta, en forma de valor, matriz o lista. o error: (optativo)
una matriz o una lista de errores, con la estructura siguiente: o code: código de error (número
entero) o message: descripción breve del error
➢ data: (optativo) matriz o lista de valores con información adicional sobre el error
➢ id: el número o cadena establecido por el cliente

Una llamada JSON-RPC puede contener varias peticiones en forma de matriz y se debe contestar con
una matriz de respuestas (salvo que todas las llamadas sean notificaciones, en cuyo caso no habría
respuesta).

Conclusión

Si lo que queremos es un formato con un tiempo de vida corto, da igual lo que usemos. En este caso
podemos estar usando Java y JSP, que trabajan cómodamente con JSON, por lo que podría ser el más
adecuado. Para definir un protocolo entre dos aplicaciones, JSON puede no ser el más adecuado,
dejando el caso para XML. Estos protocolos suelen ir evolucionando con el tiempo, y es más difícil
mantener esta compatibilidad con JSON que con XML. A la hora de generar informes puede ser
interesante utilizar YAML debido a su sencillez, pero resulta muy sencillo equivocarse al editar este
formato. Si queremos configurar una aplicación, me decanto por los INIs o Properties. En mi opinión, me
decantaré por los properties en todos los casos por las siguientes razones:
• Son unívocos. Una clave sólo aparece una vez.

• Se pueden agrupar mediante parte del nombre.

• Son rápidos de entender por la máquina.

• Son sencillos de editar.

• No dependen de ningún orden.

• Internamente, manejar un INI requiere una lista de hashes, mientras que un properties puede
representarse óptimamente como un único hash.

Sin embargo, el formato INI está mucho más extendido actualmente. Pero lo más importante de todo
esto es: No inventéis formatos raros. Nada de guardar en binario ni cosas por el estilo. Sed compatibles.
Y si no queréis serlo, cifradlo, o utilizad una base de datos embebible.

Referencia

https://magmax.org/blog/formatos-simples/

También podría gustarte