Stored as JSON in MJ: Entity Relationships.Configuration. CodeGen emits a
typed ConfigurationObject accessor on MJEntityRelationshipEntity that
returns IEntityRelationshipConfiguration | null.
Distinct from the other JSON columns on the same row, which CodeGen already
owns for other jobs:
DisplayComponentConfiguration — knobs for the selected display component
AdditionalFieldsToInclude — join-field name list
NULL / {} / omitted keys = Auto. The parent entity's
RelatedRolePolicy ranker decides Primary vs More. Explicit
inclusion (or the FormRole alias) always wins.
inclusion: 'None' removes the relationship from the parent form
entirely — it is not a More item and the ranker never sees it.
Expand by adding a property here — no schema migration.
Optional per-relationship configuration bag.
Stored as JSON in
MJ: Entity Relationships.Configuration. CodeGen emits a typedConfigurationObjectaccessor onMJEntityRelationshipEntitythat returnsIEntityRelationshipConfiguration | null.Distinct from the other JSON columns on the same row, which CodeGen already owns for other jobs:
RelatedRecordCollection—IRelatedRecordCollectionConfig(composite graphs)DisplayComponentConfiguration— knobs for the selected display componentAdditionalFieldsToInclude— join-field name listNULL /
{}/ omitted keys = Auto. The parent entity'sRelatedRolePolicyranker decides Primary vs More. Explicitinclusion(or theFormRolealias) always wins.inclusion: 'None'removes the relationship from the parent form entirely — it is not a More item and the ranker never sees it.Expand by adding a property here — no schema migration.
See
guides/FORMS_ARCHITECTURE_GUIDE.md §7d