Open Semantic Interchange, now Apache Ossie, explained

What the spec is for, who is behind it, what a model file looks like, which tools convert to and from it, what it deliberately leaves out, and what it means if your semantic layer is defined in code.

Definition

What is Open Semantic Interchange?

Open Semantic Interchange (OSI) is an open, vendor-neutral specification for writing down a semantic model (datasets, fields, relationships and metrics, plus context for AI tools) as a YAML or JSON file, so the same definitions can move between warehouses, semantic layers, BI tools and agents instead of being rebuilt in each one.

Snowflake launched it with dbt Labs, Salesforce, RelationalAI and other partners in September 2025. In 2026 it entered the Apache Incubator and was renamed Apache Ossie. It is licensed under Apache 2.0, and it describes models; it does not run queries.

Why it exists

Every semantic layer has its own format

The dbt Semantic Layer stores metrics in dbt YAML, Snowflake in semantic view DDL, Databricks in metric view YAML, Power BI in TMDL, Cube in its own data model files. A company that defines revenue in one of them has to define it again for every other tool, and the copies drift.

OSI’s answer is a shared file format that each tool can import and export, so a model written once can be converted rather than rewritten. The pressure comes largely from AI: agents need the same metric definitions and synonyms whichever tool they run in.

Timeline

From OSI to Apache Ossie

Open Semantic Interchange timeline
DateWhat happened
September 23, 2025Snowflake announces Open Semantic Interchange with Salesforce, dbt Labs and RelationalAI, supported by BlackRock and 17 launch partners in all, including Cube, Hex, Sigma and ThoughtSpot.
October 14, 2025dbt Labs relicenses MetricFlow under Apache 2.0 as a reference implementation for OSI.
November 13, 2025AWS, Collibra, DataHub, Informatica, Starburst and others join the working group.
December 11, 2025Spec version 0.1.1, the only release so far, per the spec’s version history.
January 27, 2026The first spec is published under Apache 2.0. AtScale, Databricks, JetBrains, Lightdash and Qlik join.
June 22, 2026The project enters the Apache Incubator.
July 2026OSI is renamed Apache Ossie (incubating). The repository moves to apache/ossie.
September 29, 2026A separate apache/ossie-converters repository is created for converters between Ossie and other formats.
October 30, 2026CLICKHOUSE is added to the list of registered SQL dialect names.

The spec

What an Ossie model contains

The core spec defines a single model per document. The only release is 0.1.1; the main branch is a draft, 0.3.0.dev0, which removes the old semantic_model wrapper and makes keys and metric expressions refer to dataset fields rather than source columns. Files in the 0.1.1 shape fail the current schema.

Objects in the Apache Ossie core spec
ObjectWhat it holdsNotes
Semantic modelversion, name, datasets (required), plus relationships, model-scoped metrics, ai_context and custom_extensionsOne model per YAML or JSON document.
Datasetname and source (required), primary and unique keys, fields, dataset-scoped metricsA logical table over a physical table.
Fieldname and expression (required), datatype, dimension.is_time, labelThere is no separate dimension object: dimensions are fields.
Relationshipfrom, to, from_columns, to_columnsMany-to-one, by field names.
MetricA name and an aggregate expression, on a dataset or across the modelA metric cannot reference another metric.
AI contextInstructions, synonyms and examples on the model, datasets, fields and metricsFor agents and natural-language tools.
ExpressionsPortable OSSIE_SQL_2026, with optional per-dialect variantsRegistering a dialect does not mean Ossie supports querying in it.

OSI and a code-defined layer

The same model as an Ossie file and as code

On the left, an orders and customers model in the current draft format. We checked it against the spec’s JSON Schema on November 10, 2026. On the right, the same model as hypequery datasets. The shapes line up closely: dataset for dataset, field for dimension, metric for measure, relationship for belongsTo.

What the code version adds is everything Ossie leaves to each tool: a tenant key enforced at query time, and the query itself, through function calls, an HTTP API, React hooks or MCP. hypequery does not read or write Ossie files today. Nor is there a ClickHouse converter yet: a proposal to add one to the Ossie repository was closed without merging in October 2026.

sales.ossie.yaml
datasets/sales.ts
Apache Ossie objects and their equivalents in a code-defined semantic layer
Apache OssiehypequeryNotes
Semantic modelA module of datasetsImported by your backend.
Dataset with source and primary_keyDatasetsource is the ClickHouse table.
FieldDimensionA time field (is_time) becomes the timeKey.
Dataset-scoped metricMeasureTyped helpers instead of SQL strings.
Model-scoped metricmeasure.derived() on one datasetDerived measures combine measures on the same dataset only; a formula cannot reference a measure on a related dataset.
RelationshipbelongsToComposite keys are supported.
ai_contextlabel, descriptionExposed to agents over MCP.
Not in the spec yetTenant key, Serve API, React hooks, MCP toolsAccess control and querying are on Ossie’s roadmap, not in the spec.

Adoption

