1 / 34

Introducción a XML

Universidad Técnica Federico Santa María Departamento de Electrónica ELO-330 Programación de Sistemas. Introducción a XML. XML. XML (Extensible Markup Language) es un subconjunto del SGML (Standard Generalized Markup Language).

sutton
Download Presentation

Introducción a XML

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. Universidad Técnica Federico Santa MaríaDepartamento de ElectrónicaELO-330 Programación de Sistemas IntroducciónaXML

  2. XML • XML (Extensible Markup Language)es un subconjunto del SGML (Standard Generalized Markup Language). • XML es un metalenguaje con el que se pueden definir otros lenguajes de etiquetas. • Los documentos XML tienen formato de texto. • Desde febrero de 1998 es una recomendación del W3C (World Wide Web Consortium).

  3. Aplicaciones basadas en XML En general, XML puede servir en tres casos: • Para contener información • Para definir el contenido de los mensajes • Para describir el contenido de los mensajes

  4. Aplicaciones basadas en XML Ejemplo Real de Método Antiguo Transmisión de información 0148I49A052209020622052002090206VANADU ADUANA EX JORGE CABE 02649000868610148I49N1506062002GEORGINA OLAVARRIA Y CIA.LTDA.AV.NUEVA COSTANERA 3730, VITACURA1313203788508204JORGE OLAVARRIA ROMUSSI 024845591BRU TEXTILES NV ZANDVOORSTRAAT 12 D B-2800 MECHELEN 51400000000000000000000000000000000000000000000000000000000514BELGICA 514BELGICA 04AMSTERDAM T621AEROP.A.M.BENIT992RAEROSAN S.A. (SA101805200200000000012205200200000000 22052002 2205200200000000000000000003649000868610148I49MARTINAIR HOLLAND 51596674490148110090000432 180520021922376 17052002ABX LOGISTICS 7996876070000000000000000000000000000000GENERAL 01004010060000000026921013000000004327300100000000312480010000000001084400000120000000000625000000000570000000004271700000000000000 04649000868610148I49001TEJIDO DE FILAMENTO CONTINUO DAE WON UNITECH-F 100 PCT. POLIESTER TENIDOS, SIN TEXTURIZAR TEJIDO DE TRAMA Y URDIMBRE 00000000000000000004385006E000000712611170000000000000 540761130000000427170007002230000000029900018000000178+0000000082270000000000000 0000000000000000000000000 0000000000000000000000000 000000000000

  5. Aplicaciones basadas en XML Ejemplo real en Aduana de Chile <DSC> <codproducto>YNUA00385</codproducto> <FechaCreacionUsuario>2002-07-15 00:00:00.0</FechaCreacionUsuario> <VersionProducto>2</VersionProducto> <despachador>A54</despachador> <RutCliente>86223700</RutCliente> <DigitoVerificador>5</DigitoVerificador> <DescripcionDeclarada> ; SIERRA ALTERNATIVA; ALBER; KERF GANGSAW; DE 420MM X 13MM X 40MM X 0,80MM., PARA MAQUINA PARA TRABAJAR LA MADERA </DescripcionDeclarada> <FechaCargaAduana>2002-08-14 16:27:58.0</FechaCargaAduana> <RESPUESTAS> <respuesta> ACEPTADO </respuesta> </RESPUESTAS> </DSC>

  6. Aplicaciones basadas en XML • Personalización de la WEB (lenguaje propio) Cada usuario (o grupo de usuarios) puede crear su propio lenguaje para el formato de datos y documentos, su propio vocabulario, según sus necesidades, siguiendo las reglas de XML. • Aplicaciones XML para el comercio electrónico(intercambio) Aunque inicialmente XML se definió para separar contenido de presentación, ha resultado esencial para el intercambio de información estructurada a través de Internet

  7. Aplicaciones basadas en XML • Gestión de la información / conocimiento (visual) Si etiquetamos la información y a cada usuario se le proporciona una serie de etiquetas de interés, se podría resaltar la información que le es interesante, frente a la que no es relevante. • Descargar trabajo en el Servidor (desaturación) Por medio del Modelo de Objetos de Documentos (DOM), podemos evitarle trabajo al servidor, espera al cliente y no saturar tanto la red.

  8. Aplicaciones basadas en XML • Buscador WEB (velocidad en búsquedas) Si disponemos de un sitio donde toda la información se encuentre etiquetada en documentos XML, las búsquedas serían mucho más efectivas, ya que se conjuga la potencia de la búsqueda indexada junto la búsqueda semántica. • Intercambio de información (seguridad, velocidad gestiones) Si contratamos a una empresa y nos facilitan la estructura de los datos que vamos a recibir (DTD/Schema), sabremos en todo momento qué tipos de documentos XML estamos recibiendo, y podremos tratarlos de la forma que deseemos.

  9. Cómo trabajar con XML • Navegadores (Browsers) • Editores XML • Parsers XML • Editores XSL

  10. Cómo trabajar con XML Un documento XML tiene dos estructuras, una lógica y otra física. • Físicamente, un documento XML puede consistir en una o más unidades de almacenamiento, llamadas entidades. • Las entidades tienen contenido y están identificadas por un nombre. • Cada documento XML contiene una entidad, llamada entidad documento, que sirve como punto de partida para el procesador XML y que puede contener el documento completo.

  11. Cómo trabajar con XML Entidades Predefinidas • En XML 1.0, se definen cinco entidades para representar caracteres especiales y que no se interpreten como marcado en el procesador XML. Es decir, por ejemplo, así podemos usar el carácter "<" sin que se interprete como el comienzo de una etiqueta XML. Entidad Carácter &amp; & &lt; < &gt; > &apos; ' &quot; "

  12. Cómo trabajar con XML • Lógicamente, esta estructurado en forma de árbol, con una raíz a partir de la cual se organiza la información. • El documento está compuesto de declaraciones, elementos, comentarios, referencias a caracteres e instrucciones de procesamiento, todos los cuales están están indicados por una marca explícita. Ej.<aviso tipo="emergencia" gravedad="mortal">Que no cunda el pánico</aviso>

  13. Cómo trabajar con XML • Los elementos pueden tener atributos, que son una manera de incorporar características o propiedades a los elementos de un documento. Ej. un elemento "chiste" puede tener un atributo "tipo" y un atributo "calidad", con valores "vascos" y "bueno" respectivamente. <chiste tipo="vascos" calidad="bueno"> Esto es un día que Patxi y Josu van paseando... </chiste>

  14. Cómo trabajar con XML • Cada documento XML contiene uno o más elementos, cuyos limites están delimitados por etiquetas de comienzo y de final o, en el caso de elementos vacíos, por una etiqueta de elemento vacío. • Cada elemento tiene un tipo, identificado por un nombre, denominado identificador genérico, y puede tener un conjunto de especificaciones de atributos.

  15. Cómo trabajar con XML La "declaración de tipo de documento" define qué tipo de documento estamos creando para ser procesado. Es decir, definimos que declaración de tipo de documento (DTD) valida y define los datos que contiene nuestro documento XML. • Un identificador público (PUBLIC): que hace referencia a dicha DTD. El tipo de documento • Identificador universal de recursos (URI): precedido de la palabra SYSTEM. Dónde encontrar la información sobre su Definición • Ej. <!DOCTYPE MESAJE SYSTEM "mesaje.dtd"> <!DOCTYPE HTML PUBLIC "-/ /W3C/ /DTD HTML 3.2 Final/ /EN"> <!DOCTYPE LABEL SYSTEM “http://azuaje.ulpgc.es/dtds/label.dtd">

  16. Estructura de XML • Un documento bien formado es aquel documento que cumple con la especificación de XML 1.0, es decir que sea sintáctica mente correcto. • Un documento XML bien formado debe seguir algunas reglas básicas: • Debe contener uno o más elementos. • Debería comenzar con una declaración XML. Ej. <?xml version="1.0"standalone="yes"?> (explicación) • Sólo puede haber un elemento raíz.

  17. Estructura de XML • Cumple todas las restricciones que proporciona su especificación a través del DTD. • Toda etiqueta abierta hay que cerrarla. Para cada etiqueta de inicio debe existir una etiqueta de termino. Las únicas etiquetas que van solas son las etiquetas vacías. Ej. < Nombre> Rodrigo </Nombre> <xsd:attribute name="xxx" type="yyy"/>

  18. Estructura de XML • Es sensible a mayúsculas y minúsculas, las etiquetas de inicio y de termino se tienen que escribir igual. • No se pueden intercalar etiquetas. Ej. <li>HTML <b> permite <i> esto </b> </i>. <li>En XML la <b> estructura <i> es </i> jerárquica </b>.</li> • Una etiqueta puede tener atributos cerrados entre comillas. Ej. <xsd:attribute name=“idioma"/> • El nombre de las etiquetas empiezan con una letra, o con uno o más signos de puntuación. • Los comentarios van encerrados.

  19. Estructura de XML • Un ejemplo de un documento XML bien formado: <?xml version="1.0" standalone="yes"?> <biblioteca> <libro call_no="PZ3.S8195Gr6"> <cover href="grapes.gif" alt="Grapes of Wrath"/> <titulo>The Grapes of Wrath</titulo> <autor> <apellido>Steinbeck</apellido> <nombre>John</nombre> </autor> <publicación>Viking Press</publicación> <año_pub>1939</año_pub> </libro> </biblioteca>

  20. ¿XERCER? • Xercer es un parser XML, es decir, un analizador del archivo XML, que establece si éste es válido. • Xercer es desarrollado y mantenido por la organización apache. • Es multiplataforma.

  21. Xerces-J • Característica: • 100% en conformidad con XML Schema processor

  22. Xerces-J Xerces2 Java Parser 2.6.2, apoya los siguientes estándares y APIs: • eXtensible Markup Language (XML) 1.0 Third Edition Recommendation • Namespaces in XML Recommendation • eXtensible Markup Language (XML) 1.1 First Edition Recommendation • Namespaces in XML 1.1 Recommendation • Document Object Model (DOM) Level 2 Core, Events, and Traversal and Range Recommendations • Simple API for XML (SAX) 2.0.1 Core, and Extensions • Java APIs for XML Processing (JAXP) 1.2 • XML Schema 1.0 Structures and Datatypes Recommendations

  23. Xerces-J • La mayor parte de los Parser pueden trabajar de dos formas: • de forma independiente. • usándolos como librerías desde lenguajes de programación. • Xercer-J no es la excepción: • se puede usar stand-alone. • o como una librería xerces.jar, cuyos objetos se pueden instanciar desde los programas.

  24. Parser en Línea • XParse de Jeremie

  25. Conclusiones Perspectivas futuras de XML . • Existen herranmientas que apoyan el desarrollo y la implementación de XML, entre ellas se encuentra Xercer, el cual esta implementado para ser usado con Java. • XML tiene un muy amplio campo de aplicaciones, que le permite seguir creciendo como ayuda a los usuarios de internet . • Agentes

  26. XML, a pesar de su rápido desarrollo, tiene un largo camino hacia su total madurez. Esta parte explora desde el punto de vista técnico y político el futuro de XML y estándares asociados tanto dentro de W3C como fuera de ella.

  27. FIN al

  28. DTD • Un "Document type definition“, DTD, es una declaración en un documento de SGML o de XML que especifiqua apremios en la estructura del documento. Puede ser incluido dentro del archivo de documento, pero se almacena normalmente en un archivo separado de ASCII-text. La sintaxis del DTD de SGML y de DTD de XML son muy similares, pero no idénticos

  29. Example Un ejemplo de un muy simple DTD de XML para describir un lista de personas es dado a continuación: <!ELEMENT people_list (person*)> <!ELEMENT person (name, birthdate?, gender?, socialsecuritynumber?)> <!ELEMENT name (#PCDATA) > <!ELEMENT birthdate (#PCDATA) > <!ELEMENT gender (#PCDATA) > <!ELEMENT socialsecuritynumber (#PCDATA) > Tomando esto línea por línea, dice: • Una "people_list" es un elemento que contiene muchos elemetos "person". El "*" denota que pueden haber 0, 1 o muchos elementos "person". • Un elemento "person" contiene los elementos "name", "birthdate", "gender" y "socialsecuritynumber". El "?" indica que un elemento es opcional. El elemento "name" no tiene "?", entonces "person" debe contener un elemento"name". • Un elemento "name" contiene información. • Un elemento "birthdate" contiene información. • Un elemento "gender" contiene información. • Un elemento "socialsecuritynumber" contiene información.

  30. Un ejemplo de un archivo XML, el cual usa el DTD <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE people_list SYSTEM “example.dtd"> <people_list> <person> <name>Fred Bloggs</name> <birthdate>27/11/2008</birthdate> <gender>Male</gender> </person> </people list> AplicacionesEstructura

  31. XML DOM ¿Cómo funciona XML DOM? • Los archivos _XML, son enviados a la máquina cliente, en la cual, gracias a DOM, se pueden realizar las operaciones pedidas por los clientes. Una vez, que el cliente termina sus requerimientos, la información es reenviada, al servidor. Gracias a DOM, no hay pérdida, ni desorden en los datos enviados. Aplicaciones

  32. Metadato • Metadatos: información sobre los datos. • Proporcionan descriptores, propiedades, información acerca de otros objetos (textos, contenidos multimedia, manuales, programas, personas, etc.) para simplificar su uso y su gestión o facilitar su localización. • En las bibliotecas existen desde tiempos inmemoriales en forma de fichas de catálogo, que facilitan la localización de los documentos. • En Internet esto no es tan fácil: los metadatos deben ser adecuados para la interpretación tanto por parte de las personas como por los robots de búsqueda. • Además deben ser tan fáciles de crear que cualquier autor pueda describir el contenido de sus páginas: accesibilidad y utilidad.

  33. Metadato La etiqueta META del HTML. Ej: se usa “keyworks” para indexar y devuelve description en lugar de las dos primeras líneas del documento. <META NAME="description" CONTENT="XML, formatos para Internet"> <META NAME="keyworks" CONTENT="XML, Internet, ebusiness">

  34. Declaración • version: Indica la versión de XML usada en el documento. Es obligatorio ponerlo, a no ser que sea un documento externo a otro que ya lo incluía. • encoding: La forma en que se ha codificado el documento. Se puede poner cualquiera, y depende del parser el entender o no la codificación. Por defecto es UTF-8, aunque podrían ponerse otras, como UTF-16, US-ASCII, ISO-8859-1, etc. No es obligatorio salvo que sea un documento externo a otro principal. • standalone: Indica si el documento va acompañado de un DTD ("no"), o no lo necesita ("yes"); en principio no hay porqué ponerlo, porque luego se indica el DTD si se necesita Volver

More Related