In Firefox JavaScript console:
parser = new DOMParser();
foo = parser.parseFromString('<foo></foo>', "text/xml");
res = foo.evaluate("/foo", foo, null, 0, null);
res.iterateNext();
> [object Element]
foo = parser.parseFromString('<foo xmlns="http://foo.bar.baz/quux"></foo>', "text/xml");
res = foo.evaluate("/foo", foo, null, 0, null);
res.iterateNext();
> null
res = foo.evaluate("*[1]", foo, null, 0, null);
res.iterateNext();
> [object Element]
If an XML document doesn't contain an xmlns, it gets parsed and queried correctly. If it does, we are not able to query by tag and attribute names anymore. However, querying with wildcards and indexes does work. The same is observed in Chrome. Creating and using default namespace resolver, as well as custom one, doesn't help. Any suggestions?