title: How do I select nodes that use a default namespace?
body: <p>The structure of the XML file is more or less as follows:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;a xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="url1" xsi:schemaLocation="url2 url3"&gt;
     &lt;b&gt;
       &lt;c&gt;&lt;/c&gt;
       &lt;c&gt;&lt;/c&gt;
       &lt;c&gt;&lt;/c&gt;
     &lt;/b&gt;
  &lt;/a&gt;
  </code></pre>
  
  <p>My goal is to select all the "c" elements, but the following xpath expression won't work: "//a/b/c".</p>
  
  <p>ie:</p>
  
  <pre><code>XmlDocument doc= new XmlDocument();
  doc.Load(filepath);
  XmlNodeList l = doc.SelectNodes("//a/b/c"); // 0 nodes
  </code></pre>
  
  <p>The only xpath expressions I tested that worked are /* (1 node) and //* (all nodes).</p>
  
  <p>Is this problem related to the XML namespace? If so, what's the proper way to set up the XMLDocument object?</p>
  
  <pre><code>        XmlDocument doc= new XmlDocument();
          doc.Load(filepath);
          XmlNamespaceManager m = new XmlNamespaceManager(doc.NameTable);
          m.AddNamespace(/* what goes here? */);
          XmlNodeList l = doc.SelectNodes("//a/b/c", m);
  </code></pre>