La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Curso: XML, de los datos a la presentación Julio de 2005 CAPTIVA · www.captiva.es Introducción al mundo XML.

Presentaciones similares


Presentación del tema: "Curso: XML, de los datos a la presentación Julio de 2005 CAPTIVA · www.captiva.es Introducción al mundo XML."— Transcripción de la presentación:

1 Curso: XML, de los datos a la presentación Julio de 2005 CAPTIVA · www.captiva.es Introducción al mundo XML

2 La base de todo: HTML  Ampliamente utilizado  Inventado por Tim Berners-Lee, 1991  Objetivos:  Presentar información enlazada  Orientado a personas  Es el lenguaje de presentación en la Web  Laborioso de procesar por máquinas

3 Carencias semánticas  Orientado a la presentación  Información en base de datos  Tiene sentido en su modelo de datos  Una vez formateado se pierde el significado  Contexto visual para extraer el significado  Acoplamiento de contenido y presentación  “Screen-scraping” para extraer contenido  “Metatags” para añadir significado

4 Llega el XML (I)  Limitaciones de HTML:  HTML está siendo extendido por cada desarrollador  Necesidad de un estándar  W3C: 1996-1998  W3C XML Working Group:  Microsoft, Sun Microsystems, Adobe, IBM,…  Formato abierto y libre  ¡Desarrollado por empresas competidoras!

5 Llega el XML (II)  Surgen nuevos lenguajes como WML  Adaptar los contenidos

6 ¿Qué es XML?  eXtensible Markup Language  Estándar W3C para la creación de lenguajes de “etiquetas”  Descripción de la información  Subconjunto de SGML  Etiquetado semántico, no de estilo  Gran problema de HTML

7 Componentes de un Documento XML  Elementos  Delimitados por etiquetas  Atributos  Contenidos en las etiquetas  Entidades  Permiten referirnos a elementos externos  Componentes avanzados  Secciones CDATA y Processing Instructions

8 Normas básicas  XML es “case sensitive”  Todos los tags deben cerrarse correctamente.  Todos los elementos han de anidarse correctamente.  La primera línea es la declaración XML:   Ha de existir siempre un elemento raíz.  Los valores de los atributos deben estar delimitados por comillas dobles.  Hay caracteres que no pueden utilizarse

9 Documento XML Christopher none 1234AD 1997 -24,98

10 ¿Qué NO es XML?  No es un sustituto del HTML  Diferentes objetivos: no define presentación  HTML debería ser un sublenguaje de XML: XHTML  No es un lenguaje de marcas  las marcas las definimos nosotros: extensible  No describe la estructura  Se hace con un DTD

11 ¿Y qué es un DTD?  Document Type Definition  Descripción lógica de los datos  Permite cerrar la estructura del documento  Validación de la información  Documento “bien formado”  Documento “validado”  Está siendo sustituido por XML Schemas  La estructura se define en XML

12 Documento DTD (I) <!DOCTYPE CUSTOMER [ ]>

13 Documento DTD (y II) Christopher none 1234AD 1997 -24,98

14 XML Schema  “Diagrama representativo” de la estructura  Los DTD están limitados  Heredados de SGML  Soporte pobre para tipos y espacios de nombres  No es XML  Los “Schemata” permiten una descripción más rica y flexible  Incluso rangos de valores de los elementos o atributos

15 Documento XML Scherma

16 Espacios de nombres  También conocidos como “Namespaces”  Similar los de C++/C# y los paquetes de Java  Puede que coincidan nombres de elementos en diferentes esquemas  A través de “namespaces” podemos identificar unívocamente el significado de los elementos  Se definen a través de una URI (normalmente una URL Web)

17 Ejemplo de “Namespaces” <mycust:customer id="AYX1234" xmlns:mycust="http://www.captiva.es/schema/customer"> Christopher none 1234AD 1997 -24,98

18 XSL  Podemos transformar los documentos XML a otros formatos:  Basados en XML  O no basados en XML: binarios y texto  Se definen dos lenguajes (XML)  XSL Transformation (XSLT)  XSL Formating Objects (XSL:FO)

19 XSLT  Se trata de un lenguaje que define un conjunto de comandos para transformar los documentos  Selección de la información  Operaciones condicionales  Bucles  Combinación de documentos XML XSL XHTML Procesador XSLT Procesador XSLT

20 Xpath (1.0)  Lenguaje de “selección”  Utilizado en XSL para seleccionar nodos  Incluye funciones  Se pueden extender en el transformador XSLT (exslt) / catalog/cd[price>10.80 ]/price

21 Tecnologías suplementarias (I)  W3C Document Object Model (DOM)  Se trata de una API para acceder y manejar nodos (elementos) XML.  Se puede modificar documentos XML desde una aplicación.  Se carga el documento completo y se crea un estructura de árbol jerárquica en memoria con todos los elementos.  Este árbol tiene un nodo raíz único que contiene el resto de nodos.

22 Tecnologías suplementarias (II)  W3C Simple API for XML (SAX)  No se crea un árbol en memoria  Funciona en base a eventos  Cuando se encuentran etiquetas (principio y final)  Útil para documentos que no van a modificarse  Es una recomendación pero no estándar W3C

23 Tecnologías suplementarias (y III)  SAX vs. DOM  DOM puede sustentarse en SAX  SAX es más rápido que DOM  SAX requiere menos memoria  DOM nos permite acceder a los nodos del documento y modificarlos

24 Soporte en Java (I)  Java API for XML Processing (JAXP)  Define interfaces para las API  DOM  org.w3c.dom  SAX  org.w3c.sax, org.w3c.sax.helpers, org.w3c.sax.ext  XSL  javax.xml.transform  Librerías de soporte independientes  Interfaces para parsers:  javax.xml.parsers, javax.xml.transform

25 Soporte en Java (y II)  Xerces (“javax.xml.parsers”)  Origen: “XML4J” de IBM  Proyecto Apache (OpenSource)  Implementa DOM y SAX  Xalan (“javax.xml.transform”)  Origen: “LotusXSL” de XSL  Proyecto Apache (!)  Utilizado para transformaciones

26 Referencias  XML  Aquí está todo: http://www.w3.org/XML/http://www.w3.org/XML/  XML-Schema: http://www.w3.org/XML/Schemahttp://www.w3.org/XML/Schema  XSL  XSLT: http://www.w3.org/TR/xslthttp://www.w3.org/TR/xslt  Xpath: http://www.w3.org/TR/xpathhttp://www.w3.org/TR/xpath  exslt: http://www.jenitennison.com/xslt/exslt/functions/http://www.jenitennison.com/xslt/exslt/functions/  XML y Java  Sun XML: http://java.sun.com/xml/http://java.sun.com/xml/  Xerces, Xalan y más cosas: http://xml.apache.org/http://xml.apache.org/  Tutoriales  De casi todo: http://www.w3schools.com/http://www.w3schools.com/


Descargar ppt "Curso: XML, de los datos a la presentación Julio de 2005 CAPTIVA · www.captiva.es Introducción al mundo XML."

Presentaciones similares


Anuncios Google