关于xml的面试题目,求高手解答下
1.写出班级号为2的所有学生的xpath
<学校>
	<班级 班号="1">
		<学生 姓名="张三"/>
		<学生 姓名="李四"/>
		…
	</班级>
	<班级 班号="2">
		<学生 姓名="王二"/>
		…
	</班级>
</学校>
2.有以下XML文档,请用Xpath查询出下列 符号name属性为“RBC”、且子节点<结论>不为空的节点。
<符号 name=’RBC’>
<名称>红细胞</名称>
<检验值>180g/L</检验值>
<结论>+</结论>
</符号>
<符号/>
------解决方案--------------------学校/班级[@班号=2]/@班号"
------解决方案--------------------   XmlDataDocument xd = new XmlDataDocument();
           xd.Load(@"..\..\XMLFile1.xml");
           XmlNode node = xd.SelectSingleNode("符号[@name=\"'RBC'\"]/结论");
           if(node.InnerText!="")
           Console.WriteLine(node.InnerText);
------解决方案--------------------XmlNodeList list = doc.SelectedNodes("/学校/班级[@班号=2]/学生");
XmlNodeList list = doc.SelectedNodes("/符号s/符号[@name='RBC' and 结论[string-length(.) > '0']]");
你的第二个不是标准的XML
我加了个根节点“符号s”
------解决方案--------------------1--》
C# code
XmlNodeList result = doc.SelectNodes("//学校/班级[@班号=1]/学生");
        foreach (XmlNode item in result)
        {
            Response.Write(string.Format("{0}-----{1}", item.Name, item.Attributes["姓名"].Value));
        }