Schematron - это язык схемы для просмотра (вероятно, используемый как слой поверх вашего XSD).
Schematron основан на ограничениях, выраженных с помощью XPath, который в большинстве случаевдостаточно мощный, чтобы выразить, что нужно.Поскольку XPath может быть расширен с помощью пользовательских функций, существует возможность выполнить любую проверку, например, путем сравнения данных из внешних баз данных и т. Д.
(Если вы используете данные вне документа для проверкиВ этом случае хороший подход состоит в том, чтобы представить эти внешние данные в виде XML - возможно, доступного в стиле RESTy - чтобы ограничения валидации могли быть полностью выражены в терминах XML в вашей схеме Schematron.)