26
Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 1 XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras de Datos Espaciales Un trabajo basado en: http://www.infor.uva.es/~jvegas/cursos/web/xml/ixml/ixml.html

XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

  • Upload
    others

  • View
    16

  • Download
    0

Embed Size (px)

Citation preview

Page 1: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 1

XMLExtensible Markup Languaje

Lenguaje de Marcas Extendido: Aplicación en Infraestructuras de Datos Espaciales

Un trabajo basado en: http://www.infor.uva.es/~jvegas/cursos/web/xml/ixml/ixml.html

Page 2: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 2

¿Qué es XML?

• XML, Extensible Markup Languaje, es un lenguaje de marcas capaz de estructurar y definir la información en un documento

– Una marca: en XML es una etiqueta que ayuda a organizar la estructura de un documento y definesemánticamente la información que identifica

– Semántico: Que se relaciona con los significados

Información estructurada:TítulosEntradillasTextosPiés de FotoIndices

Page 3: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 3

¿Qué es XML?

• La información estructurada nos permite distinguir entre:– el tipo de información (palabras, imágenes, gráficos,...)

– el papel que juega dentro del documento (por ejemplo, no es lo mismo el contenido informativo de un encabezado, que el de un pie de página, el primero es más relevante)

• Se puede asegurar que casi todos los documentos tienen una estructura definida– XML nos permite identificar esas estructuras

Page 4: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 4

¿Qué es XML?

A partir de ahora la palabra documento tendrá, para nosotros, un significado adicional además de información, palabras, imágenes, gráficos...,

tendrá una estructura reconocible

Page 5: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 5

¿Qué es XML?

La novedad de XML consiste en permitir compartir los datos a todos los niveles entre diferentes sistemas que exigen hacerlo de manera segura, fiable y fácil ( globalización de la información, compatibilidad entre sistemas )

XML tiene a su alrededor otras tecnologías que la complementan de acuerdo a campos específicos (e-Bussiness, Gobierno Digital, IDEs…)

Page 6: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 6

Breve historia del XML

Años ´70: IBM desarrolla GML (General Makup Language)1986: ISO lo estandariza (SGML)1989: SGML + hiperenlaces = HTML. Comienza la web

• Cada fabricante comienza a implementar nuevas características. HTML: Desastre. Ya no hay estandarización. Aparece W3C como garante de estándares

1996: W3C comienza y continúa el desarrollo de XML que soluciona problemas del HTML:

• En la programación, el contenido se mezcla con los estilos que se le quieren aplicar

• No permite compartir información con todos los dispositivos, como pueden ser ordenadores o teléfonos móviles

• La presentación en pantalla depende del visor que se utilice

Page 7: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 7

Diferencias entre HTML y XML

HTML:

• Etiquetas fijas.– <HEAD> ... </HEAD>– <BODY> ... </BODY>

• Un nivel único de información

XML:

• Etiquetas definidas por usuario.– <ETIQ1> ... </ETIQ1>– <ETIQ2> ... </ETIQ2>

• Estructura con tantos niveles como se desee.

<html>

<head>

<title> E.T.S.I. en Topografía, Geodesia y Cartografía (U.P.M.) Home

Page </title>

<meta NAME=GENERATOR CONTENT="Microsoft FrontPage

4.0">

<x-sas-window TOP=42 BOTTOM=621 LEFT=4 RIGHT=534>

</head>

<body TEXT="#264378" BGCOLOR="#FFFFFF" LINK="#264278"

ALINK="#FBBD6F"

VLINK="#817979" onLoad="">

<p>

<center>

<img src="gif_agc/escue.gif" width="481" height="228">

</center>

</p>

<p><center>

<table BORDER=1 CELLSPACING=1 CELLPADDING=3

WIDTH=510 align="center">

<tr>

<center>

<th COLSPAN=2 bgcolor="#AFC5D0" WIDTH=170>

