私の現在のXPathは、条件を満たすノードancestor-or-self
を返します。2つの条件付きのXPath 1.0リターンノード
//*[contains(., '"& v_search &"')]/ancestor-or-self::*/*[local-name()='name' and @locale='en']
は今、私は一致するノードからfollowing-sibling
を返すために、追加の機能を実装したいです。私は以下のようにXPathを変更しました。しかし、それは結果に祖先 - または - 自己と兄弟を返すことはありません。
//*[contains(., '"& v_search &"')]/ancestor-or-self::*/following-sibling::*/*[local-name()='name' and @locale='en']
ここで、v_searchはテスト用の任意の文字列で置き換えることができる変数です。 私のXMLは次のようである: -
<root xmlns="https://jlkjsdlfjl/">
<name>Accounts</name>
<property name="included" type="hidden">true</property>
<locales>
<locale>en</locale>
<locale>de</locale>
</locales>
<defaultLocale>en</defaultLocale>
<searchspace>
<name locale="en">Accounts</name>
<name locale="de">Accounts</name>
<lastChanged>2014-03-05T18:47:30</lastChanged>
<lastChangedBy>userx</lastChangedBy>
<property name="included" type="hidden">true</property>
<searchspace>
<name locale="en">Database L</name>
<name locale="zw">Database L</name>
<searchSubject status="valid">
<name locale="en">SName1</name>
<name locale="zw">qskxyz</name>
<searchItem>
<name locale="en">IName1</name>
<name locale="zw">qixyz</name>
<hello>v_search</hello>
</searchItem>
<searchItem>
<name locale="en">IName2</name>
<name locale="zw">abc</name>
v_search
</searchItem>
<searchItem>
<name locale="en">IName3</name>
<name locale="zw">def</name>
<hello>something else</hello>
</searchItem>
</searchSubject>
</searchspace>
</searchspace>
<searchspace>
<name locale="en">Names</name>
<lastChanged>2016-01-12T12:42:46</lastChanged>
<searchspace>
<name locale="en">Database Layer</name>
<name locale="zw">Database Layer</name>
<searchSubject status="valid">
<name locale="en">SName2</name>
<searchItem>
<name locale="en">IName4</name>
<hello>...Hi there..</hello>
</searchItem>
</searchSubject>
</searchspace>
</searchspace>
</root>
v_searchはサンプルのキーワードである、私は最低の一致するノードの兄弟を返すようにしたいです。 、つまり自己の兄弟はancestor-or-self
です。
、それは-sibling'以下の '明確ではありませんあなたが意味する要素はどれですか?マッチング要素の 'following-sibling'またはマッチング要素の祖先の' following-sibling'? – har07
キーワードと上記のXMLを使って選択すると予想されるサンプルのキーワードと要素を提供すると助けになるかもしれません。 – har07
最後の行を編集 –