0% encontró este documento útil (0 votos)
2 vistas6 páginas

Xquery

XQuery es un lenguaje para consultar y transformar documentos XML, similar a SQL, que permite buscar, filtrar, ordenar y crear nuevos documentos XML. Utiliza la función doc() para acceder a documentos XML y la estructura FLWOR para realizar consultas complejas. Las partes clave de XQuery incluyen el uso de XPath, las cláusulas for, where, order by y return, así como la capacidad de insertar datos en nuevos XML.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
2 vistas6 páginas

Xquery

XQuery es un lenguaje para consultar y transformar documentos XML, similar a SQL, que permite buscar, filtrar, ordenar y crear nuevos documentos XML. Utiliza la función doc() para acceder a documentos XML y la estructura FLWOR para realizar consultas complejas. Las partes clave de XQuery incluyen el uso de XPath, las cláusulas for, where, order by y return, así como la capacidad de insertar datos en nuevos XML.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Introducción a XQuery

1. ¿Qué es XQuery?
XQuery es un lenguaje diseñado para consultar y transformar documentos XML. Se
puede considerar similar a SQL pero aplicado a documentos XML.
Se utiliza para: - Buscar información dentro de un XML - Filtrar datos - Ordenar
resultados - Crear nuevos documentos XML a partir de otros
XQuery utiliza XPath para navegar por el documento.

2. Acceder a un documento XML


Para trabajar con un documento XML en XQuery se utiliza la función doc().
Ejemplo:
doc("[Link]")

Esto carga el documento XML llamado [Link].


Si queremos acceder a todos los títulos del documento:
doc("[Link]")//titulo

Si queremos únicamente el texto:


doc("[Link]")//titulo/text()

3. Estructura básica de XQuery (FLWOR)


La estructura principal de XQuery se llama FLWOR y está formada por varias
cláusulas.
FLWOR significa:

 FOR → recorrer elementos


 LET → guardar valores (opcional)
 WHERE → filtrar resultados
 ORDER BY → ordenar resultados
 RETURN → indicar qué devolver

1
Ejemplo básico:
for $o in doc("[Link]")//obra
return $o/titulo

Este ejemplo recorre todas las obras y devuelve sus títulos.

4. Filtrar información (WHERE)


Podemos seleccionar solo algunos elementos usando condiciones.
Ejemplo: obras de España
for $o in doc("[Link]")//obra
where $o/@pais = "España"
return $o/titulo

Resultado: solo aparecerán los títulos de las obras cuyo país sea España.

5. Ordenar resultados
Podemos ordenar los datos usando order by.
Ejemplo: ordenar obras por año.
for $o in doc("[Link]")//obra
order by $o/@anyo
return $o/titulo

6. Crear nuevo XML


Una de las características más importantes de XQuery es que permite generar
nuevos documentos XML.
Ejemplo:
for $o in doc("[Link]")//obra
return
<obra>
{$o/titulo}
</obra>

2
Resultado:
<obra>
<titulo>Bal au moulin de la Galette</titulo>
</obra>

Las llaves {} se utilizan para insertar datos del XML original dentro del nuevo XML.

7. Ejemplo completo
Ejemplo: mostrar obras españolas ordenadas por año y crear un nuevo XML.
for $o in doc("[Link]")//obra
where $o/@pais = "España"
order by $o/@anyo
return
<obra>
{$o/titulo}
{$o/autor}
</obra>

8. Resumen rápido
Las partes más importantes de XQuery que debes recordar son:

 doc() → cargar un XML


 XPath → navegar por el documento
 for → recorrer elementos
 where → filtrar
 order by → ordenar
 return → devolver resultados
 {} → insertar datos dentro de XML creado

Con estos elementos ya es posible realizar la mayoría de consultas básicas en


XQuery.

3
9. Ejercicios propuestos
1. Mostrar todos los títulos de las obras.
2. Mostrar las obras cuyo país sea Francia.
3. Mostrar los autores de las obras.
4. Mostrar las obras ordenadas por año.
5. Crear un XML que solo contenga los títulos de las obras.

4
SOLUCIONES A LOS EJERICICIOS PROPUESTOS
Soluciones ejercicios XQuery

1. Mostrar todos los títulos de las obras

for $o in doc("[Link]")//obra

return $o/titulo

También podría hacerse más simple:

doc("[Link]")//titulo

2. Mostrar las obras cuyo país sea Francia

for $o in doc("[Link]")//obra

where $o/@pais = "Francia"

return $o

Si solo queremos el título:

for $o in doc("[Link]")//obra

where $o/@pais = "Francia"

return $o/titulo

5
3. Mostrar los autores de las obras

for $o in doc("[Link]")//obra

return $o/autor

Versión corta:

doc("[Link]")//autor

4. Mostrar las obras ordenadas por año

for $o in doc("[Link]")//obra

order by $o/@anyo

return $o/titulo

Si queremos devolver toda la obra:

for $o in doc("[Link]")//obra

order by $o/@anyo

return $o

5. Crear un XML que solo contenga los títulos de las obras

<titulos>

for $o in doc("[Link]")//obra

return

<titulo>{$o/titulo/text()}</titulo>

</titulos>

También podría gustarte