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

Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetosyoiner santiago
 
Tipos de datos C#
Tipos de datos C#Tipos de datos C#
Tipos de datos C#alex28Xx
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftChuyito Alvarado
 
Herramientas de Desarrollo de Software
Herramientas de Desarrollo de SoftwareHerramientas de Desarrollo de Software
Herramientas de Desarrollo de SoftwareTe Amo Gabriel
 
Presentación Introducción al lenguaje HTML
Presentación Introducción al lenguaje HTMLPresentación Introducción al lenguaje HTML
Presentación Introducción al lenguaje HTMLandreajose13
 
Cuestionario procesos
Cuestionario procesos Cuestionario procesos
Cuestionario procesos Gabriel Garcia
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Javamaeusogo
 
Estilos de programación y sus lenguajes
Estilos de programación y sus lenguajesEstilos de programación y sus lenguajes
Estilos de programación y sus lenguajesPedro Contreras Flores
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosAlvaro Enrique Ruano
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoMarvin Zumbado
 

La actualidad más candente (20)

Funciones en php
Funciones en phpFunciones en php
Funciones en php
 
Analisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A ObjetosAnalisis Y DiseñO Orientado A Objetos
Analisis Y DiseñO Orientado A Objetos
 
Tipos de datos C#
Tipos de datos C#Tipos de datos C#
Tipos de datos C#
 
Principios diseño del software
Principios diseño del software Principios diseño del software
Principios diseño del software
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoft
 
Swebok
SwebokSwebok
Swebok
 
Herramientas de Desarrollo de Software
Herramientas de Desarrollo de SoftwareHerramientas de Desarrollo de Software
Herramientas de Desarrollo de Software
 
Presentación Introducción al lenguaje HTML
Presentación Introducción al lenguaje HTMLPresentación Introducción al lenguaje HTML
Presentación Introducción al lenguaje HTML
 
DOM HTML Javascript
DOM HTML JavascriptDOM HTML Javascript
DOM HTML Javascript
 
Cuestionario procesos
Cuestionario procesos Cuestionario procesos
Cuestionario procesos
 
MVC
MVCMVC
MVC
 
Metodología WEB UWE
Metodología WEB UWEMetodología WEB UWE
Metodología WEB UWE
 
Presentacion Java
Presentacion JavaPresentacion Java
Presentacion Java
 
Estilos de programación y sus lenguajes
Estilos de programación y sus lenguajesEstilos de programación y sus lenguajes
Estilos de programación y sus lenguajes
 
Programación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodosProgramación Orientada a Objetos - atributos y métodos
Programación Orientada a Objetos - atributos y métodos
 
Análisis estructurado
Análisis estructuradoAnálisis estructurado
Análisis estructurado
 
Mapa conceptual de Java
Mapa conceptual de JavaMapa conceptual de Java
Mapa conceptual de Java
 
Estándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de NegociosEstándares para el Modelado de Procesos de Negocios
Estándares para el Modelado de Procesos de Negocios
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modelado
 
Aplicaciones de los lenguajes y autómatas
Aplicaciones de los lenguajes y autómatas Aplicaciones de los lenguajes y autómatas
Aplicaciones de los lenguajes y autómatas
 

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

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
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...JaquelineJuarez15
 
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
 
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
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
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
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
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
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
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
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
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
 
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
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 

Último (20)

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
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
El gusano informático Morris (1988) - Julio Ardita (1995) - Citizenfour (2014...
 
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
 
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
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
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
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
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
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
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
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
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...
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 

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.