Xml XPath查询-节点名称有多个元素
绝对的新手,需要一个快速的答案(今晚我将对此进行研究,但现在需要一个答案)。为白痴提前道歉: 我编写了一个xpath,如下所示:Xml XPath查询-节点名称有多个元素,xml,xpath,Xml,Xpath,绝对的新手,需要一个快速的答案(今晚我将对此进行研究,但现在需要一个答案)。为白痴提前道歉: 我编写了一个xpath,如下所示: sum(aaa[status='X' and code='Y']/value) 这正是我想要的。但是,aaa以以下格式存在于其他几个节点中: fff xmlns="urn:xxx.co.uk/soap:xxx" id="xxx" ggg type="1" ... title="ASDGHJAS ASHD" 为什么不: sum(fff/ggg/aaa[status
sum(aaa[status='X' and code='Y']/value)
这正是我想要的。但是,aaa以以下格式存在于其他几个节点中:
fff xmlns="urn:xxx.co.uk/soap:xxx" id="xxx"
ggg type="1" ... title="ASDGHJAS ASHD"
为什么不:
sum(fff/ggg/aaa[status='X'和code='Y']/value)
work
我要怎么做才能让它看到节点fff和ggg?我无法键入全名,因为每次查询运行时,它们都不同,所以在初始名称之后的所有项都不相同
如果你能帮助一个没用的新手,谢谢
<fff xmlns="urn:xxx.co.uk/soap:xxx" id="xxx" linktype="0">
<ggg type="1" title="ABC">
<aaa>
<status>X</status>
<code>Y</code>
<value>15</value>
</aaa>
<aaa>
<status>Z</status>
<code>G</code>
<value>5</value>
</aaa>
<aaa>
<status>X</status>
<code>Y</code>
<value>30</value>
</aaa>
</ggg>
您的XPath不考虑默认名称空间。请参见并为默认名称空间定义名称空间前缀。 在您的特定情况下,定义以下命名空间
x=urn:xxx.co.uk/soap:xxx
那么这个XPath,
sum(//x:aaa[x:status='X' and x:code='Y']/x:value)
将返回
45
正如所料,XPath没有考虑默认名称空间。请参见并为默认名称空间定义名称空间前缀。 在您的特定情况下,定义以下命名空间
x=urn:xxx.co.uk/soap:xxx
那么这个XPath,
sum(//x:aaa[x:status='X' and x:code='Y']/x:value)
将返回
45
不出所料谢谢你的帮助,而不仅仅是因为我的基本知识而辱骂我。这个相关的问题很有帮助,尽管我还是有点困惑。我现在要承认失败,直到我丈夫回家。我试着自己做——尽管你们做了大部分!谢谢你的帮助,而不仅仅是因为我的基本知识而辱骂我。这个相关的问题很有帮助,尽管我还是有点困惑。我现在要承认失败,直到我丈夫回家。我试着自己做——尽管你们做了大部分!