docs(xdto-compile,xdto-decompile,xdto-validate): обязательность параметров и умолчания

В таблицах параметров не было видно, что обязательно, а что нет, и какие
значения подставляются по умолчанию. Добавлена колонка «Обязательный»
(по образцу form-edit), умолчания расписаны, отмечена взаимоисключающая
пара -XsdPath/-Xsd, псевдонимы -Path и поведение без -Force.

Сверил документацию с поведением скриптов: хеш-таблица в -Synonym работает
только в PS-порте, в Python её нет — из инструкции убрана, многоязычный
синоним задаётся блоком xs:appinfo, который поддерживают оба порта.

Убран последний след нашего обсуждения формата («отдельного DSL нет» —
читателю не с чем сравнивать), добавлено, где посмотреть уже собранные
пакеты, и точное имя файла справочника аннотаций.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-07-26 10:46:59 +03:00
co-authored by Claude Opus 5
parent 7ca6dfa6b2
commit 0aa9342407
3 changed files with 31 additions and 31 deletions
+16 -16
View File
@@ -1,7 +1,7 @@
---
name: xdto-compile
description: Создание пакета XDTO 1С из XML-схемы (XSD). Используй когда нужно добавить пакет XDTO в конфигурацию — для обмена, интеграции, веб-сервиса, разбора внешнего XML-формата
argument-hint: -XsdPath <файл.xsd> -OutputDir <каталог-исходников> [-Name <имя>] [-Synonym <синоним>] [-Comment <текст>] [-Force]
argument-hint: -XsdPath <файл.xsd>|-Xsd <схема> -OutputDir <каталог-исходников> [-Name <имя>] [-Synonym <синоним>] [-Comment <текст>] [-Force]
allowed-tools:
- Bash
- Read
@@ -13,20 +13,19 @@ allowed-tools:
Собирает пакет XDTO по XML-схеме: `XDTOPackages/<Имя>.xml`,
`XDTOPackages/<Имя>/Ext/Package.bin` и регистрацию в `Configuration.xml`.
Вход — обычная XSD. Отдельного формата описания нет: пиши схему так, как её пишут
везде, остальное навык сделает сам.
Вход — обычная XML-схема, писать её нужно так же, как для любого другого инструмента.
## Параметры
| Параметр | Описание |
|----------|----------|
| `XsdPath` | Путь к файлу XML-схемы |
| `Xsd` | Схема строкой, вместо `-XsdPath` |
| `OutputDir` | Каталог исходников конфигурации или расширения — там, где лежит `Configuration.xml` |
| `Name` | Имя объекта метаданных. По умолчанию — из `xs:appinfo`, иначе имя файла XSD |
| `Synonym` | Синоним: строка или хеш-таблица `@{ru='…'; en='…'}` |
| `Comment` | Комментарий |
| `Force` | Перезаписать существующий пакет |
| Параметр | Обязательный | Описание |
|----------|--------------|----------|
| `XsdPath` | один из двух | Путь к файлу XML-схемы. Псевдоним — `-Path` |
| `Xsd` | один из двух | Схема строкой, вместо `-XsdPath` |
| `OutputDir` | да | Каталог исходников конфигурации или расширения — там, где лежит `Configuration.xml` |
| `Name` | нет | Имя объекта метаданных. По умолчанию — из `xs:appinfo`, иначе имя файла XSD, санированное под идентификатор 1С |
| `Synonym` | нет | Синоним (строка). По умолчанию — из `xs:appinfo`, иначе имя пакета. Для нескольких языков задавай синоним в схеме, блоком `xs:appinfo` |
| `Comment` | нет | Комментарий. По умолчанию — из `xs:appinfo` |
| `Force` | нет | Перезаписать существующий пакет. Без него навык откажется затирать уже собранный пакет |
```powershell
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/xdto-compile.ps1" -XsdPath "<схема.xsd>" -OutputDir "<каталог-исходников>"
@@ -64,10 +63,11 @@ XSD выразительнее модели XDTO. Всё, что не перен
## Зависимости между пакетами
`<xs:import namespace="…"/>` разрешается по namespace среди пакетов конфигурации
или расширения.
Если пакета с таким пространством имён нет, платформа при загрузке молча подменит тип
на `xs:anyType` — без ошибки. Собирай сначала зависимости, потом зависящий пакет,
и проверяй результат через `/xdto-validate`.
или расширения. Если пакета с таким пространством имён нет, платформа при загрузке
молча подменит тип на `xs:anyType` — без ошибки. Собирай сначала зависимости, потом
зависящий пакет, и проверяй результат через `/xdto-validate`.
Какие пакеты уже собраны, видно в `ChildObjects` файла `Configuration.xml`.
## Что XSD выразить не может