Introducción a XQuery
Autor: Jorge Huedo Díaz
Master Oficial en Tegnologías de la Información y
Sistemas Informáticos
Recuperación de la Información 1
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 2
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 3
Motivación
DOM y SAX gran cantidad de código.
Necesidad de nuevas herramientas de acceso
a estos documentos.
¿XSLT? SGBD XML Nativos.
Transformaciones de documentos a otros.
Recuperación de la Información 4
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 5
Introducción
Xquery es un lenguaje de consultas diseñado
para consultar colecciones de datos XML.
Semanticamente es similar a SQL.
Ficheros XML, BD XML Nativas, etc.
Transformación de datos.
Estructura FLWOR.
W3C Recommendation desde 23 Enero del
2007.
Recuperación de la Información 6
Introducción
XSLT 2.0
XSLT 1.0 Xpath 2.0
Xpath 1.0
XML XSL 1.0 Xpath 1.0
Xquery 1.0
Xpath 2.0
Recuperación de la Información 7
Introducción
Recuperación de la Información 8
Introducción
Principales funciones:
SQL de XML
Transformación XML
Transformación a otros documentos HTML,
PDF, ect
Recuperación de la Información 9
Estructura
Ejemplo:
Recuperación de la Información 10
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 11
Introducción
Recuperación de la Información 12
Estructura
For y Let
Where
Order
Return
Recuperación de la Información 13
Estructura
For y Let
Where
Order
Return
Recuperación de la Información 14
For y Let
Diferencias:
For vincula una tupla a cada nodo de la
expresión.
Let vincula el resultado completo de la
expresión.
Recuperación de la Información 15
For
Recuperación de la Información 16
Let
Recuperación de la Información 17
Estructura
For y Let
Where
Order
Return
Recuperación de la Información 18
Where
Filtra las tuplas producidas por la cláusulas let
y for.
Contiene una expresión que es evaluada para
cada tupla. Si su evaluación es false esa tupla
es descartada
Recuperación de la Información 19
Where
Recuperación de la Información 20
Estructura
For y Let
Where
Order
Return
Recuperación de la Información 21
Order
Indica para un conjunto de información un
orden de salida y va seguido de for.
Por defecto de manera ascendente, si no es
indica lo contrario, acorde con el tipo de datos
que se esté evaluando.
Ordenar según tipo de datos.
Clausula “as” y el tipo “xs:integer”.
Recuperación de la Información 22
Order
Recuperación de la Información 23
Estructura
For y Let
Where
Order
Return
Recuperación de la Información 24
Return
Formatear la salida del documentos.
Multiples utilidades, otros XML, HTML, PDF,
etc.
Recuperación de la Información 25
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 26
Expresiones condicionales
XQuery admite IF-THEN-ELSE.
Ejemplo:
Recuperación de la Información 27
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 28
Cuantificadores existenciales
Every
Some
Recuperación de la Información 29
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 30
Operadores matemáticos
Recuperación de la Información 31
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 32
Ejemplos
Recuperación de la Información 33
Ejemplos
Titulo de los libros ordenados por el nombre del
primer autor.
Recuperación de la Información 34
Ejemplos
Nombre y apellidos de los primeros autores
pero cambiando el formato de salida.
Recuperación de la Información 35
Ejemplos
Libros que tengan más de un autor, con
formato libro y número de autores.
Recuperación de la Información 36
Ejemplos
Varios ficheros.
Titulo de los libros que hayan vendidos.
Fichero almacen.xml
Recuperación de la Información 37
Ejemplos
Recuperación de la Información 38
Ejemplos
Utilizando la clausula if si hay varios autores
salida diferente que con un autor.
Recuperación de la Información 39
Ejemplos
Libros en los que alguno de sus autores sea
Axel.
Recuperación de la Información 40
Ejemplos
Recuperación de la Información 41
Indice
Motivación
Introducción
Estructura
Expresiones condicionales
Cuantificadores existenciales
Operadores matemáticos
Ejemplos
Conclusiones
Recuperación de la Información 42
Conclusiones
Aplicaciones de Xquery:
Lenguaje de consulta.
Transformación de datos XML.
Transformación a otro tipo de
documentos.
Usar Xquery para las 2 primeras y XSLT
para transformación.
Recuperación de la Información 43
Referencias
Boag,
● S. Chamberlin, D., Fernández, M. F., Florescu, D., Robie y J., Siméon, K.,
XQuery 1.0: An XML Query Language W3C Recommendation 23 January 2007. Recuperado de:
http://www.w3.org/TR/XQuery/, 2007
Bray, T., Paoli, J., Sperber-McQueen, C. M., Maler, E. y Yergeau, F., Extensible Markup Language (XML) 1.0
(Fourth Edition), W3C Recommendation. Recuperado de: http://www.w3.org/TR/2006/REC-xml-20060816,
2006.
Clark, J. y DeRose, S. XML Path Language (XPath) 1.0, W3C Recommendation. Recuperado de:
http://www.w3.org/TR/1999/REC-xpath-19991116, 2006.
http://es.geocities.com/lenguajes_recuperacion/XQuery.html
Katz, H., An Introduction to XQuery. Recuperado de:
http://www-128.ibm.com/developerworks/xml/library/x-XQuery.html
Lenguajes de recuperación.
Martínez., A.B., XML y Bases de Datos. Recuperado de:
http://www.di.uniovi.es/~labra/cursos/ext07/
Rivas, V. M., Tutorial de XPath Versión: 1.0. Recuperado de: http://geneura.ugr.es/~victor/cursillos/xml/XPath/,
2006.
Recuperación de la Información 44
Referencias
Vasiliev, Y., Querying, Constructing, and Transforming XML with Oracle XQuery. Recuperado de:
http://www.oracle.com/technology/pub/articles/vasiliev_XQuery.html
Wikipedia, XQuery. Recuperado de:http://en.wikipedia.org/wiki/XQuery
W3Schools, XQuery Tutorial. Recuperado de:
http://www.w3schools.com/XQuery/default.asp
Recuperación de la Información 45