<p><strong><font SIZE="+1" COLOR="#182B4D">E.U.I.T.

TOPOGRAFICA</font></strong></th></center>

<td COLSPAN=2 bgcolor="#EBE9B3" WIDTH=170>

<p><center><strong><font SIZE="+1"

COLOR="#182B4D">ALUMNOS</font></strong></center>

</td><td COLSPAN=2 bgcolor="#AFC5D0" WIDTH=170>

<p><center><strong><font SIZE="+1"

COLOR="#182B4D">OTROS</font></strong></center>

</td></tr>

Page 8: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 8

Diferencias entre HTML y XML

HTML:• Guerra de Navegadores.

– Sobrecarga de características propias– Dificultades de portabilidad para los programadores

• No distingue entre partes de un documento– Hay que bajar el documento completo

XML: • Es un meta-lenguaje para describir lenguajes de marcas.

– Proporciona herramientas para definir etiquetas y jerarquías entre ellas– El programador define el significado de cada marca para cada aplicación

Page 9: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 9

¿Por qué XML?

• Creado para posibilitar la distribución de documentos con formato/estructura a través de la Red

• Ni HTML ni SGML eran viables o prácticos para este propósito– HTML totalmente corrompido por casas comerciales– SGML, puede dar toda la estructuración que deseemos, pero tiene en

contra su gran complejidad

• XML no va a sustituir completamente ni a HTML, ni a SGML– HTML es sencillo y permite dar estilo/presentación a XML

• Hasta que se afiance XSL• Hasta que aparezcan visualizadores XML eficientes• Mientras sigan existiendo páginas estáticas sencillas

– El SGML seguirá solucionando algunos problemas complejos inabordables por XML

– Posible: Sistemas que implementes soluciones con gestores de la información HTML + SGML + XML

Page 10: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 10

Los 10 Mandamientosdel W3C para el XML

Page 11: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 11

1. Los documentos XML deben distribuirse y visualizarse por la red con la misma facilidad que actualmente lo hacen los HTML

• Hay que esperar a que aparezcan visualizadores tan robustos y completos como los actuales HTML, que nos permitan ver cómoda y adecuadamente la estructura de árbol de los archivos XML

• Esto era hace algún tiempo, hoy por hoy, tanto Ms I-Explorer como Mozilla FireFox y los relacionados lo hacen

Los 10 Mandamientosdel W3C para el XML

Page 12: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 12

2.- Los objetivos de XML no deben centrarse únicamente en la posibilidad de servir información estructurada por la red, hay otras muchas aplicaciones que pueden beneficiarse del estándar

– Búsqueda de documentos/información con un determinado autor (También mapas, fotos, imágenes) !!!

– Análisis de contenidos– Definición de patrones– Visualización gráfica de patrones expresados en XML, etc.

Los 10 Mandamientosdel W3C para el XML

Page 13: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 13

3.- XML Debe ser totalmente compatible con SGML

4.- Los programas que interpreten XML deben ser fáciles de escribir

5.- Ninguna capacidad opcional o funcionalidad sin definir, o ambiguamente definida. Eso evitará problemas de compatibilidad y confusiones en la interpretación

Los 10 Mandamientosdel W3C para el XML

Page 14: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 14

6.-XML debe ser legible por los humanos, de manera que podamos leer un documento en un simple editor de texto

7.- La especificación y diseño de XML debe obtenerse rápidamente. Es una solución que se requiere ya y se están haciendo muchos esfuerzos para lograrlo

Los 10 Mandamientosdel W3C para el XML

Page 15: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 15

8.- El diseño de XML debe ser formal y conciso, sin ambigüedades, de forma que le puedan ser aplicadas todas las técnicas modernas de diseño de compiladores;– esto nos permitirá comprobar que los

archivos XML que recibamos están bien formados y libres de errores antes de visualizarlos

Nota: XML al carecer de gran parte de la complejidad de SGML puede describirse gramaticalmente con notación EBNF (Extended Backus-Naur Form)

