Промышленные схемы почти всегда многофайловые: общие типы в common.xsd, отдельные файлы на каждое сообщение. Чтобы такая схема проверялась и отображалась целиком, редактору нужны все её файлы — их кладут в проект с той же структурой папок.
Как разложить схему
- Войдите и создайте проект (меню профиля → «Мои проекты»).
- В проекте переключитесь на вид По папкам и создайте папки кнопкой Папка — так же, как файлы лежат у вас на диске, например
schemasиtypes. - Создайте XSD-артефакты с теми же именами файлов (
order.xsd,common.xsd): кнопкой Создать в проекте или из редактора XSD — открыть файл, «Сохранить в аккаунт» и «Артефакт → Добавить в проект…». - Перетащите артефакты в нужные папки мышью. Подсказка у артефакта показывает путь, по которому на него ссылаются другие файлы.
- Откройте главную схему: ссылки
schemaLocation="../types/common.xsd"разрешатся по дереву папок проекта.

Как разрешаются пути
- Путь считается от папки текущего файла:
../types/common.xsd— на уровень выше, затем в папку types. - Путь, начинающийся с
/, — от корня проекта. - Регистр букв в имени не важен, расширение можно опустить, если имя уникально.
- Адреса в интернете (
http://…) не загружаются: если схема импортирует внешнюю, скачайте её и положите в проект.
Работа со связанными файлами
- Ctrl+клик по
schemaLocationили по имени типа из другого файла открывает этот файл. - В списке компонентов есть раздел Подключения; типы из подключённых схем используются на диаграммах.
- Проверка на сервере учитывает все подключённые файлы — ошибки в ссылках видны сразу.
- Проверка XML по такой схеме (Файл → Проверить по XSD…) тоже подтянет все её файлы.
include и import — в чём разница
xs:includeподключает схему с тем жеtargetNamespace(или без него) — как будто типы объявлены в этом файле.xs:importподключает схему другого пространства имён; на её типы ссылаются через префикс, объявленный для этого пространства имён.
При преобразованиях (XSD в JSON Schema, пример XML) подключённые файлы тоже учитываются и встраиваются в результат.
Пример структуры
проект/
├── schemas/
│ ├── order.xsd ← <xs:include schemaLocation="../types/common.xsd"/>
│ └── payment.xsd ← <xs:import namespace="urn:bank" schemaLocation="../bank/bank.xsd"/>
├── types/
│ └── common.xsd
└── bank/
└── bank.xsd
Откройте schemas/order.xsd — на диаграмме будут типы из common.xsd; payment.xsd покажет элементы банка по префиксу пространства имён.
Вопросы и ответы
Ошибка «Не удаётся найти схему» при правильном пути? Проверьте название артефакта: оно должно совпадать с именем файла в schemaLocation (с расширением или без). Путь, по которому на артефакт ссылаются, показан подсказкой в дереве проекта.
Можно ли загрузить много файлов сразу? Через интерфейс артефакты создаются по одному. Для переноса большой схемы удобен ИИ-агент через MCP или внешний API — они создают файлы в нужных папках пачкой (см. гайд).
Что с xs:redefine? Подключается так же, как include; проверка выполняется по правилам XML Schema 1.0.
