Skip to main content

Core concepts

The semantic layer

Celiq sits between your database and your analysts. Instead of writing SQL every time, you define your data model once in Forge using CML (Celiq Modelling Language) — then anyone can query it without writing SQL.

Database tables

Nodes ← define fields, metrics, joins

Domains ← group nodes into a business context

Reveals ← curated views with pre-selected fields

Discover ← drag-and-drop query builder + 27 chart types

Mosaics ← dashboards of pinned tiles

Nodes

A node maps to one database table. It defines:

  • Attributes — dimensions (strings, dates, IDs)
  • Metrics — measures (SUM, COUNT, AVG, etc.)
  • Joins — relationships to other nodes

Example: payment.node.celiq

node: payment
table: public.payment
attributes:
- name: payment_id
type: integer
role: primary_key
- name: payment_date
type: date
is_date: true
metrics:
- name: total_revenue
label: Total payment revenue
sql: SUM(amount)
type: currency

Domains

A domain groups related nodes into a business context. It defines joins between nodes and contains one or more reveals.

Example: pagila.domain.celiq

Reveals

A reveal is a curated view inside a domain. It pre-selects the most useful fields, suggests metrics, and optionally sets default filters. This is what analysts pick in Discover.

Mosaics

A Mosaic is a dashboard made of tiles. Each tile is pinned from a Discover query and runs live against your warehouse.

Orion

Orion is Celiq's built-in AI assistant. It can:

  • Generate node and domain CML from your database schema
  • Answer questions in natural language ("What was total revenue last month?")
  • Create Mosaics and WBR reports
  • Explain metric definitions and SQL

CML

CML (Celiq Modelling Language) is YAML-based. Node files end in .node.celiq, domain files in .domain.celiq. Files are stored in your project's Git repository for version control.