XQuery
XQueryer etspørrespråkmed enkel programmeringsfunksjonalitet beregnet for å gjøre spørringer motXML-data. XQuery ersemantiskliktSQLogOQL.Språket støtter visse grunnelementer fra funksjonellprogrammering.
XQuery 1.0 ble utviklet avWorld Wide Web Consortiumsin arbeidsgruppe for XML Query og ble anbefalt standard i januar 2007. Arbeidet ble nært koordinert med utviklingen avXSLT2.0, som er en lignende teknologi. XQuery 1.0 er en utvidelse av XPath 2.0.
Viktige mål for XML Query er å utvikle en fleksibel spørrefunksjonalitet for web-dokumenter slik at det blir mulig med effektiv kommunikasjon mellomWorld Wide Webogdatabaser,og slik at samlinger av XML-dokumenter kan brukes som en database.[1]
XPath
[rediger|rediger kilde]XPath er et språk som brukes primært til å velge ut deler av et XML-dokument. For dette formålet modelleres XML-dokumentet som et tre av noder, og XPath kan velge noder gjennom den hierarkiske strukturen i treet. XPath er en del av XQuery 1.0 og brukes iXSLT2.0. XPath har operatorer og funksjoner som kan brukes til å velge data på vilkår og sammenligne ulike oppføringer.[2]
FLWOR
[rediger|rediger kilde]FLWOR er en betegnelse på uttrykkene som brukes i XQuery. FLWOR brukes til å gi XPath-spørringer mer funksjonalitet, for eksempel til å slå sammen sett av data (join).
- Forlager en sekvens av tupler
- Letbinder en sekvens til en variabel
- Wherefiltrerer tupler på et booleansk uttrykk
- Order bysorterer tuplene
- Returnundersøkes en gang for hvert tuppel
Eksempel
[rediger|rediger kilde]for $avd in doc( "avdelinger.xml" )//avdnr let $ans:= doc( "ansatte.xml" )//ansatt[avdnr = $avd] where count($ans) >= 10 order by avg($ans/lonn) descending return <storAvdeling> { $avd, <antallPersoner>{count($e)}</antallPersoner>, <snittLonn>{avg($ans/lonn)}</snittLonn> } </storAvdeling>
(Merk at '//' ikke starter en kommentar, men er en del av syntaksen)
Referanser
[rediger|rediger kilde]- ^XML Query (XQuery) Requirements.W3C Arbeidsgruppe-notat 23. mars 2007
- ^XML Path Language (XPath) 2.0W3C Anbefaling 23. januar 2007