Jag ska ta ut lite information från två xml-dokument. Jag använder C++ och skapar en MSXML2::DOMDocument40 men det ska nog inte spela så stor roll för mitt problem. Testa detta... (ej C++ men det är samma metoder du anropar..) Ja jag hittade något liknande när jag sökte på webben. Det verkar ju vara bra, fast jag hittar inte metoden setProperty någonstans i MSXML2::IXMLDOMDocumentPtr Ah, interfacet MSXML2::IXMLDOMDocument2Ptr fungerar ju bättre i det här fallet. Ska testa koden du hade så fungerar det säkert prima. Tack :-)Hitta noder, xpath
Jag tar ut en nodelist på följande vis:
MSXML2::IXMLDOMNodeListPtr nodelistPartner = nodeDate->selectNodes("/rootelement/test/info");
Det fungerar utmärkt i det ena dokumentet
<code>
<rootelement implementation="apa" version="5">
</code>
men inte i det här, som är nästan identiskt
<code>
<rootlement xmlns='test5.xsd' version='5'>
</code>
Är det för att det är deklarerat ett default namespace där? Hur ska jag bära mig åt för att få rätt resultat i fall två? Eventuellt så kan det finnas ytterligare varianter, t.ex. xmlns='test6.xsd'.
Jag har sett att ibland lägger man till ett prefix, t.ex. selectNodes("/a3:root/a3:body/tag/innertag"); Men här finns det ju inget sådan prefix deklarerat. Kan man skapa det på något sätt?
Sv: Hitta noder, xpath
DOM.setProperty ("SelectionLanguage", "XPath")
DOM.setProperty ("SelectionNamespaces", "xmlns:myNS='uri:MyNameSpace'")
nodeList = .selectNodes("//myNS:Test")
OlaSv: Hitta noder, xpath
error C2039: 'setProperty' : is not a member of 'MSXML2::IXMLDOMDocument'
(har code-completion och finns inte någon liknande metod heller)
Är det något annat objekt jag måste skapa då tro? Får leta lite till.. Sv: Hitta noder, xpath