SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
Intercambio de Datos en Paginas
             Web

               XML
               JSON
               YAML


              Jose Luis Rodriguez Roldan
XML

 Introducción a XML
 El Lenguaje XML
 Estructura de XML
 XML bien formado y valido
Introducción a XML

 XML   (Extensible Markup Language) es un
 metalenguaje que fue diseñado básicamente
 para estructurar, almacenar e intercambiar
 datos entre diferentes aplicaciones. Es un
 estándar, ya que es extensible y puede ser
 utilizado por cualquier aplicación
 independientemente de la plataforma.
El Lenguaje XML es
   Simple - La especificación completa mide menos de 30 cuartillas. XML
    ha sido diseñado para facilitar aún más la escritura de programas con
    respecto a HTML o SGML.
   Extensible - Cada quien puede inventar sus propias etiquetas para
    marcar cual quier tipo de documento, y ser éstas compartidas. De hecho,
    XML es un metalenguaje que le permite al usuario definir su propio
    lenguaje de marcado.
   Un estándar abierto - XML es SGML. Ello significa que no es necesario
    saber programar; existen muchas herramientas eficientes que permiten
    ya sea crearlo, manejarlo o implantarlo en una computadora y distribuirlo.
   Eficiente - XML tiene entes interconstruidos para reutilizar fragmentos de
    documentos, así, estos sólo tienen que ser transmitidos una vez.
   Basado en la experiencia - XML ha sido diseñado por personas que
    tienen amplia experiencia en los len guajes de marcado y han
    capitalizado las enseñanzas que el uso de ellos les ha su ministrado a lo
    largo de los años.
   Consensuado - El diseño de XML incluye los puntos de vista de los
    organismos coordinadores de HTML y SGML, así como los de personas
    que han desarrollado importantes aplicaciones con es tos estándares.
El Lenguaje XML es
   Libre - Nadie tiene la propiedad o patente de XML, ni podrá tenerla, ya
    que tanto SGML como XML han sido definidos como estándares
    internacionales. Por lo mismo su uso o desarrollo no implica el pago de
    ninguna regalía.
   Internacional - XML tiene interconstruido un soporte para textos en
    prácticamente todos los alfabetos del mundo, incluyendo técnicas para
    consignar el lenguaje y/o código del alfabeto utilizado.
   Listo para ser usado - Los “browsers” o navegadores de la web, son
    capaces de leer especificaciones XML. Los hipervínculos, textos y
    multimedios pueden ser vistos tal como si fuere un documento HTML.
   Manejable - XML incluye métodos para declarar y reforzar las
    estructuras documentales usadas actualmente, como las de bases de
    datos.
   Validable - XML tiene técnicas que permiten la validación de los
    documentos involucrados, así que uno puede estar seguro de que los
    documentos registrados con él son crea dos correctamente.
Estructura de XML




   1.- Prologo.
   2.- Elementos o Elemento Raíz
   3.- Epilogo (opcional)
Prologo


   Especifica que el documento actual es XML, define la
    versión y la codificación de caracteres que se usó
    (UTF-8, UTF-16, ISO 8859-1, etc.) en su generacion.
    La codificación de caracteres no es obligatoria, pero
    es una buena práctica.
   Algunas veces se especifica si el documento es
    autónomo, esto es, que no hace referencia a un
    documentos externos de estructuración. Ej. <!
    DOCTYPE book SYSTEM “empleados.dtd”?>
Elementos o Elemento Raíz


   Tiene una etiqueta inicial (tag inicial), una etiqueta
    final (tag final) y datos, las etiquetas (tag) son “case-
    sensitive”.
   Pueden existir elementos vacíos <salario></salario>
    o </salario>


   El o los atributos son un par nombre-valor que se asocia
    con un elemento particular.
   El o los atributos tienen que ser especificados después de
    la etiqueta inicial (tag inicial) o el nombre de una etiqueta
    vacía
