我需要一个xpath
,它会返回 OutletActivityId ,其中相应的 OutletName和ActivityName具有特定值。
下面附有xml
回复的图片。
我已经尝试过xpath
个问题但是没有让它工作
declare namespace ref='http://api.socialservices.gov.au/ebo/DataCollection/Organisation';
//ref:OutletName[contains(text(),'${#Project#u_OutletName}') and ref:ActivityName[contains(text(),'${#Project#u_ActivityName}')]/../ref:OutletActivityId
答案 0 :(得分:1)
这是一个可能的XPath:(为便于阅读而格式化)
declare namespace ref='http://api.socialservices.gov.au/ebo/DataCollection/Organisation';
//ref:OutletActivity[
ref:OutletName[contains(.,'${#Project#u_OutletName}')]
and
ref:ActivityName[contains(.,'${#Project#u_ActivityName}')]
]/ref:OutletActivityId
简要说明:
//ref:OutletActivity
:在XML中的任何位置找到OutletActivity
元素,满足以下条件ref:OutletName[contains(.,'${#Project#u_OutletName}')]
:(条件1)的子元素OutletName
包含文字"${#Project#u_OutletName}"
ref:ActivityName[contains(.,'${#Project#u_ActivityName}')]
:(条件2)并且包含包含文字ActivityName
"${#Project#u_ActivityName}"
/ref:OutletActivityId
:来自此类OutletActivity
,返回子元素OutletActivityId
如果一个OutletActivity
只能有一个OutletName
和一个ActivityName
个子元素,那么以下稍短的XPath也应该有效:
//ref:OutletActivity[
contains(ref:OutletName,'${#Project#u_OutletName}')
and
contains(ref:ActivityName,'${#Project#u_ActivityName}')
]/ref:OutletActivityId