Erster String Inhalt des komplexen Mischelementes mit XQuery
Frage
, gibt es beispielsweise ein xml:
<article-list xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="3.xsd">
<article section="physics">
Increasing linear dynamic range of commercial digital photocamera
<author>M. V. Konnik</author>
<content>
Methods of increasing linear optical dynamic range
</content>
</article>
mein Ziel ist String Inhalt article
Element abzufragen. Das heißt:.
Increasing linear dynamic range of commercial digital photocamera
Die offensichtliche Lösung wie folgt aus:
<!--xquery-->
{
for $article in doc("name.xml")//article-list/article
where $article/receiving-date > xs:date("2005-01-01")
return
<article>
{$article}
</article>
}
Gibt ganze article
Baum, nicht nur eine Zeichenfolge.
Lösung
$ Artikel ist ein Element, kein Knoten. Um den Text zu erhalten (der Text, den Sie wollen, ist eigentlich der Text Kindknoten des $ Artikel-Knoten), brauchen Sie nur:
{$article/text()}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow