Skip to main content

block-model-attribute-group

schema/components/block-model-attribute-group/1.0.0/block-model-attribute-group.schema.json

A block-model attribute group defines metadata for a logical grouping of block-model attributes. Groups can form a hierarchy using parent_group_uuid; attributes join a group through their block_model_group_uuid. A group whose parent_group_uuid is null or absent is a top-level group.

Groups are declared on the block-model object in its groups array. Membership is not recorded in the group itself -- it is expressed by the pointer held on each attribute -- so a group can be declared before any attribute references it.

The Block Model Service stores attribute values column-wise, so its API refers to an attribute as a column. The two terms denote the same thing: missing_column_policy governs the attributes that are members of the group, and block_model_column_uuid on block-model-attribute identifies the column backing that attribute.

Used by: block-model.

See also: block-model-attribute (the attributes that groups organise).

Constraints

The Block Model API enforces additional constraints which aren't represented in the schema. The key constraints are:

  • Each group's parent_group_uuid, and each attribute's block_model_group_uuid, must reference a declared group.
  • Parent group references must not form a cycle.
  • title must be unique among sibling groups sharing a parent, and among top-level groups.

Properties

block-model-attribute-group (v1.0.0)

Metadata for a named group of block model attributes (columns), optionally nested within a parent group.

PropertyTypeDescriptionFlags
group_uuidStringUnique identifier for the group.
is_hiddenBooleanWhen true, indicates that the Block Model Service will exclude group members from wildcard queries by default.
missing_column_policyStringDefines the update behaviour for all columns in the group that do not have a value provided.
parent_group_uuidblock-model-attribute-groupIdentifier of the parent group. Null means the group is a 'top-level' group.
tagsObjectPublisher-supplied free-form metadata for the group, as a JSON object. Keys must be 1-100 characters and cannot contain leading whitespace or dot, or the characters / \ : > < | ? " *; keys are unique case-insensitively. Values may be any JSON-compatible type. A single tags object serialised as UTF-8 JSON must be at most 10 KiB.
titleStringHuman-readable label for the group, unique across the parent group, or across top-level groups if no parent. Titles must be 1-100 characters and cannot contain leading whitespace or dot, or the characters / \ : > < | ? " *. Must not contain the qualified title separator .

Legend

FlagDescription
⬆️Inherited property
Required property

Was this page helpful?