Omet navegació

4.2.2.2 - Variables

XQuery és un llenguatge pensat per buscar en documents XML, però no solament es pot fer servir per a això, ja que té suport per fer operacions aritmètiques i per treballar amb cadenes de caràcters.

En aquest exemple fem servir XQuery per fer una operació matemàtica senzilla:

let $x := 5
let $y := 4
return $x + $y

Una característica d’XQuery que el diferencia d’altres llenguatges de consulta és que disposa de variables:

  • Les variables en XQuery s’identifiquen perquè comencen sempre amb el símbol $.
  • Poden contenir qualsevol valor: literals numèrics o caràcters, seqüències de nodes, …
  • La instrucció per assignar valors a una variable és let.

Una de les utilitzacions fonamentals de les variables és guardar elements per poder-los fer servir posteriorment. En l’exemple següent es guarden els elements <nom> en la variable $alumnes i després torna la quantitat d’alumnes: 

let $alumnes := //alumne/nom
return count($alumnes)

3

Es poden aplicar filtres XPath a les variables: 

let $tot := /classe
let $profe := $tot//professor
let $alum := $tot//alumne
return string-join((count($profe), "professors.", count($alum),"alumnes")," ")
1 professors. 3 alumnes

Els valors de les variables els podrem comparar amb els operadors de comparació habituals que podem veure a la següent taula:

 Operador  Operador2 Ús
= eq Dos valors són iguals
!= ne Dos valors són diferents
> gt Major
>= ge Major o igual
< lt Menor
<= le Menor o igual

Els operadors eq, ne, gt, ge, lt i le només es poden fer servir per a comparar valors individuals.