/ / Umbrechen Sie XML-Tags (fügen Sie vorhandene XML-Daten ein) in xquery für eXist - xml, xquery, exist-db

Wickeln Sie XML-Tags (fügen Sie vorhandene XML-Daten ein) in xquery für eXist - xml, xquery, exist-db

Kann mir bitte jemand helfen mit dieser xquery for eXist Datenbank. Ich habe die folgende XML-Struktur

<A>
<B>
<D/>
<D/>
<D/>
<E/>
</B>
</A>

Ich versuche, die folgende Struktur zu bekommen

<A>
<B>
<C>
<D/>
<D/>
<D/>
<E/>
</C>
</B>
</A>

Wie füge ich das ein? <C> Etikett?

Vielen Dank
- SD

Antworten:

1 für die Antwort № 1

Ich kann es nicht verifizieren, aber es sollte so sein:

let $x := doc("namedocument.xml")/A/B
update insert <C>$x</C> into  doc("namedocument.xml")/A/B

0 für die Antwort № 2

Sie benötigen kein XQuery-Update, um diese Art von Operationen auszuführen.

Diese XQuery-Anwendung:

<A>
<B>
<C>
{for $n in /A/B/node()
return $n}
</C>
</B>
</A>

wenn auf das bereitgestellte XML-Dokument angewendet:

<A>
<B>
<D/>
<D/>
<D/>
<E/>
</B>
</A>

produziert genau das gewünschte, korrekte Ergebnis:

<A>
<B>
<C>
<D/>
<D/>
<D/>
<E/>
</C>
</B>
</A>