Задача

Требуется написать парсер, который преобразует структурированные данные из YAML-формата в XML-граф Draw.io (программа для создания диаграмм). Помимо реализации самого инструмента, необходимо показать, как его писать и тестировать - всё это должно быть выполнено с использованием DeepSeek (языковая модель).

Требования к реализации

  • Язык реализации - Python (версия 3.8+)
  • Входные данные: YAML-файл с определённой схемой (узлы, связи, типы)
  • Выход: файл в формате .drawio, совместимый с приложением diagrams.net
  • Парсер должен корректно обрабатывать: древовидные структуры, произвольные связи между элементами, цвета и параметры отображения сторонних атрибутов
  • Обязательно приложить пример YAML и результат .drawio, а также скрипт с комментариями

Дополнительные детали

Показать поэтапно: как парсить YAML, формировать XML граф (стили, позиции вершин и рёбер), интегрироваться с форматом drawio v2. При возможности - минимизировать сторонние зависимости (использовать только json, yaml, xml библиотеки). Предпочтителен чистый консольный интерфейс: передача пути к YAML и получение drawio файла.

Критерии приемки

  • Корректные позиции и связи на диаграмме
  • Рабочий код, который можно запустить
  • Наличие комментариев, описывающих логику парсинга