Проверка больших XML-файлов с помощью schematron - PullRequest
4 голосов
/ 27 мая 2011

Я использую schematron для проверки больших XML-файлов (несколько мегабайт).Проверка выполняется достаточно быстро, если с файлами все в порядке (если ошибок нет).Но когда количество ошибок увеличивается, увеличивается время выполнения проверки схемы.

Есть ли способ остановить проверку XSLT схемы, когда, например, найдено 200 ошибок.Это помогло бы, потому что если есть большие файлы, которые содержат сотни случаев одной и той же ошибки, то, безусловно, будет достаточно сообщить только о первых ошибках и попросить пользователя проверить файл еще раз после их исправления.

1 Ответ

1 голос
/ 27 мая 2011

Вы должны быть в состоянии максимально приблизиться к вашим требованиям, сочетая Схематрон Терминатор Валидатор с Схематрон Фазы

Валидатор терминатора допускает сбой проверки схематрона при первой ошибке.

Фазы позволяют разбить валидацию на этапы и проводить постепенно.

Один или оба из них в комбинации должны приблизить вас к тому, что вы хотите - возможно, помещение всех ваших классов правил в фазы, а затем выполнение каждой фазы с терминатором даст хороший результат, позволяя пользователям получать информацию о нескольких ошибках одновременно. .

...