docs(snowflake): clarify output format and link native Ossie semantic-view functions#208
docs(snowflake): clarify output format and link native Ossie semantic-view functions#208alphonse-terrier wants to merge 3 commits into
Conversation
There was a problem hiding this comment.
@alphonse-terrier Could you please give an example or a pointer to the code where it converts to the legacy yaml ?
Here is the linked converted example that confirms that it converts to the YAML surface that maps to Semantic View.
|
Thanks for taking a look, @khush-bhatia 🙏 Agreed that the converted YAML works end-to-end: Snowflake ingests it and creates a Semantic View. That part isn't in dispute. My point is a different one though: the file doesn't conform to the published semantic view YAML spec, because the converter emits fields that aren't part of that spec (the loader accepts them, but it looks like it just ignores the extras). Concretely:
Both of these are valid fields in the Cortex Analyst semantic model YAML but they aren't in the semantic view YAML spec. So "creates a Semantic View" and "conforms to the semantic view YAML spec" aren't the same claim: the first is true, the second isn't (extra fields, silently tolerated). Happy to adjust the doc wording if the "legacy" framing feels too strong but I'd like to keep the note that the output isn't a field-for-field match of the semantic view YAML spec, since that's the practical gotcha for anyone diffing it against the docs. Does that work for you? |
This represents a documentation gap in snowflake docs. I will follow up to get this fixed. The unique_keys at table level is the preferred approach since it enables customers to define a composite key as unique. The
In the semantic view YAML, synonyms are supported for both tables and facts/dimensions. If the Ossie converter is not handling the conversion correctly here, that's bug in the converter that can be fixed. |
Motivation
The Snowflake converter's README could give the impression that it produces the newer Snowflake semantic view YAML (the format paired with
CREATE SEMANTIC VIEW). It actually emits the legacy Cortex Analyst semantic model YAML (the stage-based format). These structures overlap but are distinct Snowflake surfaces, and the ambiguity could mislead users about what the output can be plugged into.Change
Documentation only — no code or test changes.
SYSTEM$CREATE_SEMANTIC_VIEW_FROM_OSSIE_YAML(Ossie YAML → semantic view)SYSTEM$READ_OSSIE_YAML_FROM_SEMANTIC_VIEW(semantic view → Ossie YAML)Both are linked to their official docs. The section also flags a dedicated open-source Ossie ↔ semantic-view converter as welcome future work.
Scope
converters/snowflake/README.mdChecklist