Wyrażenia FLWOR + HTML w XQuery

Dokument przykładowy XML

W przykładach poniżej będziemy używać tego samego dokumentu "books.xml", jak w poprzednim rozdziale.

Zobacz plik "books.xml" w swojej przeglądarce.

Przedstaw wyniki w liście HTML

Zobacz poniższe wyrażenie FLWOR w XQuery:

for $x in doc("books.xml")/bookstore/book/title
order by $x
zwróć $x

Wyrażenie to wybiera wszystkie elementy title wewnątrz elementów book wewnątrz elementów bookstore i zwraca je w porządku alfabetycznym.

Teraz chcemy użyć listy HTML, aby wyświetlić wszystkie tytuły książek w naszej księgarni. Dodajemy znaczniki <ul> i <li> do wyrażenia FLWOR:

<ul>
{
for $x in doc("books.xml")/bookstore/book/title
order by $x
return <li>{$x}</li>
}
</ul>

Wynik powyższego kodu:

<ul>
<li><title lang="en">Everyday Italian</title></li>
<li><title lang="en">Harry Potter</title></li>
<li><title lang="en">Learning XML</title></li>
<li><title lang="en">XQuery Kick Start</title></li>
</ul>

Teraz chcemy usunąć element title, a wyświetlić tylko dane wewnątrz elementu title.

<ul>
{
for $x in doc("books.xml")/bookstore/book/title
order by $x
return <li>{data($x)}</li>
}
</ul>

Wynik będzie listą HTML:

<ul>
<li>Everyday Italian</li>
<li>Harry Potter</li>
<li>Learning XML</li>
<li>XQuery Kick Start</li>
</ul>