Lägg till element och attribut i XQuery
- Föregående sida XQuery-syntaks
- Nästa sida XQuery urval
XML-exempel
Vi kommer att fortsätta använda denna "books.xml"-dokument i de följande exemplen (som samma XML-fil som användes i de tidigare kapitlen).
Lägg till element och egenskaper till resultatet
Som vi såg i föregående avsnitt, kan vi hänvisa till element och egenskaper från inmatningsfilen i resultatet:
för $x i doc("books.xml")/bokhandel/bok/title sortera efter $x return $x
Den här XQuery-uttrycket refererar till title-elementet och lang-egenskapen i resultatet, på följande sätt:
<title lang="en">Everyday Italian</title> <title lang="en">Harry Potter</title> <title lang="en">Learning XML</title> <title lang="en">XQuery Kick Start</title>
Ovanstående XQuery-uttryck returnerar title-elementet på samma sätt som det beskrivs i inmatningsdokumentet.
Nu ska vi lägga till våra egna element och egenskaper!
Lägg till HTML-element och text
Nu ska vi lägga till HTML-element till resultatet. Vi kommer att placera resultatet i en HTML-lista:
<html> <body> <h1>Bokhandel</h1> <ul> { för $x i doc("books.xml")/bokhandel/bok sortera efter $x/title return <li>{data($x/title)}. Kategori: {data($x/@category)}</li> } </ul> </body> </html>
Ovanstående XQuery-uttryck genererar följande resultat:
<html> <body> <h1>Bokhandel</h1> <ul> <li>Varje dagens italiensk mat. Kategori: KÖK</li> <li>Harry Potter. Kategori: BARN</li> <li>Lär dig XML. Kategori: WEB</li> <li>XQuery Kick Start. Kategori: WEB</li> </ul> </body> </html>
Lägg till egenskaper till HTML-element
Nästa, vi ska använda category-attributet som class-attribut i en HTML-lista:
<html> <body> <h1>Bokhandel</h1> <ul> { för $x i doc("books.xml")/bokhandel/bok sortera efter $x/title return <li class="{data($x/@category)}">{data($x/title)}</li> } </ul> </body> </html>
Den här XQuery-uttrycket kan generera följande resultat:
<html> <body> <h1>Bokhandel</h1> <ul> <li class="COOKING">Varje dagens italiensk mat</li> <li class="CHILDREN">Harry Potter</li> <li class="WEB">Learning XML</li> <li class="WEB">XQuery Kick Start</li> </ul> </body> </html>
- Föregående sida XQuery-syntaks
- Nästa sida XQuery urval