KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have an XML document that looks like this: <kmsg xmlns="http://url1" xmlns:env="url1" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xsi:schemaLocation="http://location that does not exist.xsd"> <header> <env:envelope> <env:source branch="907" machine="0" password="J123"/> </env:envelope> </header> <body> <OrderResponse xmlns="urn:schemasbasdaorg:2000:orderResponse:xdr:3.01"> <SomeMoreNodes/> </OrderResponse> </body> It does not have any schemas available despite having namespaces specified (I'm getting this from an external source so have no control). I'm parsing it with an XDocument , but keep getting null s for the items not in the env namespace. I'm setting up the XDocument like this: XDocument Source = XDocument.Load("Testfile.xml"); XmlNamespaceManager oManager = new XmlNamespaceManager(new NameTable()); oManager.AddNamespace(String.Empty, "http://xml.kerridge.net/k8msg"); oManager.AddNamespace("env", "http://xml.kerridge.net/k8msgEnvelope"); Then I try to get values: ?Source.XPathSelectElement("//kmsg", oManager) null ?Source.XPathSelectElement("//header", oManager) null ?Source.XPathSelectElement("//env:source", oManager) Gets the node correctly I'm assuming this is something to do with me setting up the namespace manager wrong but I can't figure out how to fix it. Any help would be great. Thanks
Tags (comma-separated)
Save Edits
Cancel