Hallo allerseits,
folgendes Problem anhand eines Beispiels:
<a>
<b>foo</b>
<b>bar</b>
<c>bla</c>
<unwanted>Böse Daten ;)</unwanted>
<b>baz</b>
</a>
Ich habe ein MS XML 3.0 DOMDocument und möchte nun über die selectNodes-Methode an alle b's und c's in a ran. Wie geht das (mit dem MS XML Parser 3.0)? Wichtig ist vor allem die Reihhenfolge der Elemente, so dass 2 XPath-Abfragen à la "a/b" und "a/c" nicht funktionieren. Ich könnte nun alle childNodes durchlaufen und den baseName überprüfen, aber ich bin mir sicher, dass es auch eine nette XPath-Variante gibt. Setze mich erst seit kurzem mit diesem Thema auseinander und wäre daher auch dankbar für Links zu XML/XPath und Konsorten, die nicht so sehr auf XSLT fokussiert sind.
Ich habe da was von der XPath-Funktion name() gelesen und dachte mir, dass vielleicht folgendes funktionieren könnte: "a/*[name() = 'b' or name() = 'c']" Aber hierbei erklärt der MS-Parser mir, dass die Funktion name() unbekannt ist (was er übrigens von jeder Funktion behauptet).
Danke für Eure Hilfe!
Ciao
Tommy