> For the complete documentation index, see [llms.txt](https://docs.unitlab.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.unitlab.ai/documentation/ontologies/draft-live-and-version-history.md).

# Draft, Live, and version history

Ontology lifecycle controls which schema is editable, which schema is active, and which historical version produced existing labels. Treat publication as a data-contract change, not a cosmetic save.

### Draft and Live

| State | Editability                | Production meaning                                                              |
| ----- | -------------------------- | ------------------------------------------------------------------------------- |
| Draft | Editable.                  | Proposed schema changes under review; not yet the approved production contract. |
| Live  | Active production version. | The schema selected for current annotation in its workspace or project scope.   |

In the builder header, **Publish draft** indicates unpublished changes. **Live** identifies the active published version. Before publishing, inspect the visual tree, Summary, JSON, IDs, required values, validation, nested conditions, relation targets, Logic Map, Workbench behavior, and sample output.

### Inspect version history

![Ontology history dialog with Live version, change timeline, snapshot, and restore controls](https://292810646-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGjVLUz4wthGkGlRKM6rM%2Fuploads%2FtNGEgNCHnksn0hIL3POs%2Fontology-version-history.png?alt=media\&token=b88769b8-62ae-47f6-a684-8e9f1b8ac95d)

*Version history records published versions, lifecycle state, publisher and time, semantic change events, and the actions View snapshot and Restore as draft.*

Choose **Version history** in the ontology header. Search or filter the history when several versions exist. Expand a version to review the semantic event timeline: which class, property, relation, or option changed, when it changed, and who made the change.

**Restore as draft** does not rewrite the historical version. It creates editable Draft work based on that published snapshot so the restored schema can be reviewed, tested, and published deliberately.

### Open a read-only snapshot

![Read-only ontology snapshot](https://292810646-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGjVLUz4wthGkGlRKM6rM%2Fuploads%2F2QABJkTatxRAPLozxoIf%2Fontology-snapshot.png?alt=media\&token=457efe97-180a-4e4e-a7d0-86f39006654d)

*Snapshot · Read only disables schema mutation while preserving search, hierarchy inspection, Summary/JSON, Logic Map, and export for comparison.*

Choose **View snapshot** on the version you need to inspect. Use the read-only state to compare class IDs, geometry, property types, options, conditions, validation, relations, and JSON without risking edits. Record the version used by the labels or release under investigation.

### Inspect the Logic Map

![Ontology Logic Map dialog with zoom and fit controls](https://292810646-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGjVLUz4wthGkGlRKM6rM%2Fuploads%2FY5b2tJZqEf2RhriKaG5b%2Fontology-logic-map.png?alt=media\&token=e3efd5f5-bb22-4b71-8033-a4f863f31bd1)

*Logic Map is a read-only graph of ontology structure. Use zoom, Fit view, and branch inspection to review the semantic path before publication.*

Choose **View logic map** from the ontology inspector. Use it to find unreachable branches, duplicated concepts, deep conditional paths, ambiguous names, or relations whose targets are difficult to understand from the canvas alone. The map is an inspection tool; return to the Draft to make changes.

### Publish a controlled version

{% stepper %}
{% step %}

#### 1. Inventory dependencies

Identify projects, Live selection, active tasks, Instructions, workflow routes, model mappings, API clients, releases, and downstream schemas affected by the change.
{% endstep %}

{% step %}

#### 2. Review the Draft

Inspect hierarchy, Summary, JSON, IDs, geometry, Required and Dynamic states, validation, conditions, relations, defaults, help text, and Logic Map.
{% endstep %}

{% step %}

#### 3. Test in Workbench

Exercise every native editor, custom layout, role, conditional branch, invalid state, dynamic timeline behavior, and representative relation.
{% endstep %}

{% step %}

#### 4. Approve the contract

Record owner, reason, compatibility decision, in-flight work treatment, and downstream acceptance evidence.
{% endstep %}

{% step %}

#### 5. Publish

Publish the Draft and confirm the intended version shows Live in the relevant catalog and project.
{% endstep %}

{% step %}

#### 6. Monitor

Review invalid-state cohorts, rejections, Issues, automation errors, and the next release for schema drift.
{% endstep %}
{% endstepper %}

{% hint style="warning" %}
Historical labels must remain attributable to the ontology version under which they were produced. Never use a silent edit or a renamed display label as a substitute for controlled version history.
{% endhint %}