Los 10 Mandamientosdel W3C para el XML

Page 16: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 16

9.- Los documentos XML han de poder crearse yeditarse fácilmente, con editores texto,desde los lenguajes de programación (PERL,PHP, Java, JavaScript, et...) o editoresespecíficos para este formato (Cooktoop,XMLSpy, etc...)

Los 10 Mandamientosdel W3C para el XML

Page 17: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 17

10.- La concisión es de mínima importanciaMuchas de las capacidades de SGML fueron puestas para

facilitar en lo posible la introducción manual de etiquetas, para que las especificaciones fueran unívocas. XML no soporta estas capacidades, que son la causa de gran parte de la carga que arrastran los analizadores SGML

Los 10 Mandamientosdel W3C para el XML

Page 18: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 18

XML: Características

1.- ExtensibleSe pueden definir nuevas etiquetas

2.- EstructuradoSe puede modelar datos a cualquier nivel de complejidad, y su definición está

en un DTD (Document Type Definition) o en XML-Schema

3.- Comprobable si es válidoCada documento se puede validar frente a un DTD, a un esquema XML o en su

defecto, se puede declarar bien formado

4.- Independiente del medioPara publicar contenidos en múltiples formatos

5.- Independiente del fabricante y la plataformaPara poder utilizar cualquier herramienta estándar

Page 19: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 19

XML: Documentos XML

1.- Marcado descriptivo

• Las etiquetas delimitan una porción del documento y dicen lo que es• Seis tipos de etiquetas:

– elementos

– referencias a entidades

– comentarios

– instrucciones de procesamiento

– secciones de datos

– declaraciones de tipo de documento

Page 20: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 20

XML: Document Type Definition

• Un DTD establece tanto los elementos que forman un tipo de documento dado, como las relaciones que se dan entre ellos

• Ej. Conjunto de reglas que definen un documento llamado correo electrónico:

<!element email (head, body)>

<!attlist email id ID #REQUIRED>

<!element head (from, to+, cc*, subject)>

<!element from (name?, address)>

<!element to (name?, address)>

<!element cc (name?, address)>

