May 2018
Intermediate to advanced
680 pages
15h 54m
German
Die data()-Funktion liefert die atomisierten Werte einer Sequenz: Jeder Node wird also durch seinen Wert ersetzt. Das ist besonders wertvoll bei der Verarbeitung von Attributen.
Je nach verwendetem Prozessor kann die Auswertung von Attributwerten zu Fehlern führen. Nehmen Sie dieses XML-Input-Dokument als Beispiel:
<Menschen>
<Mensch Nachname="Wunschlos" />
<Mensch Nachname="Hilflos" />
<Mensch Nachname="Nixlos" />
</Menschen>
Bei der Verarbeitung der Nachname-Attribute in XQuery kann es vorkommen, dass das Attribut nicht ausgewertet, sondern kopiert wird.
<zielstruktur>
{
for $m in /Menschen/Mensch
return
<p>{$m/@Nachname}</p>
}
</zielstruktur>
Das (nicht gewünschte) Ergebnis sehen Sie hier:
<zielstruktur> <p Nachname="Wunschlos"/> ...Read now
Unlock full access