XQuery tilføje elementer og egenskaber
- Forrige side XQuery syntaks
- Næste side XQuery vælge
XML eksempel dokument
Vi fortsætter med at bruge denne "books.xml"-fil i de følgende eksempler (den samme XML-fil som brugt i de tidligere kapitler).
Tilføj elementer og egenskaber til resultaterne
Som vi så i det forrige afsnit, kan vi citere elementer og egenskaber fra inputfilen i resultaterne:
for $x in doc("books.xml")/bookstore/book/title sorteret efter $x return $x
Denne XQuery-udtrykkelse refererer til title-elementet og lang-attributten på samme måde som vist her:
<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>
Denne XQuery-udtrykkelse returnerer title-elementerne på samme måde som de beskrives i input-dokumentet.
Nu skal vi tilføje vores egne elementer og egenskaber til resultaterne!
Tilføj HTML-elementer og tekst
Nu skal vi tilføje HTML-elementer til resultaterne. Vi vil placere resultaterne i en HTML-liste:
<html> <body> <h1>Bookstore</h1> <ul> { for $x in doc("books.xml")/bookstore/book sorteret efter $x/title return <li>{data($x/title)}. Kategori: {data($x/@category)}</li> } </ul> </body> </html>
Denne XQuery-udtrykkelse vil generere følgende resultat:
<html> <body> <h1>Bookstore</h1> <ul> <li>Everyday Italian. Kategori: KØKKEN</li> <li>Harry Potter. Kategori: BØRN</li> <li>Learning XML. Kategori: WEB</li> <li>XQuery Kick Start. Kategori: WEB</li> </ul> </body> </html>
Tilføj egenskaber til HTML-elementer
Næste, skal vi bruge category-attributten som class-attribut i HTML-listen:
<html> <body> <h1>Bookstore</h1> <ul> { for $x in doc("books.xml")/bookstore/book sorteret efter $x/title return <li class="{data($x/@category)}">{data($x/title)}</li> } </ul> </body> </html>
Denne XQuery-udtrykkelse kan generere følgende resultat:
<html> <body> <h1>Bookstore</h1> <ul> <li class="COOKING">Everyday Italian</li> <li class="CHILDREN">Harry Potter</li> <li class="WEB">Learning XML</li> <li class="WEB">XQuery Kick Start</li> </ul> </body> </html>
- Forrige side XQuery syntaks
- Næste side XQuery vælge