0
は、ここに私のXMLファイルのスケッチです:要素を数え、その数を整数(XSD 1.1)と比較するXPath?
<file recordCount="n">
<record/>
<record/>
<record/> <!-- ...etc... -->
</file>
私は@recordCount
(正の整数)が含まれているrecord
要素の計算された数に等しくなければならないことをfile
要素上のXMLスキーマ(バージョン1.1)アサートを作りましたfile
にあります。これは、現在私は@recordCount
に入れてどんなテストXMLファイルを失敗している
test="count(record) eq @recordCount"
(nonZeroInteger
を与えられる)と、しかし、多くの(有効な)record
の要素を私は持っている:
ここで私が思い付くことが最高です...
test
で比較する2つの変数のノードパスやタイプのような、本当に基本的なものがないと思いますか?
おそらく関連:XSD 1.1 Assert to Count and Compare Elements
(a)間違った要素にアサーションを入れたり、(b)XPath式で名前空間接頭辞を使用するのを忘れるなど、本当に簡単な間違いがあると思われます。 recordCountを明示的にxs:integerに変換することもお勧めしますが、必須ではありません(recordCountの宣言方法によって異なります)。これを単純で実行可能な例に縮小した場合は、何が間違っているかを教えてくれるでしょう。 –
ありがとうございます。何とか解決しました。私はその質問を閉じます。 – Michael