2011-11-11 7 views
1

xPathNavigator.evaluate()呼び出しがノードを返さない理由を確認する方法はありますか?xpathnavigatorの結果を取得する評価

<Vehicles> 
    <car> 
     <wheels>4</wheels> 
     <seats>5</seats> 
    </car> 
</Vehicles> 

と次のXPath式:次のXML文書所与例えば

//Vehicles[((car[wheels = 4 and seats = 2]))] 

をI」が理由節のノードが選択されなかったという指示のいくつかの並べ替えを希望シート数= 2 "であるからである。

これは何らかの方法で可能ですか?

答えて

0

次のXPath式:

//Vehicles[((car[wheels = 4 and seats = 2]))] 

が、私はノードがあるため、車輪の数の「席= 2」ではないので、句の を選択しなかったことを示す指標のいくつかの並べ替えをしたいと思います。

これは何らかの方法で可能ですか?

あなたはこれらの式を使用する場合、これは可能でしょう:

ここ
//Vehicles[car[wheels = 4]] 

結果がnull(またはのXmlNodeの空のコレクション)でない場合、その後、あなたがもしその次の式を知っているだろう。

//Vehicles[car[wheels = 4][seats = 2]] 

は、車輪が4つの子どもがcarであるが、正確に2つの座席を持たない子供がいるということです。

+0

私がテストしたいxPathクエリが実行時に生成されるため、それをテストするためにxPathクエリを書くことはできません。 "where"句を区切る方法がない限り – user1041808

+0

@ user1041808:質問を編集して説明する必要があります。 XPath式の実行時生成を制御できない場合は、もちろんXPath式を処理して2つのうちから2つを作成することは不可能です。 –

1

「なぜ」は、あなたが自動化できる質問の種類ではありません。 XPath式がノードを選択しないという無数の理由があります。ノードが間違った名前空間にある場合はどうなりますか? "// Vehicles"の代わりに "// vehicles"を書いたら?

あなたができることは、確認したい条件の種類を定義してテストすることです。

関連する問題