跳转到内容

ak.schema.view.v1

← Schemas

Arkret View
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 · string
Present 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_id
Retyped 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_renderer
enum: "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_512
NFC 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/timestamp
Canonical 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_id
Retyped 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 · string
morph_kinds · array<string>
items · string
facets · array<string>
items · string
context_ref · string · $ref #/$defs/object_ref
pattern: ^(ak:(realm|space|circle|strand|message|morph|relation|event|view):[A-Za-z0-9_-]{44}|did:.+)$
filters · array<object>
items · object
relation · object | null
order_by · array<$ref #/$defs/sort_spec>
items · object · $ref #/$defs/sort_spec
* field · string · $ref #/$defs/field_path
pattern: ^[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_path
pattern: ^[a-zA-Z0-9_]+(\.[a-zA-Z0-9_]+)*$
layout · object
collection · object · $ref #/$defs/collection_config
anyOf · anyOf[0] · ?
anyOf · anyOf[1] · ?
item_object_kinds · array<string>
items · string
item_facets · array<string>
items · string
item_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_path
pattern: ^[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 · object
count_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 · string
lanes · array<object>
items · object
board_space_id · string
pattern: ^ak:space:[A-Za-z0-9_-]{44}$
container_relation_kind · string
example: "contains"
item_relation_kind · string
start_field · string
end_field · string
rows_by · string
columns_by · string
hidden_count_policy · string (enum)
enum: "omit" "authorized_estimate" "authorized_exact"
example: "omit"
timeline · object · $ref #/$defs/timeline_config
graph · object · $ref #/$defs/graph_config
document · object · $ref #/$defs/document_config
dashboard · 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 · string
pattern: ^[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_ref
pattern: ^(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_id
Retyped 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 · string
morph_kinds · array<string>
items · string
facets · array<string>
items · string
context_ref · string · $ref #/$defs/object_ref
pattern: ^(ak:(realm|space|circle|strand|message|morph|relation|event|view):[A-Za-z0-9_-]{44}|did:.+)$
filters · array<object>
items · object
relation · object | null
order_by · array<$ref #/$defs/sort_spec>
items · object · $ref #/$defs/sort_spec
* field · string · $ref #/$defs/field_path
pattern: ^[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_512
NFC 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_id
oneOf · 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/timestamp
Canonical 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_id
oneOf · oneOf[1] · object
* kind · const "service"
enum: "service"
* service_id · $ref #/$defs/did_core_id · $ref #/$defs/did_core_id
updated_at · string (date-time) · format=date-time · $ref #/$defs/timestamp
Canonical 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}$) · any

Source