I'm trying to get an element of a xml by using the function GetElementById, but the function is always returning null.
//get xml text from a web service
string xml = aS.createTree();
XmlDocument tree = new XmlDocument();
tree.LoadXml(xml);
//get all nodes with the tag name "item"
XmlNodeList node = tree.GetElementsByTagName("item");
//just for test to see if i could get the attribute value which returns the expected
string idTemp = node[0].Attributes["ID"].Value;
XmlElement elem = tree.GetElementById("1");
elem is always returning null. Can you guys help me out?
By the way this is the xml that i'm trying to parse:
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE tree [
<!ELEMENT tree ANY>
<!ELEMENT item ANY>
<!ATTLIST item id ID #REQUIRED>
]>
<tree>
<item id="1">
<item id="2"></item>
</item>
<item id="5">
<item id="6"></item>
<item id="7">
<item id="8">
<item id="10">
<item id="11"></item>
</item>
</item>
<item id="9"></item>
</item>
</item>
</tree>
As far as I know the id att cannot start with a number. Can you try some thing like id="_1"
and see how it works.