About xdto-decompile
xdto-decompile is a skill for converting an XDTO package into a readable, editable XML Schema (XSD). It is intended for examining or broadly revising package schemas and can preserve package metadata for recompilation.
Key features
- 01Convert XDTO packages to XSD
- 02Read package paths or metadata XML
- 03Write to a file or stdout
- 04Preserve metadata for recompilation
- 05Export a valid schema without package data loss
Use cases
- 01Inspect an unfamiliar package schema
- 02Make broad schema edits before recompiling
- 03Provide a package schema to a counterparty
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ nikolay-shirokov/ cc-1c-skills --skill xdto-decompileAfter installing, type/xdto-decompilein Claude Code to confirm it loaded.
Bundled filesscripts/xdto-decompile.ps1scripts/xdto-decompile.py
Details
From the project README/xdto-decompile — Выгрузка пакета XDTO в XML-схему
Превращает пакет XDTO в обычную XML-схему — читаемую и редактируемую.
Заменяет чтение Ext/Package.bin напрямую.
Параметры
| Параметр | Обязательный | Описание |
|---|---|---|
PackagePath | да | Каталог пакета, путь к Ext/Package.bin или к <Имя>.xml объекта метаданных. Псевдоним — -Path |
OutFile | нет | Записать схему в файл (UTF-8 с BOM). Без него — вывод в stdout |
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/xdto-decompile.ps1" -PackagePath "<путь>"
Примеры:
... -PackagePath src/XDTOPackages/ОбменСБанком
... -PackagePath src/XDTOPackages/ОбменСБанком -OutFile bank.xsd
Переработка схемы целиком
/xdto-decompile → правка XSD → /xdto-compile -Force возвращает пакет без потерь,
включая имя, синоним и комментарий объекта метаданных — они выгружаются
в xs:annotation/xs:appinfo.
Этот же путь даёт версионную копию пакета: смени в схеме targetNamespace и собери
её с -Name нового пакета — имя и синоним задаются флагами /xdto-compile, внутри
схемы их править не нужно. Меняя пространство имён, поправь и объявление xmlns
с тем же URI: внутренние ссылки пользуются им как префиксом. Заменять все вхождения
строки нельзя — пострадает импорт пространства имён, для которого старый URI является
префиксом (urn:пример:обмен и urn:пример:обмен:legacy).
Этот путь нужен, когда схему меняют широко или сначала надо разобраться, как она
устроена. Чтобы поправить одно свойство, схему целиком читать не нужно — /xdto-edit.
Если нужна не схема, а сводка «что присвоить и что обязательно», — /xdto-info.
В схеме могут встретиться атрибуты с префиксом xdto: — так записано то, что
XML Schema выразить не может (например nillable у атрибута). Схема при этом остаётся
валидной, валидаторы такие атрибуты игнорируют. Трогать их обычно не нужно; смысл
каждого описан в xsd-reference.md навыка /xdto-compile.
Передача схемы наружу
Полученную XSD можно отдавать контрагенту как есть — она валидна и не теряет
данных пакета. Штатная команда «Экспорт XML-схемы» в Конфигураторе для этого
хуже: она теряет nillable у свойств-атрибутов.