select nodes from XML/DOM to List( a, b, c, d, e )

Gruppe

XML Functions


Die Funktion speichert den XPath-Ausdruck aus dem XML/DOM-Objekt a in einer Liste c vom Root-Verzeichnis bis zum angegebenen XPath-Ausdruck b ab.

Optional kann zusammenhängend ein XPath-Ausdruck aus den Werten b und d erstellt werden. Weiter können optional mit Hilfe einer Map, welche im Parameter e angegeben wird, Namespaces definiert werden. Bestehende Namespaces werden bei gleichem Namen ersetzt.

Es wird die Anzahl der Knoten zurückgegeben.

Parameterbeschreibung


Parameter

Beschreibung

a

Name des XML/DOM-Objekts.

b

XPath-Ausdruck (Selektion einer bestimmte Knotenmenge).

c

Name der Liste.

d

Optionaler XPath-Ausdruck.

e

Name der Map für die Namespaceverwaltung.

Beispiel


Gegeben ist folgende XML-Datei.


Rechnung.xml
<Rechnung>
<Benutzer>
<Kundennummer>12345</Kundennummer>
<Vorname>Gustav</Vorname>
<Nachname>Thalmeier</Nachname>
<Ort>Treuchtlingen</Ort>
<Geburtstag>15.07.1981</Geburtstag>
<Bestellung>
<Artikelnummer id="123689">DE459363258</Artikelnummer>
<Menge>1</Menge>
<Preis>17,98</Preis>
</Bestellung>
<Bestellung>
<Artikelnummer id="5896324">459363298</Artikelnummer>
<Menge>1</Menge>
<Preis>4,99</Preis>
</Bestellung>
</Benutzer>
<Benutzer>
<Kundennummer>85639</Kundennummer>
<Vorname>Henriette</Vorname>
<Nachname>Michlmeier</Nachname>
<Ort>Breckerfeld</Ort>
<Geburtstag>04.12.1975</Geburtstag>
<Bestellung>
<Artikelnummer id="9832475">DE459362358</Artikelnummer>
<Menge>1</Menge>
<Preis>199,59</Preis>
</Bestellung>
<Bestellung>
<Artikelnummer id="123659">459363258</Artikelnummer>
<Menge>3</Menge>
<Preis>7,99</Preis>
</Bestellung>
<Bestellung>
<Artikelnummer id="123689">DE459363258</Artikelnummer>
<Menge>1</Menge>
<Preis>14,99</Preis>
</Bestellung>
</Benutzer>
</Rechnung>


Es soll nun pro Benutzer die Kundennummer sowie die Artikelnummer ausgegeben werden, die nicht mit DE beginnt und in einer Liste list_Artikelnummer abspeichern.


images/download/attachments/189461406/857-version-1-modificationdate-1737952533545-api-v2.png


Im Berechnungsfeld loadXML wird die Liste ausgegeben (durch | getrennt) mit sämtlichen XPath-Ausdrücken bis zum eingestellten Wert Benutzer. In der ersten Zeile der untenstehenden Tabelle sind die Parameter für diese Funktion aufgelistet. Der Knoten Benutzer schleift über die Liste list_Benutzerdaten. Im Feld xpath wird der jeweilige XPath-Ausdruck aufgelistet für den jeweiligen Knoten. In den Feldern Kundennummer und Artikelnummer werden die ausgewerteten Daten ausgegeben. Zusätzlich wird im Feld Artikelnummer der Wert in einer Liste list_Artikelnummer mit der hier beschriebenen Funktion gespeichert. Der XPath-Ausdruck wird aus Parameter d (in diesem Fall /Rechnung/Benutzer)und dem unten angegebenen zweiten Parameter c (/Bestellung[Artikelnummer>0]/Artikelnummer) zusammengesetzt. Die eingestellten Parameter sind in Zeile zwei in der Tabelle zu finden.


Parameter a

Parameter b

Parameter c

Parameter d

Ergebnis

xml_Rechnung

//Benutzer

list_Benutzerdaten


2

xml_Rechnung

/Bestellung[Artikelnummer>0]/Artikelnummer

list_Artikelnummer

xpath

2