0
特定の要素や子ノードを持たない要素(テキストノードでも)を持たない文書を検索したい場合、その要素には特定の親ノードが必要です。例えば特定の要素を持たないか、要素にnull値を持つ文書を検索するにはどうすればよいですか?
:
サンプルXMLS:
<root>
<id>123</id>
<root2>
<number>1234</number>
</root2>
</root>
<root>
<id>123</id>
<root2>
<issue/>
<number>1234</number>
</root2>
</root>
<root>
<id>123</id>
<root2>
<volume/>
<number>1234</number>
</root2>
</root>
<root-second>
<id>123</id>
<root2>
<volume/>
<issue/>
<number>1234</number>
</root2>
</root-second>
<root-second>
<id>123</id>
<root2>
<volume/>
<issue/>
<number>1234</number>
</root2>
</root-second>
新しいドキュメント:
<root>
<id>123</id>
<root2>
<volume>233</volume>
<number>1234</number>
</root2>
</root>
<root>
<id>123</id>
<root2>
<volume>233</volume>
<issue>233</issue>
<number>1234</number>
</root2>
</root>
<root>
<id>123</id>
<root2>
<issue>233</issue>
<number>1234</number>
</root2>
</root>
今、私はすべてのXMLSが<root>
で<id>
を持つ必要とですは空の<issue>, <volume>
要素または要素がまったく存在しないことがあります。
上記の場合と同様に、<root-second>
のxmlsをrootとして返すべきではありません。
これは、各XMLを想定すると、ルート
David、私は質問を更新しました。 私は新しい文書を追加しました(それぞれのXMLは独自の文書にあります)。 3つのドキュメントにすべて,、または両方の要素に値(テキストノード)があるため、新しい追加ドキュメントは結果にならないようにしてください。真のクエリ:はの下にもあり、、がの下に存在することができ、私の場合のように (の兄弟) –
CTSを はいデビッドはの下に提示しなければならない、それがの親ノードである必要があり、 ()ML 7を使用しているのでこれを使用できません –
cts:true-query()をcts:and-query(())に置き換えます。 –