select nodes from XML/DOM to List( a, b, c, d, e )
Gruppe |
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
>
<
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.
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 |