May 2018
Intermediate to advanced
680 pages
15h 54m
German
Die Inhalte der XML-Input-Elemente können mit ./text() ausgewertet werden. Erfolgt das nicht, so wird der jeweilige Element-Node übernommen, an dem der Textnode als Child hängt.
Das folgende XQuery-Beispiel listet via XPath alle XML-Elemente Ort auf und transformiert sie in Stadt-Elemente. Dabei wird aus dem ursprünglichen Childnode id ein Attribut id.
<erg>
{
for $o in /Orte/Ort return
<Stadt id="{$o/id/text()}">
{$o/name}
</Stadt>
}
</erg>
Das Resultat:
<erg>
<Stadt id="1">
<name>Neustadt</name>
</Stadt>
<Stadt id="2">
<name>Darmstadt</name>
</Stadt>
<Stadt id="3">
<name>Kapstadt</name>
</Stadt>
</erg>
Aus Gründen syntaktischer Korrektheit habe ich hier direkt auf den text()-Inhalt zugegriffen, obwohl auch ein ...
Read now
Unlock full access