1 / 68

D. Luis Alfonso Ure a L pez Departamento de Inform tica Universidad de Ja n

Introducci

rhona
Download Presentation

D. Luis Alfonso Ure a L pez Departamento de Inform tica Universidad de Ja n

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. D. Luis Alfonso Ureña López Departamento de Informática Universidad de Jaén

    2. Introducción ¿Qué es XML? XML eXtensible Markup Language (Lenguaje Extensible de Marcas) Lenguaje abierto, estándar (W3 Consortium) derivado de SGML, optimizado para su uso en la WWW. Permite describir el sentido o la semántica de los datos. El XML, a diferencia del HTML, separa el contenido de la presentación. XML es un Meta-Lenguaje, que permite la definición de lenguajes concretos de representación de documentos.

    3. ¿Qué no es XML? XML no es una “versión mejorada de HTML”. XML no es un lenguaje para hacer mejores páginas web. XML no es “difícil”.

    4. Inconvenientes generales de HTML Está diseñado para presentar información directamente a los humanos, y esto sin duda es algo bueno, pero es un lenguaje complicado de procesar para los programas informáticos. No es bueno porque no indica lo que está representando, se preocupa principalmente de que eso tiene que ir en azul, o con un tipo de letra determinada, pero no te dice que lo que está mostrando es el título de un libro o el precio de un artículo.

    5. Problemas de HTML Define más la presentación que el contenido. No es fácilmente procesable por “máquinas”. Su estructura es “caótica”. Su interpretación es ambigua según el software utilizado. Su uso es la web.

    6. Introducción La idea que subyace bajo el XML es la de crear un lenguaje muy general que sirva para muchas cosas. El XML describe el contenido de lo que etiqueta. Cualquier programa de informática puede trabajar más eficientemente sobre XML que HTML.

    7. ¿Por qué XML? Es un estándar. No pertenece a ninguna compañía y su utilización es libre. Permite la utilización efectiva de Internet.

    8. Diferencia entre el SGML, XML y HTML

    9. Características Utilizo mis propias etiquetas. La sintaxis es estricta. La especificación XML determina claramente una serie de reglas que especifican cuando un documento está bien formado. La utilización de una DTD (no es necesario, pero sí recomendable). Los elementos vacíos. La propia etiqueta de inicio llevará una contrabarra al final que los identificará.

    10. Ventajas de XML Un estándar libre. Un lenguaje extensible. Fácilmente procesable por humanos y software. Una tecnología ya implantada en el mercado. Diseñado para ser utilizado en cualquier lenguaje o alfabeto. Separa el contenido de su representación.

    11. Ventajas de XML

    12. Ventajas de XML Formato ideal para transacciones B2B. Permite la aplicación de técnicas de extracción de información y minería de datos. Las estrictas reglas para la composición de un documento XML permiten su fácil análisis sintáctico.

    13. Reseña histórica Desarrollado a partir de 1996, como subconjunto de SGML. Adoptado como estándar en Febrero 1998 por el World Wide Web Consortium (W3C)

    14. World Wide Web Consortium (W3C) Constituido en 1994 con el objetivo de desarrollar protocolos comunes para la evolución de Intermet. Es un consorcio de industrias internacionales, y está participado por el MIT (EEUU), INRIA (Francia), y Keio University (Japón). Cuenta con el soporte oficial de DARPA (EEUU) y la Comisión Europea.

    15. Terminología XML eXtended Mark-up Language SGML Standard Generalised Mark-up Language XML "bien-formado" Validación DTD Document Type Definition Schema XSL eXtended Stylesheet Language Parser Analizador sintáctico

    16. Terminología Elemento Atributo DOM Document Object Model RDF Resource Description Frarnework XLink, XPointer SML Simple Mark-up Language SMIL XHTML

    17. Tecnologías XML Especificación Definición de documentos Definición de estilos Enlazado de documentos Aplicaciones XML v1.0 DTD o Schemas XSL=XSLT+Xpath XLL=XLink+XPointer RDF, SMIL, HTML, etc.

    18. ¿Cómo construir documentos XML? Los fundamentos del XML son muy sencillos y en principio, para ir empezando, las únicas herramientas que nos harán falta son: Un editor de textos, con el que escribir nuestros documentos XML (el notepad en Windows y el xemacs en Linux) Un procesador o parser XML (Explorer 5.X, Mozilla, XMLWriter)

    19. Editor XML

    20. Estructura de un documento XML Aunque a primera vista, un documento XML puede parecer similar a HTML, hay una diferencia principal. Un documento XML contiene datos que se autodefinen, exclusivamente. Un documento HTML contiene datos mal definidos, mezclados con elementos de formato. En XML se separa el contenido de la presentación de forma total.

    21. Ejemplo Una forma rápida de entender la estructura de un documento XML es viendo un ejemplo:

    22. Ejemplo <?xml version='1.0'?> <album> <titulo>Nos sobran los motivos</titulo> <autor pais='ES'>SABINA</autor> <formato>MP3</formato> <localizacion>Varios CD5 </localizacion> </album>

    23. Estructura Cada documento XML posee una estructura lógica y una física. La estructura lógica del documento es una serie de declaraciones, elementos, comentarios, etc. que se indican en el documento mediante marcas explícitas. La estructura física del documento es una serie de unidades llamadas entidades, es decir, indica los datos que contendrá el documento. Las estructuras lógica y física deben anidarse de forma correcta.

    24. Estructura jerárquica de los elementos Los elementos deben seguir una estructura de “árbol” (estrictamente jerárquica). Los elementos deben estar correctamente anidados. Los elementos no se pueden superponer entre ellos.

    25. Ejemplo de XML Incorrecto <?xml version='1.0'?> <titulo>Nos sobran los motivos Correcto <?xml version='1.0'?> <titulo>Nos sobran los motivos</titulo>

    26. Estructura jerárquica Sólo puede haber un elemento raiz, en el que estén contenidos todos los demás.

    27. Ejemplo incorrecto <?xml version='1.0'?> <titulo>Nos sobran los motivos</titulo> <autor pais='ES'>SABINA</autor> <formato>MP3</formato> <localizacion>Varios CD5 </localizacion>

    28. Ejemplo correcto <?xml version='1.0'?> <album> <titulo>Nos sobran los motivos</titulo> <autor pais='ES'>SABINA</autor> <formato>MP3</formato> <localizacion>Varios CD5 </localizacion> </album>

    29. Documentos XML “bien-formados” Se dice que un documento XML está “bien-formado” cuando cumple una serie de reglas descritas en la especificación oficial de XML v1.0

    30. Ejemplo <?xml version="1.0"?> <!DOCTYPE MENSAJE SYSTEM "mensaje.dtd"> <mensaje> <remite> <nombre>L. Alfonso Ureña</nombre> <email>laurena@ujaen.es</email> </remite> <destinatario> <nombre>Reyes Magos</nombre> <email>reyesmagos@ilusion.com</email> </destinatario> <asunto>Petición Reyes</asunto> <texto> <parrafo>Queridos Reyes, bla, bla, ....</parrafo> </texto> </mensaje>

    31. El elemento y sus atributos <autor pais='ES'>SABINA</autor>

    32. Etiquetas Todas las etiquetas tienen que estar debidamente “cerradas” es decir, con una etiqueta de cierre que se corresponda con la de apertura. Las etiquetas “vacías” (es decir, sin contenido) tienen una sintaxis especial.

    33. Ejemplos de XML incorrecto <automovil> Mercedes <modelo tipo="220 CDI"> <automovil> Alfa Romeo <modelo tipo="156 JTD"> <automovil> Volkswagen <modelo tipo="Golf">

    34. Ejemplos de XML incorrecto <automovil> Mercedes </automovil> <modelo tipo="220 CDI"> <automovil> Alfa Romeo </automovil> <modelo tipo="156 JTD"> <automovil> Volkswagen </automovil> <modelo tipo="Golf">

    35. Versión más correcta <automovil> Mercedes </automovil> <automovil> Alfa Romeo </automovil> <automovil> Volkswagen </automovil>

    36. Atributos Los valores de los atributos de los elementos siempre deben estar marcados con las comillas dobles (“) o sencillas (‘) <modelo tipo="220 CDI"> Esto es correcto </modelo> <modelo tipo=‘156 JTD’> Esto es correcto </modelo> <modelo tipo=Golf TDI> Esto es incorrecto </modelo>

    37. Nombrando cosas Un nombre de elemento, atributo, entidad etc. empieza por una letra, y continua con letras, dígitos, guiones, rayas, punto o dos puntos. El acrónimo “XML” (o “xml” o “xMl”, etc.) no pueden usarse como caracteres iniciales de un nombre de elemento, atributo, entidad, etc.

    38. Nombrando cosas Según la especificación XML 1.0 Un nombre [empieza] con una letra o uno o más signos de puntuación, y [continúa] con letras, dígitos, guiones, rayas, dos puntos o puntos, denominados de forma global como caracteres de nombre. Los nombres que empiezan con la cadena "xml", se reservan para la estandarización de esta o de futuras versiones de esta especificación.

    39. Tipo de letra y espacios en blanco El XML es sensible al tipo de letra utilizado (“case-sensitive”), es decir, trata las mayúsculas y minúsculas como caracteres diferentes. no es lo mismo <automovil> que <Automovil> La especificación XML 1.0 permite el uso de esos “espacios en blanco” para hacer más legible el código, y en general son ignorados por los procesadores XML. En otros casos, los “espacios en blanco” resultan muy significativos, por ejemplo, para separar las palabras en un texto, o separar líneas de párrafos diferentes.

    40. Marcado y datos Las construcciones como etiquetas, referencias de entidad y declaraciones se denominan “marcas” (mark-up). Estas son las partes del documento que el analizador sintáctico (parser) espera comprender. El resto del documento, que se encuentra entre las “marcas”, son los datos que resultan entendibles por las personas.

    41. Marcado y datos Es sencillo reconocer las marcas en un documento XML. Son aquellas porciones que empiezan con “<” y acaban con “>” En el caso de las referencias de entidad, empiezan por “&” y acaban con “;”.

    42. Ejercicio Realice un documento XML sobre libros de una biblioteca, que tenga título, autor, ISBN, editorial, año, número de ejemplares, biblioteca de destino, breve descripción del libro (las etiquetas las puede llamar como quiera).

    43. Estructura

    44. Prólogo Los documentos XML pueden empezar con unas línea que describe: versión de XML (de momento sólo 1.0), la codificación de carácter (US-ASCII , UTF-8, UCS-2, EUC-JP, Big5, ISO-8859-1 hasta ISO- 8859-7). En general, y para uso con lenguajes europeos (incluyendo el juego de caracteres especiales del castellano, usamos UTF-7 o ISO-8859-1) y algunas otras cosas Es opcional

    45. Prólogo La segunda línea, o “declaración de tipo de documento”, define qué tipo de documento estamos creando para ser procesado correctamente. Definimos que Declaración de Tipo de Documento (DTD – Document Type Definition) valida y define los datos que contiene nuestro documento XML.

    46. Prólogo En ella se define el tipo de documento, y dónde encontrar la información sobre su Definición de Tipo de Documento, mediante un identificador público (PUBLIC) que hace referencia a dicha DTD, o mediante un Identificador Universal de Recursos (URI) precedido por la palabra SYSTEM.

    47. Ejemplos de Prólogos <?xml version="1.0" encoding="UTF-7" ?> <?xml version="1.0" encoding=" US-ASCII" ?> <?xml version="1.0" encoding="UTF-7" ?> <!DOCTYPE biblioteca SYSTEM “mensaje.dtd” > <?xml version="1.0" encoding="UTF-7" ?> <!DOCTYPE ejemplo SYSTEM "http://www.ejemplos.xml/ejemplo.dtd">

    48. Validez de un documento XML Un documento XML es válido si tiene asociado una DTD y el documento cumple las restricciones que la DTD expresa.

    49. Elementos Son los objetos esenciales de un documento XML. Los elementos XML pueden tener contenido (más elementos, caracteres, o ambos a la vez), o bien ser elementos vacíos. Un elemento con contenido: <vehiculo> J 8975 AF </vehiculo> <caracteristica marca="Alfa Romeo" > Mal estacionado</caracteristica>

    50. Elementos Siempre empieza con una <etiqueta> que puede contener atributos o no, y termina con una </etiqueta> que debe tener el mismo nombre. Al contrario que HTML, en XML siempre se debe "cerrar" un elemento. Hay que tener en cuenta que el símbolo "<" siempre se interpreta como inicio de una etiqueta XML. Si no es el caso, el documento no estará bien-formado.

    51. Elementos vacíos Un elemento vacío, es el que no tiene contenido (claro). <caracteristica marca="Alfa Romeo“/> <parametro /> Al no tener una etiqueta de "cierre" que delimite un contenido, se utiliza la forma <etiqueta/>, que puede contener atributos o no.

    52. Atributos Son la parte básica y el objeto más utilizado en la definición de documentos XML. Como se ha mencionado antes, los elementos pueden tener atributos, que son una manera de incorporar características o propiedades a los elementos de un documento. El atributo consta de dos partes: La propiedad del elemento El valor de la propiedad <vehiculo marca="Alfa Romeo" modelo="156 JTD" color="verde">Mal estacionado</vehiculo>

    53. Atributos Al igual que en otras cadenas literales de XML, los atributos pueden estar marcados entre comillas verticales ( ' ) o dobles ( " ). Cuando se usa uno para delimitar el valor del atributo, el otro tipo se puede usar dentro. <vehiculo marca="Alfa Romeo" modelo="156 JTD" color=‘verde’>Mal estacionado</vehiculo>

    54. Atributos Un elemento con contenido, puede modelarse como un elemento vacío con atributos. Un concepto se puede representar de muy diversas formas, pero una vez elegida una, es aconsejable fijarla en el DTD, y usar siempre la misma dentro de un documento XML.

    55. Atributos <libro> <titulo>Seguridad para Intranet e Internet</titulo> <autor>E. Amoroso </autor>   </libro> <libro autor="E. Amoroso">Seguridad para Intranet e Internet</libro> <libro titulo="Seguridad para Intranet e Internet" autor="E. Amoroso"/>

    56. Entidades predefinidas En XML 1.0, se definen cinco entidades para representar caracteres especiales y que no se interpreten como marcado por el procesador XML. Por ejemplo, podemos usar el carácter "<" sin que se interprete como el comienzo de una etiqueta XML.

    57. Entidades predefinidas

    58. Ejemplo <?xml version="1.0" encoding="UTF-7" standalone='yes'?> <ejemplos> <descripcion>Lo siguiente es un ejemplo de HTML.</descripcion> <ejemplo> <HTML> <HEAD> <TITLE>Rock & Roll</TITLE> </HEAD> </ejemplo> </ejemplos>

    59. Secciones CDATA Las secciones CDATA (Character Data) permiten especificar datos, utilizando cualquier carácter, especial o no, sin que se interprete como marcado XML. La razón es que a veces es necesario para los autores de documentos XML, poder leerlos fácilmente sin tener que descifrar los códigos de entidades. Especialmente cuando son muchas. Las secciones CDATA empiezan por la cadena "<![CDATA" y terminan con la cadena "]]>" y sólo ésta última se reconoce como marca. No se pueden anidar secciones CDATA.

    60. Ejemplo CDATA <ejemplo> <HTML> <HEAD> <TITLE>Rock & Roll</TITLE> </HEAD> </ejemplo>

    61. Ejemplo CDATA <ejemplo> <![CDATA[ <HTML> <HEAD> <TITLE>Rock & Roll</TITLE> </HEAD> ]]> </ejemplo>

    62. Comentarios A veces es conveniente insertar comentarios en el documento XML, que sean ignorados por el procesado de la información y las reproducciones del documento. Los comentarios tienen el mismo formato que los comentarios de HTML. Es decir, comienzan por la cadena "<!--" y terminan con "-->". Se pueden introducir comentarios en cualquier lugar de la instancia o del prólogo, pero nunca dentro de las declaraciones, etiquetas, u otros comentarios.

    63. Comentarios (ejemplo) ... <!-- Esto es un ejemplo de comentario --> ... <!-- esto es el final del documento --> ... <!-- Este vehículo es sancionado --> <vehiculo marca="Alfa Romeo" modelo="156 JTD" color="verde">Mal estacionado</vehiculo> ...

    65. Aplicaciones XML Desarrollo de portales

    66. Recapitulación Definición XML: El formato universal para documentos y datos estructurados en Internet.

    67. Características –W3C– (recapitulación) XML es un estándar para escribir datos estructurados en un fichero de texto. XML parece HTML pero no lo es. XML está en formato texto, pero no para ser leído. XML consta de una familia de tecnologías. XML es prolijo, pero eso no supone un problema. XML es nuevo, pero no tanto. XML no requiere licencias, es independiente de la plataforma, y tiene un amplio soporte.

    68. Enlaces Recomendados Robin Cover's XML Information http://www.oasis-open.org/cover/ Sin duda alguna la guía más completa sobre SGML/XML que nos podemos encontrar en Internet. Free XML software http://www.stud.ifi.uio.no/~larsga/linker/XMLtools.html Estupenda recopilación de software gratuito relacionado con XML. Esta página esta mantenida por Lars Marius Garshol.

    69. Enlaces Recomendados XMLSOFTWARE http://www.xmlsoftware.com/ Estupenda página sobre software XML mantenida por James Tauber. Introducción a XML en castellano http://ibium.com/alf/xml/index.asp

More Related