XML | XML-Schema | XPath | XSL-T | XSL-FO | XQuery | XProc | SVG |
XQuery / WHERE
![]() |
![]() |
➪ Eine bedingungsgesteuerte Auswahl kann mit der WHERE-Klausel durchgeführt werden.
Der folgende XQuery-Aufruf gibt die Vornamen aller Menschen aus, die in "Neustadt" wohnen. Dabei werden die Vornamen mit Start- und Ende-Tag ausgegeben.
<x>{
for $x in /Orte/Ort where $x/name = "Neustadt"
return $x/Mensch/vorname
}</x>
Der Aufruf $x/Mensch/vorname ergibt daher einen Node der Art <vorname>Hugo</vorname>, der Elementname wird also im Sinn eines Outer-XML mit ausgegeben. Wenn Sie nur den Textinhalt in eine selbst definierte Zielstruktur mappen möchten, bietet sich der folgende Ansatz an: <vn>{$m/vorname/text()}</vn>.
<erg>{
for $m in //Mensch[idOrt = 2]
where $m/Gehalt < 400
return
<m>
<vn>{$m/vorname/text()}</vn>
<nn>{$m/name/text()}</nn>
<wo>{$m/../name/text()}</wo>
</m>}
</erg>
Sie erhalten folgendes Resultat:
<erg>
<m>
<vn>Rudi</vn>
<nn>Rhodos</nn>
<wo>Darmstadt</wo>
</m>
<m>
<vn>Ludwig</vn>
<nn>Lustlos</nn>
<wo>Darmstadt</wo>
</m>
</erg>
wg / 2. Mai 2021
Fragen? Anmerkungen? Tipps?
Bitte nehmen Sie Kontakt zu mir auf.
V.i.S.d.P.: Wilfried Grupe * Klus 6 * 37643 Negenborn
☎ 0151. 750 360 61 * eMail: info10@wilfried-grupe.de