The semantic layer
A taxonomy and ontology derived from your own data, served to the Data Agent only after you approve it.
The semantic layer is the business vocabulary the Data Agent reasons with. It has two halves:
- Taxonomy: terms grouped by domain. Each term is an entity (Customer), a metric (Revenue), a dimension (Ship country) or a rule, with synonyms, the columns it maps to, an optional formula, and the evidence it came from.
- Ontology: how the entities relate (Order has a Customer), with cardinality.
#Derived, not invented
Derive semantics reads what you choose (tables and columns, query history, metadata and knowledge-base documents, SQLMesh models) and builds candidates from evidence. A model only names, groups and defines what the evidence already shows; it cannot add a term or a column. Where models disagree, for example three models computing revenue three ways, the layer flags a conflict instead of picking one.
#Approval and versions
Derived terms start as proposed. Send for approval files each in your Inbox; approving serves the term and bumps the semantic version. Each answer cites the version it used.
#Serving modes
Owners choose what the Data Agent sees: approved only, or approved plus flagged, where proposed terms are used but labelled unapproved in the answer. The Agent grounding view shows, for any question, how each phrase resolves with and without the layer. Approved terms can be exported as JSON-LD or YAML.