Access, VBA, XPAth und Namensmanager
Marzer
Gesendet: 05.09.16 17:30
Betreff: RE: Access, VBA, XPath und Namensmanager


Veteran

Beiträge: 101
100
Tipp von andere Stelle: Die Namespaces mit der Property "SelectionNamespaces" mit Prefixes versehen, um die einzelnen Elemente dann im XPath damit ansprechen zu können. Der Code könnte dann zum Beispiel so aussehen (nicht getestet!)

Set xmlDoc = CreateObject("MSXML2.DOMDocument.6.0" )
xmlDoc.loadXML(responseXML)
' hier die einzelnen Namespaces definieren, neu sind hier Prefixes angegeben:
xmlDoc.setProperty "SelectionNamespaces", "xmlns:uid='http://www.uid.admin.ch/xmlns/uid-wse' xmlns:ech-0108='http://www.ech.ch/xmlns/eCH-0108/1' "

' So könnte dann eine XPath Abfrage möglich sein, unter Verwendung der Prefixes:
Set orgNode = xmlDoc.selectSingleNode("//uid:SearchResult/uid:organisation/ech-0108:organisation)

Eigener Umweg: Die XML-Datei öffnen, einlesen, alle Default Namespaces entfernen, und in der gekürzten Form wieder abspeichern. Dann mit XPath einlesen. Das klappt.
Top of the page Bottom of the page