XQuery è elementi XQuery case-sensitive e, attributi, e le variabili devono essere nomi XML validi.
XQuery Regole di sintassi di base
Alcune regole di sintassi di base:
- XQuery è case-sensitive
- Elementi XQuery, gli attributi e le variabili devono essere nomi XML validi
- Un valore stringa XQuery può essere tra virgolette singole o doppie
- Una variabile XQuery viene definito con un $ seguito da un nome, ad esempio $ libreria
- Commenti XQuery sono delimitati da (: and :) , ad esempio (: XQuery Comment :)
L'esempio documento XML
Useremo il "books.xml" documento negli esempi che seguono (same XML file as in the previous chapters) .
Visualizza il "books.xml" file nel browser .
XQuery Espressioni condizionali
"If-Then-Else" espressioni sono ammessi in XQuery.
Guardate il seguente esempio:
for $x in doc("books.xml")/bookstore/book
return if ( $x/@category="CHILDREN" )
then <child>{data($x/title)}</child>
else <adult>{data($x/title)}</adult>
Notes on the "if-then-else" syntax: sono richieste parentesi che racchiudono l'espressione if. il resto è necessario, ma può essere solo altro () .
Il risultato dell'esempio sopra sarà:
<adult>Everyday Italian</adult>
<child>Harry Potter</child>
<adult>XQuery Kick Start</adult>
<adult>Learning XML</adult>
confronti XQuery
In XQuery ci sono due modi di confrontare i valori.
1. confronti generali:! =, =, <, <=,>,> =
2. confronti Valore: eq, ne, lt, le, gt, ge
La differenza tra i due metodi di confronto sono riportati di seguito.
La seguente espressione restituisce vero se qualsiasi attributo q ha un valore maggiore di 10:
$bookstore//book/@q > 10
L'espressione seguente restituisce vero se v'è un solo attributo q restituito dall'espressione, e il suo valore è superiore a 10. Se viene restituito più q, si verifica un errore:
$bookstore//book/@q gt 10