xquery-Anfänger - so verwenden Sie eine if-then-else innerhalb eines FLWOR-Anweisung
Ich möchte daraus einige Inhalte aus einer web-Seite der XML-äquivalent, verwenden von XQuery.
Hier, ich will zu verwenden, wenn-dann-sonst-wenn eine bestimmte Bedingung erfüllt ist, wird dann ein Wert zurückgegeben, durch die der xquery-Ausdruck, andernfalls wird ein anderer Wert zurückgegeben wird.
Dies ist Ausdruck ich habe mit mir--
Arbeite ich zu extrahieren, die bestimmte Inhalte aus einer web-Seite.
Da unten ist die Xquery-code, den ich benutze-- ich bin mit einem XQuery-Bibliothek zu durchsuchen, XML, das man durch die Umwandlung eine HTML-web-Seite in XML...nach, dass ich das extrahieren von bestimmten Inhalten aus, die XML-Seite...
declare variable $doc as node() external;
let $select_block := $doc//div[@class="randomclass" and contains(.,'MatchingText')]
for $select_link in $select_block/a
for $select_link_url in $select_link/@href
where contains($assignee_link_url,'inassignee')
return data($select_link)
Nun wie verwende ich if-then-else innerhalb dieser Ausdruck?
Ich habe versucht, fügen Sie eine wenn-dann-sofort nach dem 'return' Schlüsselwort, aber ich bin immer Fehler...
Im Grunde, wenn einige Inhalte gefunden, für $select_block oben, dann werden die Daten($select_link) zurückgegeben werden soll, andernfalls der statische text 'Missing Value' zurückgegeben werden soll.
Was ist die richtige Art der Verwendung von wenn-dann-sonst mit den oben genannten xquery-Ausdruck?
InformationsquelleAutor user1578871 | 2012-08-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn ich verstehe, was Sie versuchen, zu erreichen, richtig ist, dann sollte Folgendes funktionieren:
Könnten Sie die Dinge zu vereinfachen ein wenig und beseitigen Sie die geschachtelten for-Schleifen mit Prädikat filtert die Auswahl der Anker-Elemente:
InformationsquelleAutor Mads Hansen