La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Conceptos Generales XML.

Presentaciones similares


Presentación del tema: "Conceptos Generales XML."— Transcripción de la presentación:

1 Conceptos Generales XML

2 Lenguaje XML (eXtensible Markup Language)
Definido por la W3C, a traves de una recomendación (World Wide Web Consortium: Comunidad internacional que desarrolla estándares para la Web) Su desarrollo se comenzó en 1996 y la primera versión salió a la luz el 10 de febrero de 1998. Al igual que HTML, es un Lenguaje de Marcas que se deriva del SGML Las etiquetas no son predefinidas, las define el usuario Es auto descriptivo, permitiendo al receptor entender la información recibida y, por lo tanto, procesarla Tiene el formato de un archivo de texto plano, lo que facilita enormemente la transferencia de información, logrando independencia con respecto a las diferentes plataformas y protocolos Es el estándar para la representación e intercambio de datos

3 Lenguaje XML Extensibilidad: Estructura:
formato extensible no tiene etiquetas predefinidas Estructura: formato abierto no necesariamente compacto (no fue diseñado para ahorrar espacio en disco, o temas relacionados al ancho de banda) se comprime bastante bien usando herramientas comunes de compactación de datos Flexibilidad y adhesión opcional a un esquema específico: requerimientos de sintaxis obligatorios opcionalmente puede adherir a una estructura específica (DTD (Data Type Definition) y Esquema XML (Schema Definition)

4 Lenguaje XML XML es un metalenguaje, ya que permite definir otros lenguajes que definen la estructura y el contenido de documentos Lenguajes basados en XML: Chemical Markup Language (CML) Mathematical Markup Language (MathML) Channel Definition Format (CDF) Synchronized Multimedia Integration Language (SMIL) XHTML Scalable Vector Graphics (SVG) SOAP y WSDL VoiceML Wireless Markup Language (WML) Es el estándar para la representación e intercambio de datos

5 Orígenes SGML (Standard Generalized Markup Language)
HTML (Hyper-Text Markup Language) XML (eXtensible Markup Language)

6 Orígenes HTML XML Presentación de Datos Representación de Datos
Etiquetas Fijas Usado para generar paginas web XML Etiquetas definidas por el usuario Usado para representar datos Presentación de Datos Representación de Datos

7 Familia de Tecnologías
Entre otras, se mencionan aquí: DTD (Document Type Data) y XSD (Esquema XML): Lenguaje que permiten definir una estructura particular para documentos XML. XPath: Es un lenguaje que permite buscar y seleccionar teniendo en cuenta la estructura jerárquica del XML. XQuery: Es un lenguaje de consulta diseñado para extraer y manipular información con formato XML. Tiene una forma similar al lenguaje SQL. XSL (eXtensible Stylesheet Language): Es un lenguaje declarativo, basado en XML, usado para definir la transformación y presentación de documentos XML en otros documentos XML, de texto o HTML. SQL/XML: Es una extensión del lenguaje SQL, estándar de las base de datos relacionales, que le confiere la capacidad de manipular datos XML.

8 Estructura de los datos XML
Consideremos la siguiente expresión: APLICACIÓN No podría capturar la semántica asociada ESPECIALISTA EN EL TEMA HC es el número de historia clínica de un paciente, Neumología es un punto de asistencia ambulatorio para las consultas externas de un hospital y Bronquitis aguda es un diagnóstico. "Con fecha , remito el paciente J.J.C. HC a Neumología por presentar bronquitis aguda con broncoespasmo"

9 Estructura de los datos XML
Ahora, con formato XML: Las marcas XML añaden el contexto necesario para que los datos contenidos en el documento puedan ser entendidos y, por lo tanto procesados, tanto por personas como por aplicaciones informáticas. <Derivacion> <FechaEntrada> </FechaEntrada> <Paciente>HC334455</Paciente> <Servicio>Neumología</Servicio> <Diagnostico>bronquitis aguda</Diagnostico> </Derivacion>

10 Estructura de los datos XML: Elementos
El constructor fundamental es el elemento. Un elemento está identificado por una etiqueta de inicio, de la forma <etiqueta>, y por una etiqueta final coincidente, de la forma </etiqueta>. Ejemplo: <titulo> Fundamentos de Bases de Datos</titulo> Así, este elemento está compuesto por: el par de etiquetas de inicio <titulo> y finalización </titulo> y el texto que aparece entre ellas, y representa el dato asociado a ese elemento

11 Estructura de los datos XML : Elementos
Las etiquetas: Deben comenzar con una letra, guión de subrayado (_), o dos puntos (:). No pueden contener: espacios en blancos, Signo de mayor: >, Signo de menor: <,ampersand: &, Apóstrofe: ‘, comilla: “ (*) Pueden estar seguidas por cualquier número de letras, dígitos, guiones y puntos adicionales. Existe una distinción entre mayúsculas y minúsculas (*) Estos caracteres prohibidos se reemplazan por entidades o se incluyen en secciones CDATA.

12 Estructura de los datos XML : Elementos
Las etiquetas pueden estar anidadas, es decir, los elementos definidos pueden estar contenidos dentro de otros elementos (subelementos). Es decir, cada etiqueta que abre debe estar aparejada con una única etiqueta que cierra en el contexto del elemento en cuestión. Anidamiento correcto <ETIQ1> … <ETIQ2>… <ETIQ3> … </ETIQ3> … </ETIQ2> … </ETIQ1> Anidamiento incorrecto <ETIQ1> … <ETIQ2>… <ETIQ3> … </ETIQ1> … </ETIQ3> … </ETIQ2>

13 Estructura de los datos XML : Atributos
Un elemento puede contener atributos, éstos representan propiedades o características de dichos elementos. Los atributos se definen dentro de las etiquetas de inicio. De la forma, <etiqueta atributo1 =”valor” > </etiqueta>. Ejemplo: <libro ISBN=“ ”>Fundamentos de Bases de Datos</libro>

14 Estructura de los datos XML : Atributos
El valor asociado a un atributo debe estar encerrado entre comillas simples o dobles. Un elemento puede tener varios atributos, pero el nombre de cada atributo puede aparecer sólo una vez. Ejemplo: <libro ISBN=“ ” Ejemplares=“10”>Fundamentos de Bases de Datos</libro>

15 Estructura de un documento XML: Documento Bien Formado
Un sólo elemento raíz Etiquetas adecuadas anidadas correctamente Atributos no repetidos dentro de los elementos

16 Estructura de un documento XML
Ejemplo: Único Elemento Raíz Elemento libro Etiquetas correctas Etiqueta de apertura y cierre Elemento libro Correcto anidam. Documento XML bien formado

17 Estructura de un documento XML
Proceso de Verificación (Bien Formado) de un Documento Documento Analizado o Parseado Editor o Analizador XML (Parser) Error!!! Documento mal formado DOM, SAX XML Copy Editor Altova XMLSpy

18 Estructura de un documento XML
Otras líneas dentro del documento XML

19 Estructura de un documento XML
La estructura general de un documento XML está formada por dos partes: Prólogo: Declaración XML Declaración del tipo de documento Cuerpo

20 Estructura de un documento XML: Prólogo
Declaración XML (opcional): Indica la versión de XML utilizada en el documento Informa la codificación empleada para representar los caracteres Indica si el documento es autónomo o no Ejemplo: <?xml versión= “1.0” encoding= “ISO ” standalone= “yes”?>  Valor por defecto encoding "UTF-8” Valor por defecto standalone “no” Declaración del tipo de documento (opcional) <!DOCTYPE biblioteca SYSTEM "D:\biblioteca.dtd">

21 Estructura de un documento XML: Prólogo
Declaración del tipo de documento: Definición de la DTD dentro del documento XML DTD Interna

22 Estructura de un documento XML: Prólogo
Declaración del tipo de documento: standalone=“no” (valor por defecto) DTD Externa Privada

23 Estructura de un documento XML: Prólogo
Declaración del tipo de documento: DTD Externa Publica

24 Estructura de un documento XML
La estructura general de un documento XML está formada por dos partes: Prólogo Cuerpo

25 Estructura de un documento XML: Cuerpo
Está constituido por todo lo que aparece entre la etiqueta de inicio y final del elemento raíz

26 Documentos XML Dentro de los documentos XML se pueden encontrar:
Instrucciones de procesamiento (Processing Instructions – PI) Declaraciones de tipo de documento Comentarios Elementos y atributos Referencias a entidades Secciones CDATA

27 Documentos XML: PI Señalan alguna referencia o indicación a la aplicación que lo usará. Una instrucción de procesamiento comienza con <? y termina con ?>. XML permite el uso de instrucciones de procesamiento en cualquier lugar del documento. Ejemplos: <?xml-stylesheet type=”text/xsl” href=”5-2.xsl”?> Indica que al documento XML se le asocia una hoja de estilo <?xml version="1.0"?> Como ya se dijo, indica la versión de XML utilizada en el documento

28 Documentos XML: Comentarios
Los comentarios no se procesan. Están delimitados por “<!--" y “-->” Ejemplo: <!-- Esto es un comentario -->

29 Documentos XML: Elementos y Atributos
Los elementos aportan estructura semántica al documento. Se delimitan por etiquetas de apertura, cierre y etiquetas sin elementos interiores (elemento vacio). Las etiquetas de apertura y las vacías suelen venir acompañadas de atributos, que parametrizan el elemento. El valor de los atributos siempre se encierra entre comillas, dobles o simples.

30 Documentos XML: Referencias a entidades
Las referencias a entidades sirven para insertar un determinado contenido definido previamente. Entidades predefinidas: Se utilizan para representar algunos caracteres reservados. & & < < > > &apos; ’ " “ Ejemplo: Se quiere representar el nombre de la empresa CO&CO <empresa>CO&CO</empresa>

31 Documentos XML: Sección CDATA
La sección CDATA permite colocar texto que necesita no ser procesado por el editor. La sintaxis es la siguiente: <![CDATA[Texto deseado]]> No se pueden anidar secciones CDATA El texto puede utilizar cualquier carácter (reservado o no) Ejemplo: <![CDATA[if (c<10)]]> <![CDATA[<saludo>Hola, mundo!</saludo>]]>

32 Documentos XML: Espacio de Nombres
No son obligatorios en todos los documentos Son útiles y esenciales cuando se utilizan etiquetas de diferentes orígenes, o que se quieran procesar de manera diferente Resuelven conflictos cuando se utiliza la misma etiqueta para diferentes objetos Por ejemplo, resulta ambiguo que los elementos personas, páginas y libros tengan el subelemento título.

33 Documentos XML: Espacio de Nombres
Los espacios de nombres solucionan problemas de homonimia (elementos diferentes con el mismo nombre). Eliminan ambigüedades calificando el nombre de los elementos. Ejemplo: Supongamos que en un mismo documento se debe registrar la capital geográfica de un país y el capital que una empresa invirtió en ese país. Es decir, necesitamos diferentes datos con nombres idénticos (en este caso "capital“). <inversiones> <pais nombre=“España”> <capital> Madrid </capital> <capital> € </capital> </pais> </inversiones>

34 Documentos XML: Espacio de Nombres
La solución al problema es contextualizar cada elemento a un vocabulario especifico que permita contextualizar el elemento. Así, para el ejemplo planteado podríamos considerar: Vocabulario geográfico (geog) Vocabulario propio de la bolsa (bolsa) Entonces para identificar cada elemento unívocamente debiéramos calificar cada etiqueta con el nombre de su “espacio de nombres”: <inversiones> <pais nombre=“España”> <geog:capital> Madrid </capital> <bolsa:capital> € </capital> </pais> </inversiones>

35 Documentos XML: Espacio de Nombres
El identificador del espacio de nombres debe ser único ¿Cómo asegurarlo? Utilizando URIs (Uniform Resource Identifiers) como identificadores Volviendo al ejemplo: Vocabulario geográfico ( Vocabulario propio de la bolsa ( )

36 Documentos XML: Espacio de Nombres
Ejemplo con las URIs: < : inversiones> < : pais nombre=“España”> < :capital> Madrid </ : capital> < :capital> € </ capital> </ : pais> < : /inversiones> No es cómodo usar las URIs en cada etiqueta, entonces se usan alias que sean mas cómodos (más cortas)

37 Documentos XML: Espacio de Nombres
Ejemplo usando alias: <bolsa:inversiones xmlns:bolsa=“ xmlns:geo=“ <geo:pais geo:nombre=“España”> <geo:capital> Madrid </geo:capital> <bolsa:capital> </bolsa:capital> </geo:pais> </bolsa:inversiones> El alcance de un alias para un espacio de nombres comprende desde la etiqueta de inicio de un elemento XML, en la que se declara, hasta la etiqueta final de dicho elemento XML. Alias/Prefijo

38 Documentos XML: Espacio de Nombres
Ejemplo usando espacio de nombres por defecto: <inversiones xmlns=“ xmlns:geo=“ <geo:pais geo:nombre=“España”> <geo:capital> Madrid </geo:capital> <capital> </capital> </geo:pais> </inversiones> En este caso las etiquetas sin prefijo corresponden al espacio de nombres por defecto que es Alias/Prefijo Sin Alias

39 Document Object Model (DOM)
Documentos XML son tratados como un árbol de nodos Cada elemento es un “nodo” Los elementos hijos, los atributos y el texto contenido dentro de un elemento son subnodos

40 Document Object Model (DOM)
Características: Documento se carga totalmente en memoria en una estructura de árbol Ventaja: fácil acceder a datos en función de la jerarquía de elementos, así como modificar el contenido de los documentos e incluso crearlos desde cero. Desventaja: coste en tiempo y memoria que conlleva construir el árbol

41 Document Object Model (DOM)
Ejemplo: <?xml version="1.0" encoding="UTF-8"?> <DOCUMENT> <GREETING>Hello from XML</GREETING> <MESSAGE>Welcome to Programing XML in Java</MESSAGE> </DOCUMENT>

42 Estructuración de los datos y XML
Es posible clasificar los datos según su nivel de estructuración: Datos estructurados: Representados en un formato estricto, como son los contenidos en las tablas relacionales. Datos desestructurados: Hay una indicación muy limitada del tipo de datos (documentos de texto, archivos de video). Datos semi-estructurados o poco estructurados: Se presentan los datos que tienen una cierta estructura pero no todos tienen exactamente la misma estructura (grafos). XML permite describir y representar datos semi-estructurados de una manera más flexible que el modelo de datos relacional

43 SGBDs con soporte XML Los datos XML son ampliamente usados, así es necesario almacenarlos y recuperarlos Sistema de Gestión de BD que los soporten Sistemas de Gestión de Bases de Datos Relacionales que extienden sus capacidades para soportar datos XML SGBD XML nativos

44 XML Conceptos Generales: XML Orígenes Estructura de Datos XML
Documentos XML: Elementos, Atributos, etc. SGBD con Soporte XML XML


Descargar ppt "Conceptos Generales XML."

Presentaciones similares


Anuncios Google