XML Mikel Ibiricu Alfaro. ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs.

Slides:



Advertisements
Presentaciones similares
UNIX COMP 240.
Advertisements

Rocío Contreras Águila Primer Semestre 2010
CI-2413 Desarrollo de Aplicaciones para Internet
XML XQuery.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:23 PRESENTACION: BASE DE DATOS ALUMNAS: Velazquez Corona Elsa Ponciano Antonio.
Servicios Web.
Aprendizaje de Microsoft® Access® 2010
INTRODUCCION A CSS.
DOM ( Document Object Model) Prof. Franklin Cedeño.
Conceptos Generales XML.
UNIVERSIDAD ECOTEC TEMA: INFOPATH
Julio Pacheco SQL SERVER 2005 XML APRENDIENDO CON EJEMPLOS.
Windows XP sp3.
INTERFAZ DE ACCES DISEÑO DE BASE DE DATOS
Johanna Lizeth Rodríguez Lorena Fda. Chávarro Ramos
PARADIGMA Es un esquema de pensamiento que nos lleva a concebir las cosas de una manera determinada. el término paradigma puede indicar el concepto de esquema.
DE LAS CUENTAS DE USUARIO Y OPCIONES DE CARPETA
ANALISIS SINTACTICO El análisis gramatical es la tarea de determinar la sintaxis, o estructura, de un programa. Por esta razón también se le conoce como.
Ingeniero Anyelo Quintero
1 Las hojas de estilo en cascada Las hojas de estilo en cascada (Cascading Style Sheets, CSS) son un lenguaje formal utilizado para definir la presentación.
TRADUCTOR DE UN PROGRAMA
Construyendo aplicaciones eBusiness Con herramientas 100% XML.
Como empezar en Access 2000 Abrir Access 2000 Pulsamos INICIO
Facultad I · Prof. Dr. Volkert Brosda 1 XQuery una herramienta para trabajar con XML Volkert Brosda.
XML no predefine la apariencia de los elementos. Se requiere una descripción aparte mediante una hoja de estilo. XSL (eXtensible Stylesheet Language) es.
Características y elementos fundamentales J.M. Morales-del-Castillo
Lenguaje de Marcado.
 El primer navegador Web incluía un lenguaje de estilo interno que utilizaba dicho navegador para mostrar las páginas HTML.  Sin embargo estos primeros.
