这是XML代码:
<perfil>
<person idP="P1">
<studied refidEs="Es3"/>
.
.
.
<schools>
<school idEs="Es3">
<name>Name of the school</name>
</school>
在文件的开头我引用了某所学校,最后我得到了具有正确身份的学校名称。在XPath表达式中,我必须提到开头的内容(例如perfil/person/studied[@refidEs]
),并且我希望它显示学校的名称。问题是,当我在示例中使用表达式时,它只显示学校的id。即使我以/text()
结尾,也没有显示结果。
答案 0 :(得分:0)
此XPath表达式将选择name
的{{1}}的字符串值,school
属性值为@idEs
:
Es3
对于提供的XML(假设它是完整的,格式正确的,没有其他string(//school[@idEs='Es3']/name)
元素具有相同的school
属性值),这将选择:
Es3
答案 1 :(得分:0)
这就是你用xpaths来识别元素的方法:
//school[@idEs='Es3']/name[1]
Xpath允许您以这种方式选择任何属性。例如,您可以将@idEs=
替换为任何其他属性选择器,例如@class=
。下一部分获取第一个<name>
元素的值,这是您尝试定位的元素。
请查看此内容以进一步说明http://www.w3schools.com/xsl/xpath_syntax.asp