You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We want a standard definition of what a valid SemanticModel implementation should have. This allows for a shared definition to be understood in MetricFlow and dbt-core of what anything implementing the SemanticModel protocol will make available without MetricFlow and dbt-core needing to import each other. This should use the new Protocol type which exists in python 3.8+
The text was updated successfully, but these errors were encountered:
from __future__ importannotationsfromtypingimportOptional, Protocol, Sequencefromdbt_semantic_interfaces.protocols.dimensionimportDimensionfromdbt_semantic_interfaces.protocols.entityimportEntityfromdbt_semantic_interfaces.protocols.measureimportMeasurefromdbt_semantic_interfaces.protocols.metadataimportMetadataclassNodeRelation(Protocol):
"""Path object to where the data should be"""alias: strschema_name: strdatabase: Optional[str]
relation_name: strclassSemanticModel(Protocol):
"""Describes a semantic model"""name: strdescription: Optional[str]
node_relation: NodeRelationentities: Sequence[Entity]
measures: Sequence[Measure]
dimensions: Sequence[Dimension]
metadata: Optional[Metadata]
We want a standard definition of what a valid
SemanticModel
implementation should have. This allows for a shared definition to be understood in MetricFlow and dbt-core of what anything implementing theSemanticModel
protocol will make available without MetricFlow and dbt-core needing to import each other. This should use the newProtocol
type which exists in python 3.8+The text was updated successfully, but these errors were encountered: