0

XPath 1.0 または 2.0 に NULL リテラルはありますか?

私の使用例は、条件付き ( if then else) XPath 式があり、特定の条件を示すために NULL を返したい場合です。私の場合、空の文字列を返すことは、if then else式の他の部分の有効な結果である可能性があるため、あいまいになる可能性があることを恐れています。

4

1 に答える 1

2

空のシーケンス()はそのまま使用できます。パス式の結果がない場合にも返されます。

let $foo := "foo"
return
  if ($foo = ("foo", "bar", "batz")) then
    $foo
  else
    ()

を使用して空のシーケンスを確認できます

let $result := ()
return empty($result)

最初の XPath 式の結果をネイティブ コードに渡す場合、結果がない (空のシーケンス / "NULL") または結果の文字列がある (空の可能性がある) ことで、空の文字列と "NULL" を区別できるはずです。 )。

于 2013-06-28T22:44:27.340 に答える