[英]How to get the attribute value of a parent element in Xpath if Child element exists?
[英]XPath get parent element
我有一個與XPath相關的問題。 我有這樣的XML條目列表:
<NavigationEntry>
<BaseData>
<Name>Entry Name</Name>
</BaseData>
<Relation>
<RelationEntry isDefault="0">
<ParentNavigationEntry>456</ParentNavigationEntry>
<Order>200</Order>
</RelationEntry>
</Relation>
<NavigationEntry>
<BaseData>
<Name>Entry Name</Name>
</BaseData>
<Relation>
<RelationEntry isDefault="0">
<ParentNavigationEntry>123</ParentNavigationEntry>
<Order>200</Order>
</RelationEntry>
</Relation>
問題是:如何獲取具有值為456的Field ParentNavigationEntry的所有導航條目。
我嘗試了//NavigationEntry//RelationEntry[ParentNavigationEntry="456"]
但這只給了我RelationEntry字段,但是我需要NavigationEntry字段。
是否可以通過單個XPath查詢解決此問題?
問題是:如何獲取具有值為456的Field ParentNavigationEntry的所有導航條目。
//NavigationEntry[
/Relation
/RelationEntry
/ParentNavigationEntry = 456
]
注意:選擇那些NavigationEntry
元素,然后過濾謂詞。 同樣,當模式眾所周知時,也不是使用//
好習慣,因為即使經過匹配,它也會遍歷整個后代樹。
將/ ParentNavigationEntry添加到您的XPath。
例...
//NavigationEntry//RelationEntry[ParentNavigationEntry="456"]//ParentNavigationEntry
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.