UI Schema

Documents

How a UI schema document identifies itself and its dialect.

A UI schema document is a root element that additionally identifies itself and names the dialect it speaks. It carries type, props, $id, and $schema; a document MUST NOT carry any other top-level key:

{
  "$id": "https://example.com/forms/signup/1",
  "$schema": "https://example.com/ui-schema/app",
  "type": "stack",
  "props": {}
}

Required

  • $id (string, URI): Identifies the document and its revision.
  • $schema (string, URI): The dialect's identifier.
  • type (string): The root element's type.

Optional

  • props (object): The root element's props.

Behavior

Documents are versioned by URI: a revised document is published under a new $id, so anything referencing one (a lead, a cache, another system) pins the exact revision it saw. Mirroring JSON Schema, where a schema document is a root schema carrying $id/$schema, a UI schema document is a root element carrying $id/$schema; there is no wrapper key around it.

On this page