Processing XPath queries with namespaces in XML
The namespace is used in XML to differentiate nodes. That is, if the XML node uses a non-default namespace, the corresponding namespace must be specified when the XPath query is used, otherwise, the node cannot be found;
There are two ways to specify the namespace information when querying an XML node: 1. Use an XPATH image; 2. Use an XPATH string.
1. Specify namespace information through the XPath object
Xmlnamespacemanager xnm = new xmlnamespacemanager (xmldocument. nametable );
Xnm. defaultnamespace = "http://www.w3c.org/w2c ";
Xmldocument. selectnodes (XPath, xnm );
2. Another method is to directly point out the node namespace in the string expression of xpath.
String XPath = "/* [local-Name () = 'orderstatusresponsev10']/* [local-Name () = 'orderstatusresponse' and namespace-Uri () = 'HTTP: // www.newegg.com/vxi/datacontract/ OS /'#/##local-name () = 'responsedetail 'and namespace-Uri () = 'HTTP: // response () = 'podetail' and namespace-Uri () = 'HTTP: // configure () = 'datafrom 'and namespace-Uri () = 'HTTP: // www.newegg.com/vxi/datacontract/ OS /response'] ";