ak.schema.view.v1
ak.schema.view.v1 · file: schemas/view.schema.json * $ · object
allOf · allOf[0] · allOf[5] · $ref #/$defs/kind_config_exclusivity
allOf · allOf[0] ·
?allOf · allOf[1] ·
?allOf · allOf[2] ·
?allOf · allOf[3] ·
?allOf · allOf[4] ·
?allOf · allOf[1] ·
?id ·
stringPresent on the materialised object. MUST be absent from the create Event payload: zh/models/common-fields.md derives it from the create Event's own event_id (retyped), so a payload-supplied id would be a second, forgeable truth.
pattern:
^ak:view:[A-Za-z0-9_-]{44}$* schema ·
const "ak.schema.view.v1"enum:
"ak.schema.view.v1"* realm_id ·
string · $ref ./common-ids.schema.json#/$defs/realm_idRetyped ak.realm.create Event token. It therefore carries the same fixed current-v1 0x01/SHA-256 content-address identity and is not selected by Realm state.
pattern:
^ak:realm:[A-Za-z0-9_-]{44}$* kind ·
string (enum)enum:
"collection" "timeline" "graph" "document" "composite"renderer ·
string (enum) · $ref #/$defs/view_rendererenum:
"board" "list" "table" "calendar" "gantt" "timeline" "thread" "chat" "forum" "graph" "tree" "document" "dashboard" "custom"title ·
string (arkret-single-line-display-text) · format=arkret-single-line-display-text · $ref string-profiles.schema.json#/$defs/display_text_512NFC multilingual single-line display text; mixed scripts, emoji, and symbols are allowed.
pattern:
^[^\u0000-\u001F\u007F-\u009F\u202A-\u202E\u2066-\u2069\uFEFF]*[^\s\u0000-\u001F\u007F-\u009F\u202A-\u202E\u2066-\u2069\uFEFF][^\u0000-\u001F\u007F-\u009F\u202A-\u202E\u2066-\u2069\uFEFF]*$visibility ·
string (enum)View sharing visibility. Private views are actor-private account data; shared views are canonical Realm objects.
enum:
"private" "shared"* state ·
string (enum)Required View lifecycle state. Shared View removal is an ak.view.update patch to tombstoned; tombstoned is terminal.
enum:
"active" "tombstoned"state_changed_at ·
string (date-time) · format=date-time · $ref #/$defs/timestampCanonical Arkret-owned absolute instant. UTC Z form with exactly three millisecond digits. Whole seconds MUST use .000Z; offsets, missing/finer fractions, lowercase separators, leap seconds, and invalid Gregorian calendar dates are forbidden. Shape validation by this pattern is supplemented by semantic date validation.
pattern:
^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]\.[0-9]{3}Z$* query · object · $ref #/$defs/query
realm_ids · array<$ref ./common-ids.schema.json#/$defs/realm_id>
items ·
string · $ref ./common-ids.schema.json#/$defs/realm_idRetyped ak.realm.create Event token. It therefore carries the same fixed current-v1 0x01/SHA-256 content-address identity and is not selected by Realm state.
pattern:
^ak:realm:[A-Za-z0-9_-]{44}$object_kinds · array<string>
items ·
stringmorph_kinds · array<string>
items ·
stringfacets · array<string>
items ·
stringcontext_ref ·
string · $ref #/$defs/object_refpattern:
^(ak:(realm|space|circle|strand|message|morph|relation|event|view):[A-Za-z0-9_-]{44}|did:.+)$filters · array<object>
items ·
objectrelation ·
object | nullorder_by · array<$ref #/$defs/sort_spec>
items · object · $ref #/$defs/sort_spec
* field ·
string · $ref #/$defs/field_pathpattern:
^[a-zA-Z0-9_]+(\.[a-zA-Z0-9_]+)*$* direction ·
string (enum)enum:
"asc" "desc"nulls ·
string (enum)enum:
"first" "last"visible_fields · array<$ref #/$defs/field_path>
items ·
string · $ref #/$defs/field_pathpattern:
^[a-zA-Z0-9_]+(\.[a-zA-Z0-9_]+)*$layout ·
objectcollection · object · $ref #/$defs/collection_config
anyOf · anyOf[0] ·
?anyOf · anyOf[1] ·
?item_object_kinds · array<string>
items ·
stringitem_facets · array<string>
items ·
stringitem_render ·
string (enum)enum:
"card" "row" "tile" "compact" "badge" "message"* item_order_by · array<$ref #/$defs/sort_spec>
Stable item ordering; mirrors models/views.md §3.2. Drag-ordered collections SHOULD sort by rank.
items · object · $ref #/$defs/sort_spec
* field ·
string · $ref #/$defs/field_pathpattern:
^[a-zA-Z0-9_]+(\.[a-zA-Z0-9_]+)*$* direction ·
string (enum)enum:
"asc" "desc"nulls ·
string (enum)enum:
"first" "last"display_fields · array<object>
Display columns (dot path + format); see models/views.md §3.2.
items ·
objectcount_policy ·
string (enum)Collection-level count policy; see models/views.md §3.2.
enum:
"omit" "authorized_estimate" "authorized_exact"example:
"omit"* grouping · object · $ref #/$defs/collection_grouping
Grouping / lane / time-bucket / matrix configuration; mirrors models/views.md §3.3. Conditional required-ness is enforced per mode.
allOf · allOf[0] ·
?allOf · allOf[1] ·
?allOf · allOf[2] ·
?allOf · allOf[3] ·
?* mode ·
string (enum)enum:
"none" "field" "relation_container" "time_bucket" "matrix"field ·
stringlanes · array<object>
items ·
objectboard_space_id ·
stringpattern:
^ak:space:[A-Za-z0-9_-]{44}$container_relation_kind ·
stringexample:
"contains"item_relation_kind ·
stringstart_field ·
stringend_field ·
stringrows_by ·
stringcolumns_by ·
stringhidden_count_policy ·
string (enum)enum:
"omit" "authorized_estimate" "authorized_exact"example:
"omit"timeline ·
object · $ref #/$defs/timeline_configgraph ·
object · $ref #/$defs/graph_configdocument ·
object · $ref #/$defs/document_configdashboard · object · $ref #/$defs/dashboard_config
* widgets · array<object>
items · object
anyOf · anyOf[0] ·
?anyOf · anyOf[1] ·
?anyOf · anyOf[2] · object
* kind ·
string (enum)enum:
"text" "custom"* widget_id ·
stringpattern:
^[a-z][a-z0-9_]{0,63}$* kind ·
string (enum)enum:
"collection" "timeline" "graph" "document" "metric" "text" "custom"source_view_ref ·
string · $ref #/$defs/object_refpattern:
^(ak:(realm|space|circle|strand|message|morph|relation|event|view):[A-Za-z0-9_-]{44}|did:.+)$query · object · $ref #/$defs/query
realm_ids · array<$ref ./common-ids.schema.json#/$defs/realm_id>
items ·
string · $ref ./common-ids.schema.json#/$defs/realm_idRetyped ak.realm.create Event token. It therefore carries the same fixed current-v1 0x01/SHA-256 content-address identity and is not selected by Realm state.
pattern:
^ak:realm:[A-Za-z0-9_-]{44}$object_kinds · array<string>
items ·
stringmorph_kinds · array<string>
items ·
stringfacets · array<string>
items ·
stringcontext_ref ·
string · $ref #/$defs/object_refpattern:
^(ak:(realm|space|circle|strand|message|morph|relation|event|view):[A-Za-z0-9_-]{44}|did:.+)$filters · array<object>
items ·
objectrelation ·
object | nullorder_by · array<$ref #/$defs/sort_spec>
items · object · $ref #/$defs/sort_spec
* field ·
string · $ref #/$defs/field_pathpattern:
^[a-zA-Z0-9_]+(\.[a-zA-Z0-9_]+)*$* direction ·
string (enum)enum:
"asc" "desc"nulls ·
string (enum)enum:
"first" "last"title ·
string (arkret-single-line-display-text) · format=arkret-single-line-display-text · $ref string-profiles.schema.json#/$defs/display_text_512NFC multilingual single-line display text; mixed scripts, emoji, and symbols are allowed.
pattern:
^[^\u0000-\u001F\u007F-\u009F\u202A-\u202E\u2066-\u2069\uFEFF]*[^\s\u0000-\u001F\u007F-\u009F\u202A-\u202E\u2066-\u2069\uFEFF][^\u0000-\u001F\u007F-\u009F\u202A-\u202E\u2066-\u2069\uFEFF]*$layout ·
object* created_by · oneOf[2] · $ref ./common-ids.schema.json#/$defs/actor_id
Complete protocol identity for an Event author or Realm member: account carries the exact AccountId for every Station-hosted principal; service identifies a service acting as itself. The discriminator is validated against accepted registration and admission evidence; it never authorizes itself. Account and service are distinct, and no comparison may fall back to a bare principal_id. Agent and integration classification, provisioning, controller binding and credential authorization are independently verified facts, not identity variants. Account actors at different Stations MUST NOT share or inherit authority merely because their principal_id, DID controller or signing key matches, including membership, capability, RealmCommit-signing and recovery authority.
oneOf · oneOf[0] · object
* kind ·
const "account"enum:
"account"* account_id ·
$ref #/$defs/account_id · $ref #/$defs/account_idoneOf · oneOf[1] · object
* kind ·
const "service"enum:
"service"* service_id ·
$ref #/$defs/did_core_id · $ref #/$defs/did_core_id* created_at ·
string (date-time) · format=date-time · $ref #/$defs/timestampCanonical Arkret-owned absolute instant. UTC Z form with exactly three millisecond digits. Whole seconds MUST use .000Z; offsets, missing/finer fractions, lowercase separators, leap seconds, and invalid Gregorian calendar dates are forbidden. Shape validation by this pattern is supplemented by semantic date validation.
pattern:
^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]\.[0-9]{3}Z$updated_by · oneOf[2] · $ref ./common-ids.schema.json#/$defs/actor_id
Complete protocol identity for an Event author or Realm member: account carries the exact AccountId for every Station-hosted principal; service identifies a service acting as itself. The discriminator is validated against accepted registration and admission evidence; it never authorizes itself. Account and service are distinct, and no comparison may fall back to a bare principal_id. Agent and integration classification, provisioning, controller binding and credential authorization are independently verified facts, not identity variants. Account actors at different Stations MUST NOT share or inherit authority merely because their principal_id, DID controller or signing key matches, including membership, capability, RealmCommit-signing and recovery authority.
oneOf · oneOf[0] · object
* kind ·
const "account"enum:
"account"* account_id ·
$ref #/$defs/account_id · $ref #/$defs/account_idoneOf · oneOf[1] · object
* kind ·
const "service"enum:
"service"* service_id ·
$ref #/$defs/did_core_id · $ref #/$defs/did_core_idupdated_at ·
string (date-time) · format=date-time · $ref #/$defs/timestampCanonical Arkret-owned absolute instant. UTC Z form with exactly three millisecond digits. Whole seconds MUST use .000Z; offsets, missing/finer fractions, lowercase separators, leap seconds, and invalid Gregorian calendar dates are forbidden. Shape validation by this pattern is supplemented by semantic date validation.
pattern:
^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]\.[0-9]{3}Z$(^x_[a-z][a-z0-9_]{0,63}$) ·
anySource
- registry row:
spec/v1/artifacts/registry/schema-registry.json - schema document:
spec/v1/artifacts/schemas/view.schema.json