2012-11-12 57 views
0

我想執行以下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來自外部節點?

謝謝 - 戴夫

回答

1

在XPath 2,你可以使用模擬的XQuery令:

/Configs/Category/InputMenu/Config[@Value = 'DualPack' and (for $no in ./@No return /Configs/Category/MasterSlave/Config[@No = $no]/@Value = 'Master')] 

否則你可以把它周圍,並檢查無屬性等於沒有一個具有主值的元素的屬性(而是檢查具有相同「否」屬性的一個元素的值是否爲主)。

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