1

xml ドキュメント内の要素のリストの存在を確認する方法はありますか? 要素名は順番に格納されます。xml ドキュメントにいずれかの要素 (順番に格納された名前) が含まれている場合は YES を返し、それ以外の場合は NO を返します。以下の例を試しましたが、うまくいきませんでした。

<book category="COOKING">
   <title lang="en">Everyday Italian</title>
   <author>Giada De Laurentiis</author>
   <year>2005</year>
   <price>30.00</price>
 </book>   

let $doc:=doc("book.xml")/book let $fields := ('title','author')

return 
    if(doc/*:$fields)   
    then 
    "YES"
    else "NO"
4

2 に答える 2

0

使用:

if(/*/*/name() = ('title', 'author'))
  then 'YES'
  else 'NO'

または、代わりに:

('YES'[$doc/*/*/name() = $fields], 'NO')[1]
于 2012-09-22T18:05:20.510 に答える
0

これを試して

return 
    if($fields[not(.=$doc/*/name())]
    then 
    "No"
    else "YES"
于 2012-09-21T12:18:18.853 に答える