Назначение
<JsonDocumentModelName> является typed JSONB document model для <entity/feature>. Документ не является произвольным jsonb.
Storage
| Поле | Значение |
|---|
| Service | <service> |
| Entity | <entity> |
| Column | <column_name> |
| Document version field | <DocumentVersion> |
| Owner | <owner> |
Поля Документа
| Поле | Тип | Обязательное | Nullable | Version Since | Правила |
|---|
<FieldName> | <TypedValue> | да/нет | да/нет | <version> | <constraints> |
Nested Models
| Модель | Поля | Назначение |
|---|
<NestedModel> | <fields> | <purpose> |
Validation
- JSON schema или .NET validator:
<name>.
- Backward-compatible reader:
<name>.
- Unknown fields behavior:
<ignore/fail>.
Versioning
| Version | Change | Reader Behavior | Writer Behavior |
|---|
1 | Initial | Read v1 | Write v1 |
Запреты
- Не хранить secrets, raw tokens, provider credentials.
- Не хранить связи между сущностями вместо явных таблиц.
- Не хранить unbounded external payload.
Tests
- validation rejects invalid document;
- old version reads correctly;
- new writer does not break old reader during rollout;
- document does not contain prohibited sensitive fields.
Обратные ссылки
Автоссылки: где используется этот документ.