xquery
Jose Emilio Labra Gayo
Departamento de Informática
Universidad de Oviedo
Parte del material ha sido tomado de Ana Belén Martínez Prieto
Depto. Informática, Universidad de OviedoXQuery
Query Working Group, grupo creado en W3c en 1999 se
encarga de elaborar lenguaje Xquery
XQuery 1.0: Fase de elaboración larga…Recomendación 2006
Inspirado en lenguaje de consultas SQL
Notiene sintaxis XML
Lenguaje declarativo y fuertemente tipado
1
XQuery
Funcionamiento de una consulta
Entrada: Datos XML
Salida: Datos XML
NOTA: Puede verse como una alternativa a XSLTUsa XPath como lenguaje de base
XQuery puede verse como una extensión de XPath
Añade capacidades para:
Acceso a fuentes de información
Creación de documentos XML
Expresiones FLOWR
EjemploXQuery
Entrada (alumnos.xml)
Jose
Bernardo
7
Juan
López
4
Consulta (XQuery)
for $a in doc("alumnos.xml")//alumno
where $a/nota > 5
return
{
$a/@dni,
$a/nota
}
Resultado7
2
Lenguaje XQuery
Lenguaje sensible mayúsculas
Comentarios (: …. :)
Lenguaje basado en expresiones:
Expresiones básicas:
Números:
Cadenas:
Constructores:
Operadores:Secuencias:
Variables:
Invocación de funciones:
5.6
“Hola”
date(“2007-6-30”)
(2 + 4) * 5
(1, 2, 3) (1 to 3)
$inicio
substring(“Abracadabra”,1,4)
Lenguaje XQuery
Acceso a los datos de entradafn:doc(URI) devuelve el nodo raíz del documento accesible a
través de la URI
Ejemplo: fn:doc(“alumnos.xml”)
fn:collection(URI) devuelve una secuencia de nodos a partir de
una URI
Puede utilizarsepara acceder a bases de datos XML
3
XQuery
Estructura de las consultas
Consulta XQuery: Prólogo + Expresión
Prólogo: declaraciones de espacios de nombres, de
funciones, etc.
Expresión:Consulta propiamente dicha
Prólogo
Expresión de
la consulta
import …
declare function …
declare namespace…
…
for …
let …
where ….
order by …
return …
XQuery
Prólogo
Contiene...
Regístrate para leer el documento completo.