XQuery esimerkki
- Edellinen sivu XQuery esittely
- Seuraava sivu XQuery FLWOR
Tässä luvussa tutkimme esimerkin avulla perus XQuery-kielioppia.
XML esimerkki dokumentti
Me käytämme tätä XML-dokumenttia seuraavassa esimerkissä.
"books.xml" :
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book category="COOKING"> <title lang="en">Everyday Italian</title> <author>Giada De Laurentiis</author> <year>2005</year> <hinta>30.00</hinta> </book> <book category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> <kirja kategoria="WEB"> <title lang="en">XQuery Kick Start</title> <kirjailija>James McGovern</kirjailija> <kirjailija>Per Bothner</kirjailija> <kirjailija>Kurt Cagle</kirjailija> <kirjailija>James Linn</kirjailija> <kirjailija>Vaidyanathan Nagarajan</kirjailija> <vuosi>2003</vuosi> <hinta>49.99</hinta> </book> <kirja kategoria="WEB"> <title lang="en">Learning XML</title> <kirjailija>Erik T. Ray</kirjailija> <vuosi>2003</vuosi> <hinta>39.95</hinta> </book> </bookstore>
Miten valita "books.xml"-tiedoston solmut?
Funktio
XQuery käyttää funktioita XML-dokumentista saatujen tietojen hakemiseen.
doc() avaa "books.xml"-tiedoston:
doc("books.xml")
Polkuilmaisu
XQuery käyttää polkuilmauksia navigoimaan XML-dokumentissa elementtien kautta.
Seuraava polkuilmaisu käytetään valitsemaan kaikki title-elementit "books.xml"-tiedostosta:
doc("books.xml")/bookstore/book/title
(/bookstore valitsee bookstore-elementin, /book valitsee kaikki bookstore-elementin alla olevat book-elementit, ja /title valitsee jokaisen book-elementin alla olevat kaikki title-elementit)
Tämä XQuery voi hakea seuraavat tiedot:
<title lang="en">Everyday Italian</title> <title lang="en">Harry Potter</title> <title lang="en">XQuery Kick Start</title> <title lang="en">Learning XML</title>
Lauseke
XQuery käyttää lausekkeita rajoittaakseen XML-dokumentista haettuja tietoja.
Seuraavat lausekkeet käytetään valitsemaan kaikki bookstore-elementin alla olevat book-elementit, ja valittujen book-elementtien alla olevien price-elementtien arvon on oltava alle 30:
doc("books.xml")/bookstore/book[hinta<30]
Tämä XQuery voi hakea seuraavat tiedot:
<book category="CHILDREN"> <title lang="en">Harry Potter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book>
- Edellinen sivu XQuery esittely
- Seuraava sivu XQuery FLWOR