select nodes from XML/DOM to List()

Prev Next

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.

Parameter

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