[Tools](https://oods-foundry.com/tools) / schema_render

# `schema_render`

Validate a UiSchema or render it as static HTML/fragments.

Generated from @oods/foundry 0.10.2

One of the 20 tools your assistant sees by default.

Use it when checking schema/patch contracts or exporting static output; use design_preview for a running React/Vue app, code_generate for file sets, or schema_store for persistence. Returns validation diagnostics or rendered output with warnings and artifact references. action selects validate/render; mode selects full schema or patch, with schemaRef available for reuse. Render defaults to a document with token CSS; output.compact omits CSS. brand and output scope options affect documents; ignored fragment options are diagnosed. apply:true emits render artifacts; output.payloadMode:file writes payloads and returns paths, as does an oversized document unless inline. Full schema: oods\://schemas/schema_render.input.json.

## Inputs

| Name | Type | Required | Description |
| - | - | - | - |
| `action` | `"render" \| "validate"` | yes | Selects the per-action handler. 'render' -> schema_render action=render, 'validate' -> schema_render action=validate. |
| `mode` | `"full" \| "patch"` | no | Full schema or patch mode. Actions: render, validate. |
| `schema` | `object` | no | UiSchema. Actions: render, validate. |
| `schemaRef` | `string` | no | Reference to a cached UiSchema returned by design_compose. Actions: render, validate. |
| `patch` | `array \| object` | no | Required when mode='patch'. Accepts JSON Patch array or node patch object(s). Actions: render, validate. |
| `baseTree` | `object` | no | Required when mode='patch' to provide the base UiSchema to patch. Actions: render, validate. |
| `brand` | `string` | no | Brand to render. Actions: render. See full schema for details. |
| `options` | `object` | no | Operation options. Actions: render, validate. |
| `output` | `object` | no | Optional render output controls. Omitting this object preserves full-document behavior. Actions: render. |
| `apply` | `boolean` | no | For render: When true and the schema validates, render it: the HTML document in html, or per-node fragments with output.format 'fragments'. Actions: render, validate. See full schema for details. |

## Outputs

The package ships no output schema for this tool.

## A real call

Recorded by this site's `tools` run, step `schema-render-validate`, with the published OODS Foundry 0.10.2.

Its input:

```
{
  "action": "validate",
  "schemaRef": "compose-b4f8900d"
}
```

Its result, first lines:

```
{
  "status": "ok",
  "mode": "full",
  "dslVersion": "2026.02",
  "registryVersion": "2026-10-06",
  "errors": [],
  "warnings": [],
  "normalizedTree": {
    "version": "2026.02",
    "screens": [
      {
        "id": "screen-detail-13",
        "component": "Stack",
        "layout": {
          "type": "stack",
          "gapToken": "cluster-default"
        },
        "children": [
          {
            "id": "detail-header-1",
            "component": "Stack",
            "layout": {
              "type": "stack",
              "align": "space-between",
              "gapToken": "stack-default"
            },
            "children": [
              {
                "id": "detail-header-1-record-title",
                "component": "DetailHeader",
                "props": {
                  "titleField": "name",
                  "headingLevel": 1
                }
              },
              {
                "id": "screen-detail-13-record-summary",
                "component": "Stack",
                "layout": {
                  "type": "inline",
                  "gapToken": "cluster-tight"
                },
                "meta": {
                  "intent": "record-summary"
                },
                "children": [
                  {
                    "id": "screen-detail-13-record-summary-1",
                    "component": "StatusBadge",
                    "props": {
                      "tone": "lifecycle",
                      "statusField": "status",
                      "domain": "lifecycle"
                    }
                  }
                ]
              },
              {
                "id": "slot-header-2",
                "component": "Stack",
```

[The whole call, 44 KB of JSON](https://oods-foundry.com/tools/schema-render/call.json)