<!element name (#PCDATA)>

<!element address (#PCDATA)>

<!element subject (#PCDATA)>

<!element body (p | attach)*>

<!element p (#PCDATA)>

<!element attach EMPTY>

<!attlist attach encoding (mime|binhex) "mime"

name CDATA #REQUIRED>

– Declaración de elementos (identifican los nombres de los elementos, su contenido y las relaciones entre los distintos elementos)

– Declaración de atributos, (identifican los elementos que tienen atributos, qué atributos tendrán y cuáles son los valores por defecto)

– Declaración de entidades (permiten asociar nombres con contenidos que por ejemplo se repiten mucho: <!entity upm "Universidad Politécnica de Madrid">)

– Declaración de notación (identifican tipos específicos de datos binarios externos: <!notation GIF87A system "gif”>)

Page 21: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 21

Documentos XML válidos y bien formados

• Un documento es válido si es conforme con el DTD• Si no dispone de DTD es válido si:

• 1.- Están todas las etiquetas

• 2.- Todas las etiquetas están pareadas, excepto aquellas que corresponden a elementos vacíos, que acaban con />

• 3.- Todos los valores de los atributos están entrecomillados

• 4.- Todas las entidades están declaradas

Page 22: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 22

Ejemplos de utilización

• * RDF, Resource Description Framework, es un marco de trabajo que permite la codificación, intercambio y reutilización de metadatos estructurados

• * OFX, Open Financial Exchange, formato utilizado por Quichen y Microsoft Money para comunicarse con los bancos

• * CML, Chemical Markup Language, lenguaje para el intercambio de descripción de moléculas, fórmulas y otros elementos químicos

• * MML, Mathematical Markup Language, diseñado para soportar la escritura de fórmulas matemáticas

• * OSD, Open Software Distribution, de Marimba y Microsoft

• * TEI, Text Encoding Initiative tiene mucha experiencia en la estandarización de la descripción de documentos electrónicos

• * GML, Geographic Makeup Language lenguaje para el intercambio de datos geográficos

• * CityGML http://www.citygml.org/

• * GeoSciML http://www.cgi-iugs.org/tech_collaboration/geosciml.html

Page 23: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 23

XML y Familia

XML es una familia de tecnologías: * XPointer, XBase y XLink describen un modo estándar de añadir hiperenlaces a un

documento XML

* XPath define la sintaxis para referirse a partes de un documento XML

* CSS el lenguaje de estilo de HTML se puede aplicar a XML

* XSL es el lenguaje de estilo avanzado para XML, y está basado en XSLT, que es un lenguaje de transformación que permite reordenar, añadir o eliminar etiquetas y atributos

* DOM y SAX son un conjunto estándar de llamadas a funciones que permiten manipular documentos XML (y HTML) desde programas

* XML Namespaces describe cómo se puede asociar una URL con cada etiqueta y atributo de un documento XML

* XML Schemas proporcionan un modo de definir la estructura, el contenido y la semántica de los documentos XML

* XEncryption, XSignature y XSecurity tratan los aspectos de seguridad y autentificación en el intercambio de documentos XML

* XQuery proporciona un modo flexible de consulta para extraer datos de los documentos en el Web

* SOAP Estándar para empaquetar los mensajes de comunicación con Servicios Web

* WSDL Estándar diseñado para que los Servicios Web puedan describir sus métodos y parámetros (Auto-describirse)

Page 24: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 24

XML y Java

XML y Java tienen características complementarias, y cuando se utilizan juntos constituyen una plataforma muy potente para compartir y el procesar datos y documentos

* XML define datos y documentos de una manera abierta y neutral, pero necesita aplicaciones que los procesen

* Java ofrece un entorno de computación homogéneo con código que se puede transportar a cualquier máquina virtual Java

* XML y Java hacen posible que se puedan aplicar los principios de "escribe una vez, ejecuta donde quieras" para procesar datos y documentos

Page 25: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 25

XML: Conclusiones

* La falta de estructura en la información en Internet incide negativamente en las prestaciones de la red y en las posibilidades de aprovechamiento de la información allí depositada

* XML es un lenguaje de marcado de documentos diseñado para trabajar en Internet simple, flexible y fácil de utilizar

* Hay mucho trabajo por hacer para conseguir un intercambio automatizado de documentos en Internet que permita el desarrollo de las aplicaciones ya existentes y de otras nuevas

Page 26: XML Extensible Markup Languajepdi.topografia.upm.es/m.manso/docencia/IDE_plan92_ITT/IDE-2010/… · XML Extensible Markup Languaje Lenguaje de Marcas Extendido: Aplicación en Infraestructuras

Miguel A. Bernabé + Miguel A. Manso. Grupo de Trabajo MERCATOR. Universidad Politécnica de Madrid 26

XML: Referencias

* WWW Consortium (W3C) [www.w3.org]* Escuela W3 [www.w3schools.com]* XML.com de O'Reilly [www.xml.com]* Especificación XML 1.0 [www.w3.org/TR/REC-xml]* Portal XML para la Industria [www.xml.org]* ebXML [www.ebxml.org]* OASIS [www.oasis-open.org]* TEI [www.tei-c.org]* Dublin Core [http://dublincore.org]* Creando Documentos Electrónicos [http://ota.ahds.ac.uk/documents/creating/]• Libro blanco Java-XML [http://java.sun.com/xml/ncfocus.html]

Estas transparencias están basadas fundamentalmente en un trabajo de Jesús Vegas de la U. De Valladolid, que puede encontrarse en:

• http://www.infor.uva.es/~jvegas/cursos/web/xml/ixml/ixml.html