md-sparrow

September 18, 2026 · View on GitHub

OpenYellow telegram chat Ask Devin

Чтение и запись XML метаданных 1С (MetaDataObject) по XSD из namespace-forest. Поддержаны все версии формата выгрузки от 2.10 до 2.21.

Работает и как Java-библиотека, и как CLI: подходит и для встраивания в инструменты разработки, и для скриптов сборки.

Что умеет

  • Читать и писать свойства объектов метаданных, их реквизиты и табличные части, не трогая остальной файл: правка идёт точечно, форматирование и порядок элементов сохраняются.
  • Создавать объекты, расширения и пустую выгрузку из эталонов, снятых с платформы, в формате нужной версии.
  • Проверять выгрузку: валидация по XSD, целостность состава и ссылок, round-trip JAXB, перекодировка между версиями формата.
  • Отдавать дерево и граф метаданных проекта в JSON для внешних инструментов.

Начало работы

Нужен JDK 21 и submodule со схемами и эталонами:

git submodule update --init --recursive
./gradlew build
./gradlew shadowJar

Собранный build/libs/md-sparrow-*-all.jar запускается напрямую; список команд и их параметры выдаёт сама программа:

java -jar build/libs/md-sparrow-0.4.1-all.jar --help

Документация

  • CONTRIBUTING.md — сборка, тесты, схемы, выпуск JAR.
  • docs/cf-layout.md — раскладка src/cf и порядок ChildObjects.
  • docs/cf-md-object.md — контракт свойств объектов: DTO и матрица поддержки по видам.
  • docs/form-content.md — содержимое управляемой формы в JSON.
  • docs/scaffold-golden.md — создание объектов по эталонам.
  • docs/validate-dump.md — проверка целостности выгрузки и виды находок.
  • docs/serve.md — резидентный режим: команды по запросам из stdin без запуска процесса на каждую.

Лицензия

LGPL-3.0-or-later. Подробности см. в файле LICENCE.

Автор

Ivan Karlo (i.karlo@outlook.com)

При желании, отблагодарить автора можно по ссылке: