XML / XSD Tester

Вставьте XML-документ и схему XSD — инструмент проверит, соответствует ли документ схеме, и покажет ошибки по строкам.

XML-документ
Схема XSD

Данные обрабатываются на сервере сайта только на время запроса и не сохраняются.

Зачем проверять XML по схеме

XSD-схема описывает, каким должен быть документ: какие элементы обязательны, в каком порядке они идут, какие у них атрибуты и типы значений. Документ может быть синтаксически безупречным, но не пройти проверку получателя: пропущен обязательный элемент, в поле количества записано «abc», дата в неверном формате.

Проверка по схеме нужна, когда вы формируете XML для внешней системы: электронные документы в ЭДО (УПД, счета-фактуры по форматам ФНС), отчётность, обмен с 1С, товарные фиды, запросы к SOAP-сервисам. Лучше найти ошибку до отправки, чем получить отказ оператора или контрагента.

Что проверяется

  • синтаксис XML — закрытые теги, вложенность, кодировка;
  • наличие и порядок обязательных элементов (sequence, choice, all);
  • обязательные атрибуты (use="required");
  • типы данных: xs:integer, xs:decimal, xs:date, xs:positiveInteger и пользовательские;
  • ограничения: длина строки, шаблон (pattern), перечисления (enumeration), минимум и максимум;
  • количество повторений (minOccurs, maxOccurs).

Ограничения

Проверка выполняется на нашем сервере библиотекой libxml и ничего не сохраняет. Схемы, подключающие другие файлы через xs:include или xs:import, нужно предварительно собрать в одну: загружать внешние файлы сервер не будет. По той же причине запрещены объявления сущностей <!ENTITY> — это защита от атак XXE. Максимальный размер — 2 МБ для XML и 1 МБ для схемы.

Частые вопросы

Сохраняются ли мои документы?

Нет. XML и схема передаются на сервер только на время проверки и не записываются ни в файлы, ни в логи.

Схема ссылается на другие файлы XSD. Что делать?

Объедините схемы в один файл: вставьте содержимое подключаемых схем вместо xs:include. Сервер не загружает внешние файлы из соображений безопасности.

Можно ли проверить файл УПД из ЭДО?

Да, если у вас есть XSD-схема соответствующего формата ФНС. Её публикует ФНС на своём сайте вместе с описанием формата.

Другие инструменты

Все инструменты для разработчиков