Semantic Modeling Language (SML)
Semantic Modeling Language (SML) is an open-source, YAML-based standard for defining semantic models that work across BI and AI tools.
Publisher review
Semantic Modeling Language (SML) is an open-source, YAML-based standard for defining semantic models that work across BI and AI tools. Developed and open-sourced by AtScale in 2024, SML targets data engineers, analysts, and business users who need a single, portable definition of metrics and dimensions to eliminate inconsistency across tools. It is designed for organizations that have outgrown siloed metric definitions in individual BI platforms and want a governed, reusable semantic layer that can feed any downstream tool — from Tableau and Power BI to AI agents. SML is particularly suited for enterprises in finance, healthcare, retail, manufacturing, and CPG, where complex multi-dimensional analytics (hierarchies, semi-additive measures, many-to-many relationships) are common.
SML is object-oriented, promoting composability and inheritance so that semantic objects can be shared within and across organizations. It supports complex analytics including hierarchies, relationships, custom measures, and cell-based expressions. The language is built on YAML, making it human-readable, code-friendly, and fully compatible with Git for version control and CI/CD pipelines. SML is extensible — its syntax can be enhanced to support additional properties — and is Apache-licensed, free to use in any application. AtScale has also released pre-built semantic models for standard datasets like TPC-DS, Worldwide Importers, AdventureWorks, Snowplow, and CRISP, with plans to add models for SaaS applications such as Salesforce, Google Analytics, and Jira. Future releases will include helper classes for programmatic read/write and semantic translators to migrate from other languages like dbt Labs' semantic layer.
SML competes directly with proprietary semantic modeling approaches from vendors such as dbt Labs (dbt Semantic Layer), Looker (LookML), Cube.dev, Denodo, and Strategy Mosaic. Unlike LookML, which is tied to Looker's platform, SML is vendor-neutral and open-source, aiming to become an industry standard. AtScale's own platform implements SML, but the specification is designed to be portable across any semantic layer engine. Strategy Mosaic positions itself as an enterprise alternative with AI-powered no-code modeling and continuous governance, while dbt's semantic layer is tightly integrated with its transformation workflow. SML's open-source nature and multidimensional depth (covering semi-additive measures, many-to-many relationships, and cell-based expressions) differentiate it from simpler tabular-focused competitors.
The primary trade-off with SML is its relative newness — the specification was open-sourced in late 2024, so the ecosystem of tools, translators, and community models is still maturing. Organizations adopting SML today may need to build custom integrations or wait for third-party support. While SML is comprehensive, its YAML syntax can become verbose for very large models with hundreds of objects. There is no explicit cons documented in the sources, but potential adopters should consider the learning curve for teams unfamiliar with YAML-based modeling and the dependency on AtScale's ongoing stewardship for specification evolution. Additionally, SML currently lacks built-in governance features (e.g., automated lineage, policy enforcement) that enterprise platforms like Strategy Mosaic provide out of the box.
How it works
-
Open-source YAML standard
Apache-licensed, human-readable YAML syntax for defining semantic models that work across BI and AI tools.
-
Multidimensional modeling
Supports hierarchies, semi-additive measures, many-to-many relationships, and cell-based expressions for complex analytics.
-
Object-oriented composability
Enables inheritance and sharing of semantic objects within and across organizations for consistent model building.
-
Git and CI/CD compatible
Code-based models integrate with Git for version control and automated deployment pipelines.
-
Extensible syntax
YAML structure can be enhanced with additional properties and features as needed.
-
Pre-built model library
Includes ready-to-use semantic models for TPC-DS, Worldwide Importers, AdventureWorks, Snowplow, and CRISP.
-
Vendor-neutral portability
Designed to work with any semantic layer platform, not locked to AtScale's implementation.
Strengths and trade-offs
Strengths
- SML is open-source and Apache-licensed, free to use in any application or use case without licensing fees.
- It handles multidimensional constructs like semi-additive measures and many-to-many relationships, serving as a superset of other semantic modeling languages.
- Pre-built models for five standard datasets (TPC-DS, Worldwide Importers, AdventureWorks, Snowplow, CRISP) accelerate initial model creation.
- Object-oriented design with inheritance allows semantic objects to be shared across organizations, reducing duplication.
Trade-offs
- The specification was only open-sourced in late 2024, so the ecosystem of tools, translators, and community contributions is still nascent.
- YAML syntax can become verbose for large models with hundreds of objects, potentially reducing readability.
- No built-in governance features like automated lineage or policy enforcement, which enterprise platforms such as Strategy Mosaic provide.
- Adoption depends on AtScale's continued stewardship; the language may not gain critical mass if competitors push proprietary alternatives.
Pricing context
Free and open-source under the Apache 2.0 license. No licensing costs for using the SML specification. AtScale's commercial semantic layer platform (which implements SML) requires a separate paid subscription.
Getting started with Semantic Modeling Language (SML)
-
Install SML CLI tools
Download the SML command-line interface from the official GitHub repository. Follow the installation instructions for your operating system. Verify the installation by running `sml --version` in your terminal.
-
Create a YAML model file
Open a text editor and create a new file with a `.sml.yaml` extension. Define your semantic model by specifying dimensions, measures, and hierarchies using the SML YAML syntax. Refer to the official specification for structure examples.
-
Connect to your data source
In your SML model file, add a `connection` block that specifies your data source type (e.g., Snowflake, BigQuery) and credentials. Use environment variables for sensitive information to keep your file Git-safe.
-
Validate the model locally
Run `sml validate my_model.sml.yaml` in your terminal. The CLI will check your YAML syntax and semantic correctness. Fix any errors reported, such as missing references or invalid hierarchy definitions.
-
Deploy model to a semantic engine
Use `sml deploy my_model.sml.yaml --engine <engine_url>` to push your model to a compatible semantic layer engine, such as AtScale's platform. After deployment, test the model by querying it from a connected BI tool like Tableau.
Frequently Asked Questions
What is Semantic Modeling Language (SML)?
Semantic Modeling Language (SML) is an open-source, YAML-based standard for defining semantic models that work across BI and AI tools. Developed by AtScale in 2024, it provides a portable, governed way to define metrics and dimensions, eliminating inconsistency across platforms.
How does SML compare to LookML or dbt Semantic Layer?
SML is vendor-neutral and open-source, unlike LookML which is tied to Looker. It supports multidimensional constructs like semi-additive measures and many-to-many relationships, making it a superset of simpler tabular-focused competitors. dbt's semantic layer is tightly integrated with its transformation workflow.
What are the main features of SML?
SML features include open-source YAML syntax, multidimensional modeling with hierarchies and cell-based expressions, object-oriented composability, Git and CI/CD compatibility, extensible syntax, pre-built models for standard datasets, and vendor-neutral portability across semantic layer platforms.
Is SML free to use and what is its license?
Yes, SML is free and open-source under the Apache 2.0 license. There are no licensing costs for using the SML specification itself. AtScale's commercial semantic layer platform, which implements SML, requires a separate paid subscription.
What are the weaknesses of SML for enterprise use?
SML was open-sourced in late 2024, so its ecosystem of tools and community models is still maturing. YAML syntax can become verbose for large models, and it lacks built-in governance features like automated lineage or policy enforcement that some enterprise platforms provide.
What pre-built semantic models are available in SML?
SML includes ready-to-use semantic models for TPC-DS, Worldwide Importers, AdventureWorks, Snowplow, and CRISP. AtScale plans to add models for SaaS applications such as Salesforce, Google Analytics, and Jira in future releases.
Alternatives
How Semantic Modeling Language (SML) compares
Direct head-to-head against 3 competitors. Picked by 7wData.
Semantic Modeling Language (SML)
- Pricing
- Free and open-source under the Apache 2.0 license. No licensing costs for using the SML specification. AtScale's commercial semantic layer platform (which implements SML) requires a separate paid subscription.
- Target
- Semantic Modeling Language (SML) is an open-source, YAML-based standard for defining semantic models that work across BI and AI tools.
- Strength
- SML is open-source and Apache-licensed, free to use in any application or use case without licensing fees.
- Watch for
- The specification was only open-sourced in late 2024, so the ecosystem of tools, translators, and community contributions is still nascent.
LookML
- Pricing
- Looker (Google Cloud) starts at $3,000/month for 10 users.
- Target
- Data teams building semantic models within Looker BI platform.
- Deployment
- SaaS, hosted by Google Cloud.
- Strength
- Native integration with Looker for defining metrics and dimensions.
- Watch for
- Vendor lock-in to Looker; models not portable to other BI tools.
dbt Metrics
- Pricing
- dbt Cloud starts at $100/month per developer; dbt Core free.
- Target
- Analytics engineers defining metrics in dbt transformation workflows.
- Deployment
- SaaS (dbt Cloud) or self-hosted (dbt Core).
- Strength
- Tight integration with dbt for defining metrics alongside data transformations.
- Watch for
- Limited to dbt ecosystem; no native multidimensional support.
Cube.js
- Pricing
- Cube Cloud starts at $99/month; self-hosted open-source free.
- Target
- Developers building custom analytics APIs with semantic layer.
- Deployment
- SaaS (Cube Cloud) or self-hosted.
- Strength
- Headless BI with pre-aggregations for fast query performance.
- Watch for
- Requires development effort; less suited for non-technical users.
User reviews
No user reviews yet. Be the first to write one.
Sources
Reporting on this tool draws on these publicly available sources.