What makes a data model semantic?

The word semantic means connected with the meaning of words, language, or other symbols.

Semantic models can be confusing because they look like a normal data model. Depending on the tool, a semantic model may query data directly or store an imported copy, but the main purpose of a semantic model is that they act as a translation layer between the data and people/application analysing it.

The simple definition is:

A semantic model organises data for analysis and adds shared business meaning to it.

It can define business concepts, metrics, relationships, calculations, and other analytical rules so that users do not have to interpret raw data from scratch.

The structure underneath a semantic model

A semantic model is often build on a star schema which consists of fact and dimension tables, so understanding those structure makes it easier to see how relationships, measures, and other semantic rules work together.

Fact table

Typically stores quantitative data about business events, such as sales amount, quantity, or cost. It also contains foreign keys that link those events to related dimension tables.

Dimension table

Stores descriptive attributes that provide context for the facts, such as customer name, product category, date, or location. These attributes are commonly used to filter and group the measures in the fact table.

Example:

Sales is a fact table, while Product, Customer, and Date are dimension tables.

Most analytical questions combine a measure with some context:

What are we measuring? + How do we want to describe, group, or filter it?

The relationships between these tables tell the model how the different pieces of data are connected.

In this example,

Sales = what are we measuring?

Product, Customer, Date = how we analyse it?

This is useful because analytical question typically combine the two

How much did we sell + by customer, by month, by product?

The relationships between those tables provide the structure and how data are connected.

Semantic model adds business meaning and analytical definitions.

So what does a semantic model add?

For example, the data contains the following columns

  • cust_nm
  • net_amt_gbp
  • refund_amt
  • order_status

A data analyst understand those fields but business user may not.

The semantic model can expose them using concepts that are easier to understand

cust_nm: Customer

net_amt_gbp: Revenue

Semantic model is more than renaming columns.

Let's say the business define revenue as

Revenue = completed invoiced sales - refunds excluding VAT

The semantic model can encode that definition once and expose it simply as Revenue

So at a simple level,

Semantic model = data structure + Business definitions + reusable calculations + business friendly terminology

Once calculation such as Revenue is defined in the semantic model, reports can reuse it instead of eveyr analyst recreating the logic themselves. The business still has to agree on what Revenue means adn semantic model makes that agreed definition resusable.

The key idea

A semantic model is not just another set of tables. It builds on the underlying data structure and adds shared meaning on top.

Data model = How is the data structured?

Semantic model = What does the data mean and how should we analyse it?

Thank you for reading!

Author:
Kaori Ikarashi
Powered by The Information Lab
1st Floor, 25 Watling Street, London, EC4M 9BR
Subscribe
to our Newsletter
Get the lastest news about The Data School and application tips
Subscribe now
© 2026 The Information Lab