Elementos o Elemento Raíz

 Los  comentarios son del tipo <!-- esto es un
  comentario -->
 Las entidades(entity) se usan en XML como
  representación alternativa de los caracteres
  especiales (comillas dobles ó la marca de
  apertura en un elemento, acentos), también
  pueden emplearse para incluir el contenido de
  otros documentos o hacer referencia a trozos de
  texto repetitivos (una macro <!ENTITY amp
  "&#38;"&gt;
Elementos o Elemento Raíz
   Secciones CData




 Le     indican al procesador (parser) que ignore todos
     los caracteres de marcas que se encuentren en el
     interior de esta/s sección/es
XML bien formado y valido

   Bien formados: son todos los documentos que
    cumplen las especificaciones del lenguaje respecto
    a las reglas sintácticas. De hecho los documentos
    XML deben tener una estructura jerárquica muy
    estricta y los documentos bien formados deben
    cumplirla.
   Válidos: Además de estar bien formados, siguen
    una estructura y una semántica determinada por
    otro documento (DTD, XSD): sus elementos y sobre
    todo la estructura jerárquica que define ese
    documento (DTD, XSD), además de los atributos,
    deben ajustarse a lo que el documento (DTD, XSD)
    dicte. El lenguaje utilizado para este fin es el XSDL
    (XML Schema Definition Language).
XML valido DTD (Document Type
Definition)

 Un DTD define los elementos que pueden
 aparecer en un documento XML, el orden en
 el cual pueden aparecer, cómo pueden estar
 anidados y otros detalles básicos de la
 estructura del documento XML. Los DTD son
 parte de la especificación original de XML y
 son muy similares a los DTDs de SGML
Document Type Definition
XML valido XSD (XML Schema
Definition)

 Un esquema puede definir todas las
 estructuras de documento que pudieran
 definirse con DTD y además, puede definir
 tipos de datos y reglas mucho más
 complejas de las que pueden hacerse con
 DTD. El W3C desarrollo la especificación de
 Esquemas XML un par de años después que
 la especificación original XML.
XML Schema Definition
Ventajas de XSD (XML Schema
Definition) sobre DTD

 Los esquemas usan sintaxis XML
 Los esquemas XML soportan tipos de
  datos
 Los esquemas XML son extensibles
 Los esquemas XML tienen mayor poder
  de expresión
JSON

 Introducción a JSON
 El Lenguaje JSON
 Estructura de JSON
Introducción a JSON

   Acrónimo de JavaScript Object Notation, es un formato ligero
    para el intercambio de datos.
   Una de las ventajas de JSON sobre XML como formato de
    intercambio de datos, es que es mucho más sencillo escribir un
    analizador semántico de JSON.
   Se emplea habitualmente en entornos donde el tamaño del
    flujo de datos entre cliente y servidor es de vital importancia,
    cuando la fuente de datos es confiable y donde no es
    importante el no disponer de procesamiento XSLT para
    manipular los datos en el cliente.
   Es una especificación que nos permite crear objetos al vuelo
    (on the fly).
El Lenguaje JSON

JSON está constituido por dos estructuras:
 Una colección de pares de nombre/valor. En
  varios lenguajes esto es conocido como un
  objeto, registro, estructura, diccionario, tabla
  hash, lista de claves o un arreglo asociativo.
 Una lista ordenada de valores. En la mayoría
  de los lenguajes, esto se implementa como
  arreglos, vectores, listas o secuencias.
Estructura JSON
   Objeto: Un objeto es un conjunto desordenado de pares nombre/valor.
    Un objeto comienza con { (llave de apertura) y termine con } (llave de
    cierre). Cada nombre es seguido por : (dos puntos) y los pares
    nombre/valor están separados por , (coma).




   Un arreglo es una colección de valores. Un arreglo comienza con [ (corchete
    izquierdo) y termina con ] (corchete derecho). Los valores se separan
    por , (coma).
Estructura JSON
   Un valor puede ser una cadena de caracteres con comillas dobles, o un número, o true o
    false o null, o un objeto o un arreglo. Estas estructuras pueden anidarse.




   Una cadena de caracteres es una colección de cero o más caracteres Unicode, encerrados entre
    comillas dobles, usando barras divisorias invertidas como escape. Un carácter está representado por
    una cadena de caracteres de un único carácter. Una cadena de caracteres es parecida a una cadena de
    caracteres C o Java.
Estructura JSON

   Un número es similar a un número C o Java, excepto que no
    se usan los formatos octales y hexadecimales.
Estructura JSON
YAML

 Introducción a YAML
 El Lenguaje YAML
 Estructura de YAML
Introducción a YAML

   YAML es un formato para serializar datos que es
    fácil de procesar por las máquinas, fácil de leer para
    las personas y fácil de interactuar con los lenguajes
    de script.
   YAML corresponde a las estructuras nativas de
    datos de lenguajes ágiles.
   YAML es portable entre lenguajes de programación.
   YAML es expresivo y extensible.
   YAML es fácil para implementar y usar.
El lenguaje YAML

   YAML fue creado bajo la creencia de que todos los datos
    pueden ser representados adecuadamente como
    combinaciones de listas, hashes (mapeos) y datos escalares
    (valores simples).
   La sintaxis es relativamente sencilla y fue diseñada teniendo
    en cuenta que fuera muy legible pero que a la vez fuese
    fácilmente mapeable a los tipos de datos más comunes en la
    mayoría de los lenguajes de alto nivel.
   YAML utiliza una notación basada en el indentación y/o un
    conjunto de caracteres Sigil distintos de los que se usan en
    XML, haciendo que sea fácil componer ambos lenguajes.
Estructura YAML

   YAML utiliza para describir el contenidos el conjunto de
    caracteres imprimibles Unicode, UTF-8 o UTF-16.
   La estructura del documento se indica indentando con
    espacios en blanco, esta prohibido identar con tabulaciones.
   Los comentarios se encabezan con ( # ) y tiene efectos hasta
    el final de la línea.
   Los valores simples (o escalares) en general se representan
    sin comillas pero pueden utilizarse tanto comillas dobles (“ “) o
    comillas simples (‘ ‘).
   La representación para los arreglos asociativos es “clave:
    valor” ósea dos puntos seguidos de un espacio una por línea o
    entre llave ({ }) separados por comas seguido de un espacio ( ,
     ).
   Un valor de un arreglo asociativo esta precedida por un signo
    de interrogación ( ? ), permitiendo construir claves complejas
    sin ambigüedades.
Estructura YAML
   Las listas simples se denotan encabezados por un guion ( - ) con un
    elemento por cada línea, o entre corchetes ( [ ] ) y siempre
    separados por coma espacio ( , ).
   Cuando se utilizan comillas dobles para denotar un elemento los
    carácter especiales se representan como en el lenguaje de progresión
    “C” que es una secuencia de escape que comienza con una barra
    invertida ().
   Es posible incluir mas de un documento dentro de un mismo flujo,
    separándolos por tres guiones ( --- ); los tres puntos ( ... ) indican el fin
    de un documento dentro de un flujo.
   YAML requiere que las comas como los punto y comas que se
    utilizan como separadores en el documento siempre sean
    seguidos de un espacio para poder representar los valores
    simples (escalares) se puedan representar sin las comillas
    simples o dobles.
Estructura YAML
FIN
¡¡Gracias!!
  DEMO

Más contenido relacionado

La actualidad más candente (20)

Dev-C++
Dev-C++ Dev-C++
Dev-C++
 
Taller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL proceduralTaller de Base de Datos - Unidad 6 SQL procedural
Taller de Base de Datos - Unidad 6 SQL procedural
 
Presentación Multimedia - Django
Presentación Multimedia - DjangoPresentación Multimedia - Django
Presentación Multimedia - Django
 
cc302modulo3
cc302modulo3cc302modulo3
cc302modulo3
 
Modelos de dominio
Modelos de dominioModelos de dominio
Modelos de dominio
 
Ejercicio - Personal de departamentos (XSD - XML Schema)
Ejercicio - Personal de departamentos (XSD - XML Schema)Ejercicio - Personal de departamentos (XSD - XML Schema)
Ejercicio - Personal de departamentos (XSD - XML Schema)
 
Json
JsonJson
Json
 
Dom JavaScript
Dom JavaScriptDom JavaScript
Dom JavaScript
 
Windows forms c# visual basic .net ejercicios
Windows forms c# visual basic .net ejerciciosWindows forms c# visual basic .net ejercicios
Windows forms c# visual basic .net ejercicios
 
Advanced Cascading Style Sheets
Advanced Cascading Style SheetsAdvanced Cascading Style Sheets
Advanced Cascading Style Sheets
 
1. realizacion de tareas administrativas
1.  realizacion de tareas administrativas1.  realizacion de tareas administrativas
1. realizacion de tareas administrativas
 
Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacional
 
HTML, CSS and Java Scripts Basics
HTML, CSS and Java Scripts BasicsHTML, CSS and Java Scripts Basics
HTML, CSS and Java Scripts Basics
 
CSS
CSSCSS
CSS
 
UML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de ClaseUML - Casos de Uso y Diagramas de Clase
UML - Casos de Uso y Diagramas de Clase
 
Transforming xml with XSLT
Transforming  xml with XSLTTransforming  xml with XSLT
Transforming xml with XSLT
 
Consultas multitabla clase
Consultas multitabla claseConsultas multitabla clase
Consultas multitabla clase
 
Semántica en HTML5
Semántica en HTML5Semántica en HTML5
Semántica en HTML5
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 
Ejercicio scrum
Ejercicio scrumEjercicio scrum
Ejercicio scrum
 

Similar a Intercambio Datos XML JSON YAML (20)

Tema 2
Tema 2Tema 2
Tema 2
 
Lenguajes de marcas
Lenguajes de marcasLenguajes de marcas
Lenguajes de marcas
 
XML
XMLXML
XML
 
Lenguaje XML
Lenguaje XMLLenguaje XML
Lenguaje XML
 
Xml presentacin
Xml presentacinXml presentacin
Xml presentacin
 
UG2011html.pptx
UG2011html.pptxUG2011html.pptx
UG2011html.pptx
 
Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5
 
Xml
XmlXml
Xml
 
Xml
XmlXml
Xml
 
Fundamentos XML
Fundamentos XMLFundamentos XML
Fundamentos XML
 
Capitulo 27 (XML: Lenguaje de mercado extendible) y Capítulo 28 (Conceptos de...
Capitulo 27 (XML: Lenguaje de mercado extendible) y Capítulo 28 (Conceptos de...Capitulo 27 (XML: Lenguaje de mercado extendible) y Capítulo 28 (Conceptos de...
Capitulo 27 (XML: Lenguaje de mercado extendible) y Capítulo 28 (Conceptos de...
 
Xml
XmlXml
Xml
 
Xml
XmlXml
Xml
 
Introduccion al xml
Introduccion al  xmlIntroduccion al  xml
Introduccion al xml
 
Trabajo xml
Trabajo xmlTrabajo xml
Trabajo xml
 
Introxml
IntroxmlIntroxml
Introxml
 
Xml
XmlXml
Xml
 
Xml
XmlXml
Xml
 
Programacion
ProgramacionProgramacion
Programacion
 
Diferencias entre XML y HTML
Diferencias entre XML y HTMLDiferencias entre XML y HTML
Diferencias entre XML y HTML
 

Último

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 

Último (19)

EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 

Intercambio Datos XML JSON YAML

  • 1. Intercambio de Datos en Paginas Web XML JSON YAML Jose Luis Rodriguez Roldan
  • 2. XML  Introducción a XML  El Lenguaje XML  Estructura de XML  XML bien formado y valido
  • 3. Introducción a XML  XML (Extensible Markup Language) es un metalenguaje que fue diseñado básicamente para estructurar, almacenar e intercambiar datos entre diferentes aplicaciones. Es un estándar, ya que es extensible y puede ser utilizado por cualquier aplicación independientemente de la plataforma.
  • 4. El Lenguaje XML es  Simple - La especificación completa mide menos de 30 cuartillas. XML ha sido diseñado para facilitar aún más la escritura de programas con respecto a HTML o SGML.  Extensible - Cada quien puede inventar sus propias etiquetas para marcar cual quier tipo de documento, y ser éstas compartidas. De hecho, XML es un metalenguaje que le permite al usuario definir su propio lenguaje de marcado.  Un estándar abierto - XML es SGML. Ello significa que no es necesario saber programar; existen muchas herramientas eficientes que permiten ya sea crearlo, manejarlo o implantarlo en una computadora y distribuirlo.  Eficiente - XML tiene entes interconstruidos para reutilizar fragmentos de documentos, así, estos sólo tienen que ser transmitidos una vez.  Basado en la experiencia - XML ha sido diseñado por personas que tienen amplia experiencia en los len guajes de marcado y han capitalizado las enseñanzas que el uso de ellos les ha su ministrado a lo largo de los años.  Consensuado - El diseño de XML incluye los puntos de vista de los organismos coordinadores de HTML y SGML, así como los de personas que han desarrollado importantes aplicaciones con es tos estándares.
  • 5. El Lenguaje XML es  Libre - Nadie tiene la propiedad o patente de XML, ni podrá tenerla, ya que tanto SGML como XML han sido definidos como estándares internacionales. Por lo mismo su uso o desarrollo no implica el pago de ninguna regalía.  Internacional - XML tiene interconstruido un soporte para textos en prácticamente todos los alfabetos del mundo, incluyendo técnicas para consignar el lenguaje y/o código del alfabeto utilizado.  Listo para ser usado - Los “browsers” o navegadores de la web, son capaces de leer especificaciones XML. Los hipervínculos, textos y multimedios pueden ser vistos tal como si fuere un documento HTML.  Manejable - XML incluye métodos para declarar y reforzar las estructuras documentales usadas actualmente, como las de bases de datos.  Validable - XML tiene técnicas que permiten la validación de los documentos involucrados, así que uno puede estar seguro de que los documentos registrados con él son crea dos correctamente.
  • 6. Estructura de XML  1.- Prologo.  2.- Elementos o Elemento Raíz  3.- Epilogo (opcional)
  • 7. Prologo  Especifica que el documento actual es XML, define la versión y la codificación de caracteres que se usó (UTF-8, UTF-16, ISO 8859-1, etc.) en su generacion. La codificación de caracteres no es obligatoria, pero es una buena práctica.  Algunas veces se especifica si el documento es autónomo, esto es, que no hace referencia a un documentos externos de estructuración. Ej. <! DOCTYPE book SYSTEM “empleados.dtd”?>
  • 8. Elementos o Elemento Raíz  Tiene una etiqueta inicial (tag inicial), una etiqueta final (tag final) y datos, las etiquetas (tag) son “case- sensitive”.  Pueden existir elementos vacíos <salario></salario> o </salario>  El o los atributos son un par nombre-valor que se asocia con un elemento particular.  El o los atributos tienen que ser especificados después de la etiqueta inicial (tag inicial) o el nombre de una etiqueta vacía
  • 9. Elementos o Elemento Raíz  Los comentarios son del tipo <!-- esto es un comentario -->  Las entidades(entity) se usan en XML como representación alternativa de los caracteres especiales (comillas dobles ó la marca de apertura en un elemento, acentos), también pueden emplearse para incluir el contenido de otros documentos o hacer referencia a trozos de texto repetitivos (una macro <!ENTITY amp "&#38;"&gt;
  • 10. Elementos o Elemento Raíz  Secciones CData  Le indican al procesador (parser) que ignore todos los caracteres de marcas que se encuentren en el interior de esta/s sección/es
  • 11. XML bien formado y valido  Bien formados: son todos los documentos que cumplen las especificaciones del lenguaje respecto a las reglas sintácticas. De hecho los documentos XML deben tener una estructura jerárquica muy estricta y los documentos bien formados deben cumplirla.  Válidos: Además de estar bien formados, siguen una estructura y una semántica determinada por otro documento (DTD, XSD): sus elementos y sobre todo la estructura jerárquica que define ese documento (DTD, XSD), además de los atributos, deben ajustarse a lo que el documento (DTD, XSD) dicte. El lenguaje utilizado para este fin es el XSDL (XML Schema Definition Language).
  • 12. XML valido DTD (Document Type Definition)  Un DTD define los elementos que pueden aparecer en un documento XML, el orden en el cual pueden aparecer, cómo pueden estar anidados y otros detalles básicos de la estructura del documento XML. Los DTD son parte de la especificación original de XML y son muy similares a los DTDs de SGML
  • 14. XML valido XSD (XML Schema Definition)  Un esquema puede definir todas las estructuras de documento que pudieran definirse con DTD y además, puede definir tipos de datos y reglas mucho más complejas de las que pueden hacerse con DTD. El W3C desarrollo la especificación de Esquemas XML un par de años después que la especificación original XML.
  • 16. Ventajas de XSD (XML Schema Definition) sobre DTD  Los esquemas usan sintaxis XML  Los esquemas XML soportan tipos de datos  Los esquemas XML son extensibles  Los esquemas XML tienen mayor poder de expresión
  • 17. JSON  Introducción a JSON  El Lenguaje JSON  Estructura de JSON
  • 18. Introducción a JSON  Acrónimo de JavaScript Object Notation, es un formato ligero para el intercambio de datos.  Una de las ventajas de JSON sobre XML como formato de intercambio de datos, es que es mucho más sencillo escribir un analizador semántico de JSON.  Se emplea habitualmente en entornos donde el tamaño del flujo de datos entre cliente y servidor es de vital importancia, cuando la fuente de datos es confiable y donde no es importante el no disponer de procesamiento XSLT para manipular los datos en el cliente.  Es una especificación que nos permite crear objetos al vuelo (on the fly).
  • 19. El Lenguaje JSON JSON está constituido por dos estructuras:  Una colección de pares de nombre/valor. En varios lenguajes esto es conocido como un objeto, registro, estructura, diccionario, tabla hash, lista de claves o un arreglo asociativo.  Una lista ordenada de valores. En la mayoría de los lenguajes, esto se implementa como arreglos, vectores, listas o secuencias.
  • 20. Estructura JSON  Objeto: Un objeto es un conjunto desordenado de pares nombre/valor. Un objeto comienza con { (llave de apertura) y termine con } (llave de cierre). Cada nombre es seguido por : (dos puntos) y los pares nombre/valor están separados por , (coma).  Un arreglo es una colección de valores. Un arreglo comienza con [ (corchete izquierdo) y termina con ] (corchete derecho). Los valores se separan por , (coma).
  • 21. Estructura JSON  Un valor puede ser una cadena de caracteres con comillas dobles, o un número, o true o false o null, o un objeto o un arreglo. Estas estructuras pueden anidarse.  Una cadena de caracteres es una colección de cero o más caracteres Unicode, encerrados entre comillas dobles, usando barras divisorias invertidas como escape. Un carácter está representado por una cadena de caracteres de un único carácter. Una cadena de caracteres es parecida a una cadena de caracteres C o Java.
  • 22. Estructura JSON  Un número es similar a un número C o Java, excepto que no se usan los formatos octales y hexadecimales.
  • 24. YAML  Introducción a YAML  El Lenguaje YAML  Estructura de YAML
  • 25. Introducción a YAML  YAML es un formato para serializar datos que es fácil de procesar por las máquinas, fácil de leer para las personas y fácil de interactuar con los lenguajes de script.  YAML corresponde a las estructuras nativas de datos de lenguajes ágiles.  YAML es portable entre lenguajes de programación.  YAML es expresivo y extensible.  YAML es fácil para implementar y usar.
  • 26. El lenguaje YAML  YAML fue creado bajo la creencia de que todos los datos pueden ser representados adecuadamente como combinaciones de listas, hashes (mapeos) y datos escalares (valores simples).  La sintaxis es relativamente sencilla y fue diseñada teniendo en cuenta que fuera muy legible pero que a la vez fuese fácilmente mapeable a los tipos de datos más comunes en la mayoría de los lenguajes de alto nivel.  YAML utiliza una notación basada en el indentación y/o un conjunto de caracteres Sigil distintos de los que se usan en XML, haciendo que sea fácil componer ambos lenguajes.
  • 27. Estructura YAML  YAML utiliza para describir el contenidos el conjunto de caracteres imprimibles Unicode, UTF-8 o UTF-16.  La estructura del documento se indica indentando con espacios en blanco, esta prohibido identar con tabulaciones.  Los comentarios se encabezan con ( # ) y tiene efectos hasta el final de la línea.  Los valores simples (o escalares) en general se representan sin comillas pero pueden utilizarse tanto comillas dobles (“ “) o comillas simples (‘ ‘).  La representación para los arreglos asociativos es “clave: valor” ósea dos puntos seguidos de un espacio una por línea o entre llave ({ }) separados por comas seguido de un espacio ( , ).  Un valor de un arreglo asociativo esta precedida por un signo de interrogación ( ? ), permitiendo construir claves complejas sin ambigüedades.
  • 28. Estructura YAML  Las listas simples se denotan encabezados por un guion ( - ) con un elemento por cada línea, o entre corchetes ( [ ] ) y siempre separados por coma espacio ( , ).  Cuando se utilizan comillas dobles para denotar un elemento los carácter especiales se representan como en el lenguaje de progresión “C” que es una secuencia de escape que comienza con una barra invertida ().  Es posible incluir mas de un documento dentro de un mismo flujo, separándolos por tres guiones ( --- ); los tres puntos ( ... ) indican el fin de un documento dentro de un flujo.  YAML requiere que las comas como los punto y comas que se utilizan como separadores en el documento siempre sean seguidos de un espacio para poder representar los valores simples (escalares) se puedan representar sin las comillas simples o dobles.