Skip to content

Sensorium Interface Control Status v1

Source schema: doc/schemas/sensorium-interface-control-status.v1.schema.json

Fields

Field Required Shape Description
schema yes const: sensorium-interface-control-status.v1
schema/v yes const: 1
interface/id yes ref: #/$defs/interface_ref
caller/ref yes ref: #/$defs/ref
source/generation-ref yes ref: #/$defs/ref
outcome yes enum: acquired, queued, cancelled, renewed, released, handed-off, refused, expired, preempted
claim/id no ref: #/$defs/claim_ref
queue/position no integer
lease no ref: sensorium-interface-control-lease.v1.schema.json
reason no string
status/at yes string
causal/context yes ref: causal-context.v1.schema.json

Definitions

Definition Shape Description
ref string
interface_ref string
claim_ref string

Conditional Rules

Rule 1

When:

{
  "properties": {
    "outcome": {
      "enum": [
        "acquired",
        "renewed",
        "handed-off"
      ]
    }
  },
  "required": [
    "outcome"
  ]
}

Then:

{
  "required": [
    "lease"
  ]
}

Rule 2

When:

{
  "properties": {
    "outcome": {
      "const": "queued"
    }
  },
  "required": [
    "outcome"
  ]
}

Then:

{
  "required": [
    "claim/id",
    "queue/position"
  ]
}

Rule 3

When:

{
  "properties": {
    "outcome": {
      "enum": [
        "refused",
        "expired",
        "preempted"
      ]
    }
  },
  "required": [
    "outcome"
  ]
}

Then:

{
  "required": [
    "reason"
  ]
}

Field Semantics

schema

  • Required: yes
  • Shape: const: sensorium-interface-control-status.v1

schema/v

  • Required: yes
  • Shape: const: 1

interface/id

  • Required: yes
  • Shape: ref: #/$defs/interface_ref

caller/ref

  • Required: yes
  • Shape: ref: #/$defs/ref

source/generation-ref

  • Required: yes
  • Shape: ref: #/$defs/ref

outcome

  • Required: yes
  • Shape: enum: acquired, queued, cancelled, renewed, released, handed-off, refused, expired, preempted

claim/id

  • Required: no
  • Shape: ref: #/$defs/claim_ref

queue/position

  • Required: no
  • Shape: integer

lease

  • Required: no
  • Shape: ref: sensorium-interface-control-lease.v1.schema.json

reason

  • Required: no
  • Shape: string

status/at

  • Required: yes
  • Shape: string

causal/context

  • Required: yes
  • Shape: ref: causal-context.v1.schema.json

Definition Semantics

$defs.ref

  • Shape: string

$defs.interface_ref

  • Shape: string

$defs.claim_ref

  • Shape: string