Xpath 如何从内部条件中的外部节点访问属性?

Xpath 如何从内部条件中的外部节点访问属性?,xpath,Xpath,我要执行以下XPath: /Configs/Category/InputMenu/Config[@Value='DualPack'和(/Configs/Category/MasterSlave/Config[@No=./@No]/@Value='Master')] 其中“[@No=./@No]”部分中的“/@No”来自/Configs/Category/InputMenu/Config@No,而不是来自/Configs/Category/MasterSlave/Config@No 如何指定。/@

我要执行以下XPath: /Configs/Category/InputMenu/Config[@Value='DualPack'和(/Configs/Category/MasterSlave/Config[@No=./@No]/@Value='Master')]

其中“[@No=./@No]”部分中的“/@No”来自/Configs/Category/InputMenu/Config@No,而不是来自/Configs/Category/MasterSlave/Config@No

如何指定。/@No来自该外部节点


谢谢-dave

在XPath 2中,您可以使用来模拟let of XQuery:

/Configs/Category/InputMenu/Config[@Value = 'DualPack' and (for $no in ./@No return /Configs/Category/MasterSlave/Config[@No = $no]/@Value = 'Master')]
否则,您可以将其转过来,检查No属性是否等于具有主值的元素的No属性(而不是检查具有相同No属性的元素的值是否为主值)

/Configs/Category/InputMenu/Config[@Value = 'DualPack' and @No = /Configs/Category/MasterSlave/Config[@Value = 'Master']/@No]