Una consulta XQuery es una expresión que lee una secuencia de datos en XML y devuelve como resultado otra secuencia de datos en XML, donde:
- Una secuencia es un conjunto ordenado de cero o más ítems.
- Un ítem es cualquier tipo de nodo del árbol XML o un valor atómico.
Las funciones que se pueden invocar para referirnos a colecciones y documentos dentro de la BD son las siguientes:
collection(camino de la colección)
doc(camino del documento)
Así por ejemplo:
- La consulta
collection(/Books)
: devuelve el contenido de la colección de ruta absoluta/Books
. - La consulta
doc(/Empresa.xml)
: devuelve el documento/Empresa.xml
completo.
Otros ejemplos de consultas XQuery basadas en expresiones XPath son los siguientes:
- La consulta
collection(/Books)//book/title
devuelve los nodostitle
de todos los libros (book
) de la colección/Books
- Si se utilizan espacios de nombres o
namespaces
, entonces la consulta anterior se redactaría de la siguiente forma:declare namespace t = http://www.qizx.com/namespace/Tutorial; collection(/Books)//t:book/t:title
- La consulta
doc(/Empresa.xml)//nombre
devuelve todos los nodosnombre
del documento/Empresa.xml
En la siguiente enlace encontraras diferentes ejemplos de consultas XQuery: ejecutadas directamente sobre una sencilla BD XML denominada 'Cursillos
'. Necesitarás descargar el archivo:
Un valor atómico es una instancia de uno de los tipos de datos atómicos incorporados definidos por el esquema XML.