> ## Documentation Index
> Fetch the complete documentation index at: https://docs.omni.co/llms.txt
> Use this file to discover all available pages before exploring further.

<AgentInstructions>

## Submitting Feedback

If you encounter incorrect, outdated, or confusing documentation on this page, submit feedback:

POST https://docs.omni.co/feedback

```json
{
  "path": "/modeling/develop/model-generation",
  "feedback": "Description of the issue"
}
```

Only submit feedback when you have something specific and actionable to report.

</AgentInstructions>

# Model generation

> Models are automatically generated after a connection is added. Each model is divided into two layers:

* The **schema model** that stays in sync with raw database tables and views, and
* The **model extension**, where user-defined, virtualized data models live in Omni. Think fields, joins, and additional metadata such as formats, descriptions, and so on.

These layers make up the model you see in the model IDE in **Combined** mode.

## Schema Model

The schema model is intended to serve as a baseline version of the database schema, for simple point and click query, and some inferred key relationships. The schema model can be viewed by clicking the Parent model name at the bottom of the shared model page. To refresh the schema, click **Model > Refresh schema** inside the given schema model (see [Schema Refreshes](/modeling/develop/schema-refreshes)) for more details:

<img src="https://mintcdn.com/omni-e7402367/6ikujnGo2ytdwGbR/images/docs/modeling/manage-develop/assets/images/4-refresh-schema-d3690473ad281954d896386d88adf9cb.png?fit=max&auto=format&n=6ikujnGo2ytdwGbR&q=85&s=8c6f7b4e333500e1b781d316e66c7243" alt="" width="2292" height="976" data-path="images/docs/modeling/manage-develop/assets/images/4-refresh-schema-d3690473ad281954d896386d88adf9cb.png" />

When a model is generated or refreshed, Omni will use a combination of the schema metadata we get from your connected database and heuristics about the names of views and fields to auto-generate join relationships in the relationships model file and primary key designations in each view file.

**Note**: When deleting or ignoring schema fields, they will still be editable in SQL queries by users who have permissions to use SQL.

## Model extension

The model extension is the core user-curated data model in Omni. Fields, joins, and other metadata extend / supplement the schema model.

In addition to entirely new fields and relationships, schema fields can be extended with new metadata - formatting, labels, or deleted by "ignoring" them. Refer to the next section for more information.

### Combined mode

By default, the IDE displays the model in **Combined** mode. In this mode, the layers of the model are combined to create a comprehensive view. Changing the mode to **Model** will display only the model extension.

Changes made while in **Combined** mode will be included in the model extension - that is, visible when you toggle the mode to **Model**.

<img src="https://mintcdn.com/omni-e7402367/rrm3gsF5Rqc19hFm/images/docs/modeling/assets/images/5-show-full-model-a52052c0522b06771ae5ab0cf615b61e.gif?s=61e3a448b15ebe5028a7076aee5b2c2c" alt="" width="1145" height="763" data-path="images/docs/modeling/assets/images/5-show-full-model-a52052c0522b06771ae5ab0cf615b61e.gif" />

To delete a field or view from the schema model, delete it while in **Combined** mode. When you toggle into **Model** mode, the field or view will be marked as `ignored`.

Conversely, in **Model** mode, you can delete an "ignored" field or view to resurface it from the schema model.
