Учитывая этот набор данных по адресу: https://dd.weather.gc.ca/observations/xml/ON/today/today_on_20200129_f.xml
Я думаю, что неправильно обрабатывает пространства имен , но я не уверен, что здесь делать.
Как получить узел om: member, где om: member / om: Observation / om: metadata / set / идентификации-elements / element / name = wmo_station_number и его значение, например, 71704.
У меня есть это:
xml.Load(url);
var nsmgr = new XmlNamespaceManager(xml.NameTable);
nsmgr.AddNamespace("om", "http://www.opengis.net/om/1.0");
nsmgr.AddNamespace("", "http://dms.ec.gc.ca/schema/point-observation/2.1");
nsmgr.AddNamespace("gml", "http://www.opengis.net/gml");
nsmgr.AddNamespace("xlink", "http://www.w3.org/1999/xlink");
nsmgr.AddNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance");
nsmgr.PushScope();
// "Observation//element[@name='{identifier}']";
var tmp = xml.SelectSingleNode("//om:member/om:Observation/om:metadata", nsmgr);
Я знаю, что это полуумная попытка, но, кажется, как только я пытаюсь что-либо без префикса пространства имен, я получаю ошибки или просто ничего не возвращаю.