Модуль проверки XML, как и модуль для
IN4, вызывается при сохранении обменного файла
автоматически, либо вручную, командой > . Отметим, что данная команда появляется в меню только
если вы работаете с картой на основе шаблона
XMLNormal.dmf
.
После запуска модуля, в него загружается текущий обменный файл и выполняется проверка. Пример окна модуля приведен на Рис.12.6. Рассмотрим его элементы.
Как можно видеть, вместо привычных меню и панели инструментов, модуль получил современный “ленточный” интерфейс. Ничего сложного здесь нет - мы видим те же кнопки открытия, сохранения, запуска проверки, а также синхронизации изменений.
Ниже “ленты” расположены:
Панель Файл с открытыми файлами. Открытый файл можно отобразить в виде дерева узлов или в виде текста.
Информационная панель Выбранный узел, на которой отображается путь к текущему узлу и его описание.
Панель Ошибки. Выбор конкретной ошибки из списка автоматически прокручивает файл в то место, где эта ошибка была найдена. Щелчок правой кнопки мыши на ошибке позволяет выделить ошибочный объект в Digitals, воспользовавшись соответствующей командой контектного меню.
Модуль XMLChecker.exe
размещается в
подпапке XMLCheck
программной папки. Здесь же
находятся файл настроек, языковые файлы и подпапки, содержащие
справочники и скрипты проверки.
Посмотреть список доступных скриптов и выбрать один из них в качестве текущего (установив галочку) можно в выпадающем меню кнопки Выполнить. В поставке изначально присутствуют три скрипта: для проверки одиночного файла, для проверки всех открытых файлов, а также скрипт для конвертации из IN4 в XML (о последнем мы поговорим в отдельном разделе). В меню имеются команды для добавления новых скриптов в список доступных, изменения строки описания текущего скрипта, а также отладки скрипта.
Что же такое скрипт проверки и как выполняется сама проверка? Здесь следует сказать, что механизм скриптов для проверки XML отличается от подхода, принятого для сценариев проверки IN4. Скрипты для проверки написаны на Pascal-подобном языке и запускаются посредством встроенного в модуль скриптового “движка”.
Для проверки различных частей обменного файла в язык добавлен ряд вспомогательных функций, которые умеют извлекать информацию из обменника. В рамках скрипта извлеченную информацию можно проверить практически любым мыслимым способом. Например, вы можете сравнить содержимое некоего дескриптора со значениями в справочнике или проверить некие условия прямо в коде скрипта. Таким образом организуется проверка правильности кодирования угодий и иных объектов обменного файла.
Разумеется, подобная гибкость имеет свою цену. Написание скрипта является довольно сложной задачей для неподготовленного пользователя (читай: не имеющего навыков программирования). Впрочем, с проблемой написания скриптов всегда готовы помочь разработчики Digitals. Больше информации о скриптах для проверки обменных файлов XML ищите на форуме.