Вот эскиз моего файла XML:XPath для подсчета элементов и сравнения числа с целым числом (XSD 1.1)?
<file recordCount="n">
<record/>
<record/>
<record/> <!-- ...etc... -->
</file>
Я сделал схему XML (версия 1.1) Assert на file
элемент, что @recordCount
(положительное целое число), должно быть равно расчетное количество record
элементов, содержащихся в file
.
Вот лучшее, что я мог придумать:
test="count(record) eq @recordCount"
Это в настоящее время неудачу в XML-файл тест, что я положил в @recordCount
(дал nonZeroInteger
) и тем не менее многие (действительные) record
элементы У меня есть ...
Я предполагаю, что у меня отсутствует что-то действительно базовое здесь, например, путь узла или тип 2 переменных для сравнения в test
?
Возможно, связанные с: XSD 1.1 Assert to Count and Compare Elements
Я подозреваю, что вы совершили какую-то очень простую ошибку, например: (а) поместить утверждение на неправильный элемент или (б) забыть использовать префиксы пространства имен в выражении XPath. Я бы предложил также сделать явное преобразование recordCount в xs: integer, хотя я не уверен, что это важно (это зависит от того, как объявлен recordCount). Если вы уменьшили его до простого, но исполняемого примера, мы могли бы рассказать вам, что случилось. –
Спасибо, я как-то исправил его. Я закрываю вопрос. – Michael