Which tools read and write Ossie

  • Snowflake: SYSTEM$CREATE_SEMANTIC_VIEW_FROM_OSSIE_YAML imports a model (spec 0.1.1) and SYSTEM$READ_OSSIE_YAML_FROM_SEMANTIC_VIEW exports one. See Snowflake semantic views.
  • dbt: v1.12 reads Ossie JSON files as an alternative to YAML; support in dbt v2 is “coming soon”. See dbt MetricFlow.
  • Converters: apache/ossie-converters has projects for dbt MetricFlow (both directions), Databricks metric views, Power BI and Fabric, Salesforce, Cube, Lightdash, Omni, Sigma, ThoughtSpot and more. The Snowflake-to-Cortex-Analyst converter is under active development.
  • Tooling in the main repo: a validator, a Python SDK (0.3.0.dev0, not on PyPI) and a compliance suite.

Limits

What Ossie does not cover yet

  • Querying. The expression language does not define a query interface. A relational query interface is a draft, and a reference query engine is future work.
  • Access control. Governance, identity and access control are on the roadmap, not in the spec, so tenant and row rules stay in each tool.
  • Grain and non-additive metrics. The roadmap says the model lacks support for metrics at different grains, filters and aggregation semantics, and an open issue notes there is no way to declare a non-additive metric.
  • Stability. The main branch is a draft with breaking changes from the only release, so converters target different versions.

None of this makes Ossie less useful as an exchange format. It does mean a semantic layer still needs its own runtime, its own access rules and its own query API, whichever format it imports.

Questions

Open Semantic Interchange FAQ

What is Open Semantic Interchange (OSI)?

Open Semantic Interchange is a vendor-neutral, open-source specification for describing semantic models (datasets, fields, relationships and metrics) in YAML or JSON, so one definition can move between BI tools, semantic layers and AI tools. Snowflake announced it with partners in September 2025.

What is Apache Ossie?

Apache Ossie (incubating) is OSI’s new name. The project entered the Apache Software Foundation’s incubator on June 22, 2026, and the rename was announced in July 2026. The project says the spec, community and mission did not change. The repository is now apache/ossie.

Who is behind OSI?

Snowflake led the launch with Salesforce, dbt Labs and RelationalAI, supported by BlackRock. Databricks, AtScale, Qlik, Lightdash and others joined in January 2026, and Microsoft engineers contributed a Power BI converter. The project’s ecosystem page listed more than 70 organizations on November 10, 2026. Google and ClickHouse were not among them.

What version is the OSI spec?

The only release is 0.1.1, dated December 11, 2025. The main branch is a draft, 0.3.0.dev0, with breaking changes: one model per document with no semantic_model wrapper, and keys and metric expressions that refer to dataset fields rather than source columns. There will be no 0.2.0.

Is OSI a query language?

No. Ossie defines how a model is written down, not how it is queried. The expression language explicitly does not define a query interface. A relational query interface and a reference engine are drafts or future roadmap items.

Which tools support OSI?

Snowflake semantic views import and export Ossie YAML (version 0.1.1 for import), and dbt v1.12 reads Ossie files as an alternative to YAML. The apache/ossie-converters repository holds converters for dbt MetricFlow, Databricks metric views, Power BI, Salesforce, Cube, Lightdash and others. There is no ClickHouse converter yet.

Sources

Vendor pages used for this page, all read on November 10, 2026.

Apache Ossie
ossie.apache.org/updates/
ossie.apache.org/ecosystem/
incubator.apache.org/projects/ossie.html
github.com/apache/ossie
github.com/apache/ossie/blob/main/core-spec/spec.md
github.com/apache/ossie/blob/main/core-spec/ossie-schema.json
github.com/apache/ossie/blob/main/core-spec/expression_language.md
github.com/apache/ossie/blob/main/extensions/dialects.md
github.com/apache/ossie/blob/main/ROADMAP.md
github.com/apache/ossie-converters
Snowflake and dbt Labs
www.snowflake.com/en/news/press-releases/snowflake-salesforce-dbt-labs-and-more-revolutionize-data-readiness-for-ai-with-open-semantic-interchange-initiative/
www.snowflake.com/en/blog/osi-initiative-expands-partners/
www.snowflake.com/en/blog/open-semantic-interchanges-specs-finalized/
www.snowflake.com/en/blog/apache-ossie-open-semantic-interchange-incubator/
www.snowflake.com/en/blog/engineering/apache-ossie-microsoft-ecosystem-support/
www.getdbt.com/blog/dbt-labs-affirms-commitment-to-open-semantic-interchange-by-open-sourcing-metricflow
docs.getdbt.com/docs/build/ossie-semantic-models
docs.snowflake.com/en/sql-reference/stored-procedures/system_create_semantic_view_from_ossie_yaml

Next step

Define a semantic layer in your own codebase

hypequery datasets are TypeScript or Python files: dimensions, measures, joins and a tenant key, served to your API, React hooks and AI agents over MCP. Open source, for ClickHouse.

Get early access to hypequery cloud.

Cloud hosts the same model you run in your backend, with a managed API and MCP server, versions, and rollback. We're letting teams in a few at a time. Join the waitlist and we'll reach out when your project can go live.

How do you want to build your analytics layer? (Optional)
What features do you most need? (Optional)

Pick as many as you like.

Only your email is required. All other questions are optional.