Type hierarchy
UISchemaElement
Union type representing all possible UI schema elements.UISchemaElement
BaseUISchemaElement | ControlElement | Layout | LabelElement | GroupLayout | Category | Categorization | VerticalLayout | HorizontalLayout
Base union type for all UI schema elements.
BaseUISchemaElement
Common base interface for all UI schema elements.The type of UI schema element (e.g.,
Control, VerticalLayout, Group).Optional rule to control visibility or enablement based on data conditions.
Additional configuration options specific to the element or renderer.
ControlElement
Represents a single form control bound to a data field.Must be
Control.JSON Pointer to the data field this control is bound to (e.g.,
#/properties/name).Label configuration. Can be:
string: Custom label textboolean: Show/hide label (uses schema title whentrue)LabelDescription: Object withtextandshowproperties
Rule to dynamically control visibility or enablement.
Renderer-specific options (e.g.,
{ multi: true } for multiline text).Base key for internationalization. Suffixed with
.label, .description, etc.Example
Layout
Base interface for layout elements that contain child elements.Layout type identifier.
Array of child UI schema elements.
Rule to control layout visibility or enablement.
Layout-specific options.
VerticalLayout
Arranges child elements vertically (top to bottom).Must be
VerticalLayout.Child elements to arrange vertically.
Example
HorizontalLayout
Arranges child elements horizontally (left to right).Must be
HorizontalLayout.Child elements to arrange horizontally.
Example
GroupLayout
Vertical layout with an optional label, useful for grouping related fields.Must be
Group.Group heading text.
Child elements within the group.
Base key for internationalization.
Example
LabelElement
Displays static text without binding to data.Must be
Label.Text content to display.
Internationalization key for the label text.
Example
Category
Represents a single category tab within a categorization.Must be
Category.Category tab label.
Elements to display when this category is active.
Base key for internationalization.
Categorization
Creates a tabbed interface with categories. Supports nested categorizations for hierarchical navigation.Must be
Categorization.Categorization label.
Array of categories or nested categorizations.
Base key for internationalization.
Example
LabelDescription
Configuration object for control labels.Label text to display.
Whether to show the label.
Rule
Defines conditional logic for showing/hiding or enabling/disabling UI elements.The effect to apply when the condition is met:
HIDE, SHOW, ENABLE, or DISABLE.The condition that must evaluate to true to trigger the effect.
Example
RuleEffect
Enum defining available rule effects.Hides the associated element.
Shows the associated element.
Enables the associated element.
Disables the associated element.
Condition
Union type for all condition types.Condition
BaseCondition | LeafCondition | OrCondition | AndCondition | SchemaBasedCondition | ValidateFunctionCondition
Represents a condition to be evaluated for rules.
LeafCondition
Simple condition that compares a data value to an expected value.Must be
LEAF.JSON Pointer to the data to evaluate.
The value to compare against.
Example
SchemaBasedCondition
Condition that validates data against a JSON Schema.JSON Pointer to the data to validate.
Schema to validate against.
If
true, the condition fails when the scope resolves to undefined.Example
OrCondition
Condition that passes if any sub-condition passes.Must be
OR.Array of conditions to evaluate. Passes if any condition is true.
AndCondition
Condition that passes only if all sub-conditions pass.Must be
AND.Array of conditions to evaluate. Passes only if all conditions are true.
ValidateFunctionCondition
Condition evaluated by a custom validation function.JSON Pointer to the data to validate.
Function that validates the condition. Returns
true if the condition is met.ValidateFunctionContext
The resolved data scoped to the condition’s scope.
The complete form data.
Instance path when the data path cannot be inferred from scope alone.
The UI schema element containing the rule.
The form configuration.
Helper interfaces
Scopable
Optional JSON Pointer to a subschema.
Scoped
Required JSON Pointer to a subschema.
Labelable
Optional label for the UI element.
Labeled
Required label for the UI element.
Internationalizable
Base key for internationalization messages.