Universidad Tecnologica Oteima DISEÑO DE MEDIOS Y MATERIALES MULTIMEDIOS Rigoberto Quintana M. Hojas de estilo en cascada.
Una base de datos es un “almacén” que nos permite guardar grandes cantidades de información de forma organizada para que luego podamos encontrar y utilizar.
Clase 10: Estructuras de datos y arreglos.
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
PHP TODO SOBRE PHP.
BASE DE DATOS BY: Julián Villar Vázquez.
PROGRAMACIÓN DE RECURSOS.
XQuery. 2 Introducción De acuerdo al incremento en la cantidad de información que es almacenada, intercambiada y presentada usando XML, la habilidad para.
Aplicación de estructuras de datos
Curso: XML, de los datos a la presentación Julio de 2005 CAPTIVA · Introducción al mundo XML.
INTRANET SERVIDOR / CLIENTE.
Autora: Francisca Montañez Muñoz
Introducción a la tecnología Realizado por: Miguel Ángel Arias.
Herramientas informáticas
Desarrollo de aplicaciones empresariales con Web Services
Introducción a XML por Joel Candia C Universidad Técnica Federico Santa María Departamento de Electrónica ELO-330 Programación de Sistemas.
Cuentas de usuarios y grupos en windows 2008 server
XML. La vida antes de XML ► Comunicación ► Persistencia ► Armado de Documentos.
Web Semántica La Web Semántica es la nueva generación de la Web, que intenta realizar un filtrado automático preciso de la información. Para ello, es necesario.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
WEB SEMÁNTICA.
Términos algoritmo diseñar algoritmo implementar algoritmo
COLEGIO DE BACHILLERES “XOCHIMILCO TEPEPAN” Nº13  Tecnologías de la Información y comunicación 3.  Profa. Gabriela Pichardo Lazardo EQUIPO 25  Emmanuel.
WORD WIDE WEB Nace a principios de los años 90 en Suiza. Su función es ordenar y distribuir la información que existe en internet. La World Wide Web se.
EQUIPO:#3 GRUPO:304 NOMBRES: Lizbeth Nava Barón y Erick Ali Mejía.
WEB 2.0 sitios web que facilitan el compartir información, la interoperabilidad, el diseño centrado en el usuario y la colaboración en la World Wide.
Hoja de Cálculo EXCEL Introducción a la informática
Punto 1 – Introducción al servicio Juan Luis Cano.
Que es un navegador de Internet. Un navegador web o de Internet, es un programa que permite visualizar la información que contiene una página web (que.
Lic. Carla Aguirre Montalvo
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
MEDIDAS DE TENDENCIA CENTRAL
AFM – Web File Manager Versión 5. Novedades técnicas – Forma de Implementación Siguiendo última tecnología de Microsoft: Framework.NET 3.5 Implementación.
INTERFAZ DE ACCESS  Access es un sistema gestor de bases de datos relacionales (SGBD). Una base de datos suele definirse como un conjunto de información.
Clase #3 de Access. Temario Consultas Consultas Creación y manejos de consultas Creación y manejos de consultas Macros Macros Relaciones Relaciones.
INTEGRANTE: FLORES GODOY JUAN E. Grupo:308. Una tabla es una colección de datos sobre un tema específico, como productos o proveedores. Al usar una tabla.
Capitulo 3 y 4.   La accesibilidad web habla acerca de que tanta facilidad tienen las paginas de internet tanto para los consumidores en general como.
Web y Multimedia II Integrantes: Piero Álvarez Mayra Atience Jhonney Bermeo Johanna Cabrera Gabriela Cango.
En el presente trabajo, se explica los diferentes elementos que nos ofrece Microsoft Access, para hacer mas fácil y rápido la realización de bases de.
HTML.
QUÉ ES UNA BASE DE DATOS? Es un Conjunto de Información, que está clasificada de distintas maneras; pero que comparten entre sí algún tipo de vínculo,
TEMA 7 ANÁLISIS DE LOS RESULTADOS TEMA 7 ANÁLISIS DE LOS RESULTADOS.
Transcripción de la presentación:

XML Mikel Ibiricu Alfaro

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

Qué esXML XML (eXtended Markup Language) Virtudes: –Sencillez –Combinada con tecnologías relacionadas ofrece unas posibilidades enormes Da opción de compartición de la información a todos los niveles --> Se convierte en una especie de estándar del intercambio de información. Tecnologías relacionadas le dan muchas posibilidades en el manejo de los datos

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

HistoriaXML Lenguaje de marcas El primero: GML (General Markup Language), por IBM, década de los 70, para almacenar enormes cantidades de información de temas diversos ISO se fijó en GML y se propuso estandarizarlo. Como resultado, SGML (Standard GML), 1986 Tim Berners-Lee, tras conocer SGML crea HTML (Hypertext Markup Language), en Esto supone inicio de la web Hasta 1996: cada marca fabricante personaliza HTML a su gusto

Historia (II)XML En 1996 aparece W3C (World Wide Web Consortium) Intenta estandarizar HTML desde sus distintas versiones Esto no soluciona problemas de HTML: -El contenido se mezcla con los estilos que se aplican -No permite compartir la información con todos los dispositivos que tienen acceso a la web -La presentación en pantalla depende en gran medida del visor que se utilice. Para conseguir un lenguaje libre de estas carencias se crea XML y se controla su crecimiento para no perder el control

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

Diferencias HTML-XMLXML Las diferencias principales entre el XML y el HTML son las siguientes: –El HTML se preocupa por formatear datos y para ello son las etiquetas que tiene el lenguaje, para formatear la información que se desea mostrar. –El XML se preocupa por estructurar la información que pretende almacenar. La estructura la marca la lógica propia de la información. –El desarrollo del HTML estuvo marcado la competencia entre los distintos visores del mercado. Cada uno quería ser el mejor e inventaba etiquetas nuevas que a la larga entraban a formar parte del estándar del W3C, como la etiqueta.

Diferencias HTML-XML(II) XML –El desarrollo del XML está siendo llevado a cabo con rigor, siempre ajustado a lo que marca el estándar que desarrolla el W3C, entidad que está desarrollando el XML con más diligencia que las empresas con intereses particulares. –Procesar la información en HTML es inviable, por estar mezclada con los estilos y las etiquetas que formatean la información. –En XML se puede procesar la información con mucha facilidad, porque todo está ordenado de una manera lógica, así el formateo de la información para que se pueda entender bien por el usuario es viable a través de un pequeño procesamiento, a través de hojas de estilos o similares.

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

Herramientas Entorno XML Contenidos –Se puede construir cualquier metalenguaje con XML –Dos lenguajes de definición de metalenguajes: DTD, XML –Schema –Permiten comprobar integridad de los datos –DTD:Definition Type Document, tiene una sintaxis distinta de la de XML, que es sencilla, aunque un poco rara si no la conocemos.

Herramientas Entorno(II) XML –XML-Schema: Tiene la ventaja de que está escrito en XML

Herramientas Entorno(III)XML Estilos –Objetivo: formatear en pantalla los datos del XML –Dos formas: CSS, XSL –Permiten comprobar integridad de los datos –CSS (Cascade Style Sheet): Viene del HTML y se utiliza igual que con documentos html –XSL: XML Style Language. No se limita a dar formato al xml para que aparezca en pantalla como html. Podemos formatear el xml en múltiples formatos (wml, txt, generar otro xml,...) –Se puede combinar con Xpath que veremos luego para utilizarlo como “lenguaje” de programación sobre xml

Herramientas Entorno(IV) XML Programación –Objetivo: manipular los datos del xml –Dos formas: SAX, DOM –SAX: para recorrer los datos de modo secuencial –DOM: crea un árbol en memoria con la estructura del xml –Se puede programar en cualquier lenguaje que se desee siempre que existan APIs que cumplan las especificaciones XML –Java, por ejemplo, tiene clases para programar con xml cuyas APIs han sido aprobadas por W3C

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

XPath XML XPath es un lenguaje de expresión utilizado para referenciar nodos de información en un conjunto de datos XML. Tabla XML para ejemplo:

XPath(II) XML /html/body/h1 referencia a los nodos h1 que estén dentro de un nodo body que se encuentran en un nodo html. //h1 Selecciona todos los nodos que aparezcan en cualquier posición del árbol. La doble barra indica cualquier profundidad count(//libro) Devuelve el numero de nodos que aparecen en cualquier posición del documento

XPath(III) XML //libro[autor=”Hunter”] Devuelve todos los nodos que aparezcan en el documento en cualquier posición y que tengan un nodo hijo con el valor “Hunter”. Los corchetes indican un filtro para seleccionar los resultados que cumplan una determinada condición. Devuelve todos los nodos que tengan un atributo “año” con un valor superior a La arroba indica que año no es un hijo, es decir, no es otro tag hijo de libro sino que es un atributo de la etiqueta libro.

XPath(IV) XML Doc(“libros.xml”)/bib/libro/autor[1] Devuelve solo el primer nodo autor que encuentre para cada libro. (Doc(“libros.xml”)/bib/libro/autor)[1] La inclusión de paréntesis de la siguiente forma resulta en que el resultado de esta expresión sea el primer autor del archivo libros.

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

XQuery XML XML se ha convertido en una herramienta de uso cotidiano entre los medios de tratamiento de información y desde entornos de programación. Cuando las estructuras de datos que se representan con él van creciendo de tamaño se ha visto que los parsers como DOM y SAX no son adecuados, necesitan escribir gran cantidad de código para procesar los datos contenidos en XML a bajo nivel.

XQuery(II) XML Con XSLT lo que conseguimos es una representación de los datos en un formato distinto, por lo que tampoco es adecuado. En vista de estos problemas se hace necesaria la aparición de un lenguaje de consulta sobre los datos contenidos en XML que: – No presente los problemas de escalabilidad y reusabilidad que aparecen a menudo cuando la estructura de datos en XML crece en complejidad. – Además debe ser un lenguaje declarativo, es decir, independiente de la situación de los datos y de cómo se haga el recorrido sobre ellos.

XQuery(III) XML El grupo de trabajo de Xquery del W3C ha definido una serie de requisitos técnicos para el lenguaje: -Debe ser un lenguaje decarativo, como SQL: Se indica el resultado que queremos, no la manera de obtenerlo -Debe ser independiente del protocolo de acceso a la colección de datos: Debe funcionar igula si consultamos un archivo XML local que si accedemos a un servidor de bases de datos o un archivo de un servidor web -Consultas y resultados deben respetar el modelo de datos XML -Consultas y resultados deben ofrecer soporte para los tablespace

XQuery(IV) XML -Debe ser capaz de respetar XML-Schemas y DTDs y capaz de trabajar sin ninguno de ellos -Debe ser capaz de trabajar independientemente de la estructura del documento. -Debe soportar tipos simples (enteros, cadenas) y tipos comlejos, como un nodo compuesto por varios hijos. -Deben soportar cuantificadores universales (para todo) y existenciales (existe) -Las consultas deben soportar operaciones sobre jerarquías de nodos y secuencias de nodos. -Debe ser posible en una busqueda combinar informacion de multiples fuentes

XQuery(V) XML -Las consultas deben ser capaces de manipular los datos independientemente del origen de estos -Debe ser posible definir consultas que transformen las estructuras de información originales y construir nuevas estructuras de datos. -Debe ser independiente de la sintaxis, es decir, debe ser posible expresar una misma consulta por medio de distintas sintaxis

XQuery(VI) XML cláusulas de las que se puede componer una consulta Xquery : –For Vincula una o más variables a expresiones escritas en Xpath, creando un conjunto de tuplas en el que cada tupla esta vinculada una de las variables –Let Vincula una variable al resultado completo de una expresión añadiendo esos vínculos a las tuplas generadas por una cláusula for, o si no existe ninguna cláusula for, creando una única tupla de que contenga esos vínculos –Where Filtra las tuplas eliminando las que no cumplan las condiciones dadas.

XQuery(VII) XML cláusulas de las que se puede componer una consulta Xquery : –Order by Ordena las tuplas según el criterio dado –Return Construye el resultado de la consulta para una tupla dada, después de haber sido filtrada por la cláusula where y ordenada por el order by

XQuery(VIII) XML Tabla libros.xml

XQuery(IX) XML Tabla libros.xml (continuación)

XQuery(X) XML Ejemplos: for $b in document (“libros.xml”)//bib/libro Tomará como valor cada uno de los nodos libros contenido en el archivo “libros.xml” for $b in doc(“libros.xml”//libro let $c:=$b//autor where count ($c)>2 order by $b/titulo return $b/titulo Devuelve los libros que contienen mas de dos autores ordenados por su titulo

XQuery(XI) XML Reglas generales: - For y let sirven para crear las tuplas con las que trabajan el resto de las cláusulas de la consulta y se pueden utilizar tantas veces como se desee en una consulta, incluso dentro de otras cláusulas. Sin embargo sólo puede haber una cláusula where, una order by y una return. - Ninguna de las cláusulas FLWOR es obligatoria en una consulta Xquery.

XQuery(XII) XML Diferencia entre For y Let –Veamos una misma consulta que muestra los títulos de todos los libros de la estructura “libros.xml” Utilizando una cláusula for: for $d in doc(“libros.xml”)/bib/libro/titulo return {$d} El resultado es el siguiente:

XQuery(XIII) XML Si repetimos la misma consulta sustituyendo el for por un let de la siguiente forma: let $d:=doc(“libros.xml”)/bib/libro/titulo return {$d} El resultado es el siguiente:

XQuery(XIV) XML Como se puede ver la diferencia es que la clausula for vincula una variable con cada nodo que se encuentra en la colección de datos. En cambio la cláusula let vincula una variable con el resultado de toda la expresión. Si aparece una cláusula let en una misma expresión de consulta que ya posee una o más cláusulas for, los valores de la variable vinulada por la cláusula let se añaden a cada una de las tuplas generadas por la cláusula for.

XQuery(XV) XML Ejemplo de for y let –Consulta Y Resultado

XQuery(XVI) XML Si en la consulta aparece más de una cláusula for, o más de una variable en una cláusula for, el resultado es el producto cartesiano de dichas variables, es decir, las tuplas generadas cubren todas las posibles combinaciones de los nodos de dichas variables. Como ejemplo:

XQuery(XVII) XML Resultado

XQuery(XVIII) XML Xquery utiliza dos cuantificadores universales llamados “some” y “every”, podemos definir consultas que devuelvan algún elemento que satisfaga la condición “some” o consultas que devuelvan los elementos en los que todos sus nodos satisfacen la condición “every” Consulta incluyendo some y su resultado:

XQuery(XIX) XML Consulta incluyendo every y su resultado:

XQuery(XX) XML Operadores y Funciones Principales: –El conjunto de operaciones y funciones soportado por XQuery 1.0 es el mismo conjunto de operadores y funciones que emplean XPath 2.0 y XSLT 2.0. –Se soportan operadores y funciones matemáticas de cadenas para el tratamiento de expresiones regulares, comparaciones de fechas y horas, manipulación de nodos XML, de secuencias, comprobación y conversión de tipos y lógica booleana. –Además se nos permite definir nuevas funciones y funciones dependientes del entorno de ejecución

XQuery(XXI) XML

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

XPath vs XQuery XML En realidad no cabe hablar de una comparativa entre los dos puesto que ambos son desarrollos complementarios, que, además, están siendo desarrollados por el mismo grupo de trabajo del W3C. Se podría decir que XPath es un lenguaje de consulta de un nivel más bajo que sirve para enumerar y recorrer los archivos XML, mientras que XQuery es un lenguaje de consulta más potente más al uso de lo que es SQL. XQuery utiliza XPath en algunas de sus cláusulas

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

Conclusiones XML XML nos da grandes posibilidades de almacenado de información y compartirla con medios diversos (software, web, bbdds,...) Según como se estructure la información y de que forma necesitemos recuperarla elegir XQuery o XPath; –Búsquedas avanzadas, información compleja -> XQuery –Recorrer y seleccionar -> Xpath Estamos hablando siempre de lecturas...

ÍndiceXML 1 Qué es XML 2 Historia XML 3 Diferencias HTML-XML 4 Herramientas del entorno de XML 5 XPath 6 XQuery 7 XPath vs. XQuery 8 Un caso Real 9 Conclusiones 10 Bibliografía

Bibliografia XML - Web del W3Cwww.w3.org Manual de XQuery de dept LSI, ETSII, Universidad de Sevillahttp:// _xpath_2005.pdfwww.tejedoresdelweb.com/307/articles _xpath_2005.pdf