+7 707 428 71 77 Получить бесплатный аудит

Спецификация OKF v0.1 на русском: полный разбор

Разбор спецификации Open Knowledge Format v0.1 по-русски: структура бандла, поля frontmatter, зарезервированные файлы, правила конформности.

Частые вопросы

Какое поле обязательно в OKF-файле?
Только type — короткая строка, обозначающая вид концепта. Всё остальное (title, description, resource, tags, timestamp) опционально. Файл без парсируемого frontmatter или с пустым type не соответствует спецификации.
Можно ли придумывать свои типы концептов?
Да. Спецификация сознательно не задаёт таксономию типов: команда данных может использовать OKF для схем таблиц, DevOps — для ранбуков, сайт — для услуг и статей, не согласовывая типы между собой.
Что делает агент с неизвестными полями?
Игнорирует и продолжает работу. Модель потребления сознательно снисходительная: неизвестные типы, лишние ключи, битые ссылки и отсутствующие index.md не являются основанием отвергнуть бандл.

Термины спецификации

Knowledge Bundle (бандл) — самодостаточная иерархическая коллекция документов знаний, единица распространения. Концепт — единица знания внутри бандла, один markdown-документ: осязаемый актив (таблица, API) или абстракция (метрика, бизнес-процесс). Concept ID — путь файла внутри бандла без суффикса .md: файл tables/users.md имеет идентификатор tables/users.

Поля frontmatter

Каждый концепт — UTF-8 markdown-файл из двух частей: YAML-блок между разделителями — и свободное тело. Поля YAML:

ПолеСтатусНазначение
typeобязательноевид концепта (строка, таксономия свободная)
titleопциональноеотображаемое имя
descriptionопциональноерезюме в одну строку
resourceопциональноеканонический URI описываемого актива
tagsопциональноесписок тегов для связывания концептов
timestampопциональноевремя изменения, ISO 8601

Производитель может добавлять собственные ключи — потребители обязаны их не отвергать.

Зарезервированные файлы

index.md — оглавление каталога для «прогрессивного раскрытия»: агент сначала читает индекс и открывает только нужные концепты, экономя контекст. log.md — хронология изменений бандла. Оба имени зарезервированы на любом уровне иерархии и не могут использоваться для концептов. Единственное место, где разрешён frontmatter у index.md — корень бандла, там можно объявить okf_version: «0.1».

Кросс-ссылки и граф знаний

Концепты ссылаются друг на друга обычными markdown-ссылками — относительными путями внутри бандла. Так возникает граф связей, более богатый, чем иерархия каталогов. Цитаты-источники могут быть абсолютными URL, внутренними путями или ссылками в подкаталог references/, где внешние материалы зеркалируются как полноценные концепты.

Конформность

Бандл соответствует v0.1, если каждый незарезервированный .md содержит парсируемый frontmatter с непустым type, а index.md и log.md следуют своим разделам спецификации. Всё остальное — мягкие рекомендации: потребитель не вправе отвергнуть бандл из-за неизвестных типов, лишних ключей, битых ссылок или отсутствия index.md. Версионирование — major.minor: минорные версии добавляют обратно-совместимые поля, мажорные могут менять обязательные.

Готовы обсудить ваш проект?

Бесплатная консультация — без обязательств. Ответим за 24 часа.

Написать в WhatsApp →