> For the complete documentation index, see [llms.txt](https://docs.rootcause.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.rootcause.ai/user-guide/ontology-concepts.md).

# Build Ontology

When your data finishes importing, RootCause automatically builds an ontology. It scans every dataset, identifies each column's type and role, and maps connections between columns that represent the same concept across different datasets. You do not need to create it — it is ready by the time your data is processed.

***

## What the ontology does

The ontology is the semantic layer that makes everything downstream possible. When "customer\_id" in your sales data and "cust\_id" in your support data are recognized as the same concept, RootCause can join those datasets automatically. When a column is classified as a Time concept, causal discovery respects temporal ordering. When a column is classified as an Identifier, it is used as a join key rather than treated as a variable in the causal model.

***

## Reviewing your ontology

Open **Ontology** in the top navigation bar. The **Network** visualization shows a relationship graph: datasets appear as colored clusters, concepts as labeled nodes, and edges between them show which concepts are shared across sources.

<figure><img src="/files/nuN1X41N9vg3fdqIXvcT" alt="Ontology network view showing two dataset hubs, Customer Subscription info with 15 concepts and Customer Details with 7, connected through a shared Customer Id identifier"><figcaption><p>The ontology network. Each colored cluster is a dataset (Customer Subscription info with 15 concepts, Customer Details with 7); the node where they meet is the shared Customer Id identifier.</p></figcaption></figure>

The right panel groups the ontology's actions:

* **Recommended Datasets** — "Ways to combine your sources into datasets ready for analysis and digital twins": joins the platform has detected based on shared identifier concepts. This is the most important panel on the screen — it is the bridge between your ontology and Step 3.
* **Query your data** — search, filter, and combine concepts across datasets. Recent queries are kept in a history list below the button.
* **New Group / Compare** — group comparable concepts, with an **AI** option that proposes the grouping for you.
* **Derive** — derive a new concept from a SQL formula.

<figure><img src="/files/VgH1Y8d1xW2SKCokyR15" alt="The Ontology page in the Strata view, 21 concepts across 2 datasets, with the Recommended Datasets panel on the right proposing a Customer Subscription info combination tagged Static twin, above a View all recommendations link"><figcaption><p>A recommended dataset, tagged <strong>Static twin</strong>: the platform has detected the join between the two sources. <strong>View all recommendations</strong> opens the full card, the one-click path to Steps 3 and 4.</p></figcaption></figure>

***

## Concept classifications

Concepts can be classified as Identifier, Time, or Location — anything unclassified appears as Entity:

**Identifier** — unique keys that link records across datasets: Customer ID, Product SKU, Order Number. These serve as join keys and are not used as causal variables.

**Time** — temporal columns: Order Date, Timestamp, Created At. Defines event ordering for time-series analysis and temporal Digital Twins.

**Location** — geographic columns: City, Region, Postal Code. Enables location-based filtering and analysis.

**Entity** — everything without a specific classification: Revenue, Quantity, Churn, Monthly Charges. These are the variables that participate in causal relationships.

The visualization toggle at the top of the Ontology page offers three ways to browse the concepts: **Table**, **Strata**, and **Network** (shown above). A separate **Grouping** toggle controls how concepts are clustered in the view: by source **Dataset**, by dataset **Links**, by **ID** (identifier), or by **Time**.

In the graph, the legend distinguishes three kinds of node:

* **Identifier** — a concept used as a key to match records across datasets (Customer ID, SKU). Identifiers are how separate files get linked together.
* **Concept** — a single thing your data measures or describes, like Customer, Revenue, or Timestamp, unified across every dataset that mentions it.
* **Composite** — a concept built by linking identifiers or time dimensions across datasets, so columns from several sources can be used together in one calculation.

<figure><img src="/files/CHOvTabFZGFjRgxp90pZ" alt="Ontology Table view listing 21 concepts across 2 datasets with their type, classification, datasets, and last update, with Customer Id classified as an identifier"><figcaption><p>The Table view: concepts as a sortable table, the fastest way to check that identifiers and time fields have been correctly detected. Here Customer Id is the only classified concept, an identifier shared by both datasets.</p></figcaption></figure>

***

## Refining your ontology

For most projects the auto-generated ontology is accurate enough to proceed. If a concept has been misclassified, or if two columns that represent the same thing were created as separate concepts, you can correct this at any time — reclassify a concept, merge two into one, or split one that incorrectly combines two different things. Related concepts can also be organized into ontology groups — comparable measurements sharing a unit, categorical variants of the same field, or replicas of the same source column — so they are treated consistently in analysis.

***

## Export and reset

Two further tools sit at the bottom of the right panel:

* **Export ontology** — download the concept graph as **JSON** or **GraphML**, for use in external tools or as a snapshot before making large changes.
* **Reset ontology** — delete all concepts and re-run extraction for the workspace or chosen sources.

{% hint style="warning" %}
**Reset is destructive.** All manual refinements — reclassifications, merges, groups — are lost when the ontology is re-extracted. Export the ontology first if you want a record. Use reset only when the ontology has drifted too far to repair by hand.
{% endhint %}

***

## Next step

With the ontology in place, RootCause knows how your datasets connect. [Step 3: Build 360 Table](/user-guide/data-views.md) walks through creating the single analysis-ready dataset that the causal engine trains on.
