Правила реестра

Одно имя должно объяснять одно действие

Коды OpsRegistry описывают устойчивый смысл действия, а не меню услуг или устройство API конкретного провайдера.

Обязательная грамматика

domain.resource.action
01 domain = logistics

Предметная область

Устойчивый словарь и граница предметной области.

02 resource = shipment

Объект предметной области

Объект с понятным смыслом и жизненным циклом.

03 action = quote

Действие

Глагол, выражающий наблюдаемый результат вызова.

Новая операция

Отделяйте смысл от способа выполнения

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

Операции могут быть разных уровней. Разложение на другие операции — способ реализации, который сохраняет исходный контракт. Не каждый пользовательский шаблон требует нового кода.

Операция manufacturing.product.inspect

Контроль изделия имеет собственный запрос, результат и статус выполнения.

Параметр или тег inspection:pressure-test

Испытание давлением уточняет метод контроля, но не создаёт новый результат.

Capability и адаптер providerCode = cdek

Провайдер, авторизация и названия его API не входят в универсальный код.

Один реестр для разных стран

Общее намерение, явные местные правила

OpsRegistry не делает вид, что бухгалтерия и регулирование везде одинаковы. Код операции остаётся универсальным, а юрисдикция и стандарт задаются отдельно.

  1. 01
    Операция accounting.journalEntry.post

    Устойчивое намерение, результат и жизненный цикл.

  2. 02
    Профиль country · region · IFRS · US GAAP · RAS

    Обязательные поля, справочники, план счетов и правила проверки.

  3. 03
    Capability и адаптер supportedProfiles

    Явная декларация профилей, которые действительно исполняет провайдер.

Хорошие коды

  • logistics.shipment.quoteрассчитать отправление
  • finance.merchantPayment.createсоздать платёж
  • manufacturing.workpiece.cutразрезать заготовку
  • it.identity.token.revokeотозвать токен

Не операции

  • manufacturing.cuttingназвание вида работ
  • rental.vehicleкатегория каталога
  • finance.tbank.initпровайдер и метод API
  • workpiece.laserCutнет домена, технология в коде

Общий словарь

Используйте знакомые глаголы

Чтениеget · list · search · track
Жизненный циклcreate · update · cancel · delete
Расчёт и проверкаquote · evaluate · inspect
Доступauthenticate · authorize · refresh · revoke
Производствоcut · bend · weld · assemble · package

Канонические описания хранятся на английском, русские тексты — в translations.ru. Коды, версии, статусы и теги не переводятся.

Полная спецификация и порядок добавления операции