XQuery: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Pr (discussione | contributi)
m aggiunto collegamento a voce turing-equivalenza
Nessun oggetto della modifica
Riga 1:
'''XQuery''', una abbrevazione per '''XML Query Language''', è un [[linguaggio di programmazione]] specificato dal [[W3C]] e destinato ad interrogare documenti e [[database|basi di dati]] [[XML]].
 
XQuery usa la sintassi delle espressioni di [[XPath]] per la selezione di specifiche porzioni di documenti XML, con l'aggiunta delle cosiddette ''espressioni [[FLWOR]]'' per la formulazione di [[query]] complesse.
XQuery è risultato come un derivato delle linguaggi [[XQL]], [[XML-QL]] e [[Quilt]].
 
XQuery è un [[linguaggio di programmazione]] funzionale, dichiarativo, a tipizzazione statica e [[Turing equivalenza|Turing-completo]]. Oltre alle espressioni XPath, esiste un gran numero di caratteristiche interessanti del linguaggio:
* Costruzione di elementi XML ("direct constructors" e "indirect constructors")
* Funzionalità di ordinamento dei risultati secondo l'ordine del documento originale, o secondo altri ordini indicati dal utente
Riga 10:
* Funzioni definite dall'utente
* Funzioni di aggregazione (come avg o count) del tutto similari a quelle di [[SQL]]
* Generazione di documenti [[HTML]]
 
A differenza di [[SQL]], che opera su [[Modello relazionale | tabelle relazionali]], XQuery usa delle strutture dati ordinate nell'ordine in cui appaiono nel documento XML sorgente (document order). Tutte le espressioni XQuery debbono rispettare questo ordine tranne che sia specificato diversamente nella espressione stessa ('declare ordering unordered').