diff --git a/core-spec/ossie-schema.json b/core-spec/ossie-schema.json index 30cfac03..5f7868b8 100644 --- a/core-spec/ossie-schema.json +++ b/core-spec/ossie-schema.json @@ -37,7 +37,7 @@ "$defs": { "Dialect": { "type": "string", - "enum": ["ANSI_SQL", "SNOWFLAKE", "MDX", "TABLEAU", "DATABRICKS", "MAQL", "BIGQUERY", "SIGMA", "THOUGHTSPOT", "DAX", "HOLISTICS_AQL", "OSSIE_SQL_2026"], + "enum": ["ANSI_SQL", "SNOWFLAKE", "MDX", "TABLEAU", "DATABRICKS", "MAQL", "BIGQUERY", "SIGMA", "THOUGHTSPOT", "DAX", "HOLISTICS_AQL", "OSSIE_SQL_2026", "CLICKHOUSE"], "description": "Supported SQL and expression language dialects" }, "Vendor": { diff --git a/core-spec/spec.md b/core-spec/spec.md index 99a39e32..b7cd78c7 100644 --- a/core-spec/spec.md +++ b/core-spec/spec.md @@ -63,6 +63,7 @@ Dialects in which metric and field expressions can be declared. | `DAX` | Data Analysis Expressions (Power BI / Analysis Services) | | `HOLISTICS_AQL` | Holistics AQL (Analytical Query Language) | | `OSSIE_SQL_2026` | Ossie's portable SQL expression language, defined in `expression_language.md` | +| `CLICKHOUSE` | ClickHouse SQL | `OSSIE_SQL_2026` is the only dialect whose semantics this specification defines. The other values identify vendor or third-party expression languages. Ossie treats expressions in those dialects as diff --git a/core-spec/spec.yaml b/core-spec/spec.yaml index 887ee86d..26f64639 100644 --- a/core-spec/spec.yaml +++ b/core-spec/spec.yaml @@ -43,6 +43,7 @@ dialects: - "DAX" # Data Analysis Expressions (Power BI / Analysis Services) - "HOLISTICS_AQL" # Holistics AQL (Analytical Query Language) - "OSSIE_SQL_2026" # Ossie portable SQL expression language (see expression_language.md) + - "CLICKHOUSE" # ClickHouse SQL # Supported logical data types for fields and metrics # Auto-generated from ossie-schema.json ($defs.DataType.enum). diff --git a/python/src/ossie/models.py b/python/src/ossie/models.py index 50b87d6c..2a36b677 100644 --- a/python/src/ossie/models.py +++ b/python/src/ossie/models.py @@ -37,6 +37,7 @@ class OssieDialect(str, Enum): DAX = "DAX" HOLISTICS_AQL = "HOLISTICS_AQL" OSSIE_SQL_2026 = "OSSIE_SQL_2026" + CLICKHOUSE = "CLICKHOUSE" class OssieDataType(str, Enum): diff --git a/scripts/generate-spec-types.py b/scripts/generate-spec-types.py index 925aab9d..65c65246 100755 --- a/scripts/generate-spec-types.py +++ b/scripts/generate-spec-types.py @@ -68,6 +68,7 @@ "DAX": "Data Analysis Expressions (Power BI / Analysis Services)", "HOLISTICS_AQL": "Holistics AQL (Analytical Query Language)", "OSSIE_SQL_2026": "Ossie portable SQL expression language (see expression_language.md)", + "CLICKHOUSE": "ClickHouse SQL", }, }, {