Source code for pyatlan.model.assets.micro_strategy_column

# SPDX-License-Identifier: Apache-2.0
# Copyright 2025 Atlan Pte. Ltd.


from __future__ import annotations

from typing import ClassVar, List, Optional

from pydantic.v1 import Field, validator

from pyatlan.model.fields.atlan_fields import (
    KeywordField,
    KeywordTextField,
    RelationField,
)

from .micro_strategy import MicroStrategy


[docs] class MicroStrategyColumn(MicroStrategy): """Description""" type_name: str = Field(default="MicroStrategyColumn", allow_mutation=False) @validator("type_name") def validate_type_name(cls, v): if v != "MicroStrategyColumn": raise ValueError("must be MicroStrategyColumn") return v def __setattr__(self, name, value): if name in MicroStrategyColumn._convenience_properties: return object.__setattr__(self, name, value) super().__setattr__(name, value) MICRO_STRATEGY_COLUMN_ID: ClassVar[KeywordField] = KeywordField( "microStrategyColumnId", "microStrategyColumnId" ) """ Unique identifier of the column in MicroStrategy. """ MICRO_STRATEGY_COLUMN_TYPE: ClassVar[KeywordField] = KeywordField( "microStrategyColumnType", "microStrategyColumnType" ) """ Type of the column (Eg attribute_column, fact_column, metric_column etc). """ MICRO_STRATEGY_DATA_TYPE: ClassVar[KeywordField] = KeywordField( "microStrategyDataType", "microStrategyDataType" ) """ Data type of the column. """ MICRO_STRATEGY_COLUMN_ATTRIBUTE_QUALIFIED_NAME: ClassVar[KeywordTextField] = ( KeywordTextField( "microStrategyColumnAttributeQualifiedName", "microStrategyColumnAttributeQualifiedName.keyword", "microStrategyColumnAttributeQualifiedName", ) ) """ Unique identifier of the Attribute in which this column exists. """ MICRO_STRATEGY_COLUMN_FACT_QUALIFIED_NAME: ClassVar[KeywordTextField] = ( KeywordTextField( "microStrategyColumnFactQualifiedName", "microStrategyColumnFactQualifiedName.keyword", "microStrategyColumnFactQualifiedName", ) ) """ Unique identifier of the Fact in which this column exists. """ MICRO_STRATEGY_COLUMN_METRIC_QUALIFIED_NAME: ClassVar[KeywordTextField] = ( KeywordTextField( "microStrategyColumnMetricQualifiedName", "microStrategyColumnMetricQualifiedName.keyword", "microStrategyColumnMetricQualifiedName", ) ) """ Unique identifier of the Metric in which this column exists. """ MICRO_STRATEGY_COLUMN_CUBE_QUALIFIED_NAME: ClassVar[KeywordTextField] = ( KeywordTextField( "microStrategyColumnCubeQualifiedName", "microStrategyColumnCubeQualifiedName.keyword", "microStrategyColumnCubeQualifiedName", ) ) """ Unique identifier of the Cube in which this column exists. """ MICRO_STRATEGY_COLUMN_REPORT_QUALIFIED_NAME: ClassVar[KeywordTextField] = ( KeywordTextField( "microStrategyColumnReportQualifiedName", "microStrategyColumnReportQualifiedName.keyword", "microStrategyColumnReportQualifiedName", ) ) """ Unique identifier of the Report in which this column exists. """ MICRO_STRATEGY_COLUMN_DOSSIER_QUALIFIED_NAME: ClassVar[KeywordTextField] = ( KeywordTextField( "microStrategyColumnDossierQualifiedName", "microStrategyColumnDossierQualifiedName.keyword", "microStrategyColumnDossierQualifiedName", ) ) """ Unique identifier of the Dossier in which this column exists. """ MICRO_STRATEGY_COLUMN_DOCUMENT_QUALIFIED_NAME: ClassVar[KeywordTextField] = ( KeywordTextField( "microStrategyColumnDocumentQualifiedName", "microStrategyColumnDocumentQualifiedName.keyword", "microStrategyColumnDocumentQualifiedName", ) ) """ Unique identifier of the Document in which this column exists. """ MICRO_STRATEGY_PARENT_NAME: ClassVar[KeywordField] = KeywordField( "microStrategyParentName", "microStrategyParentName" ) """ Name of the parent asset. """ MICRO_STRATEGY_COLUMN_EXPRESSION: ClassVar[KeywordField] = KeywordField( "microStrategyColumnExpression", "microStrategyColumnExpression" ) """ Expression or formula used to define this column. """ MICRO_STRATEGY_DOSSIER: ClassVar[RelationField] = RelationField( "microStrategyDossier" ) """ TBC """ MICRO_STRATEGY_DOCUMENT: ClassVar[RelationField] = RelationField( "microStrategyDocument" ) """ TBC """ MICRO_STRATEGY_ATTRIBUTE: ClassVar[RelationField] = RelationField( "microStrategyAttribute" ) """ TBC """ MICRO_STRATEGY_REPORT: ClassVar[RelationField] = RelationField( "microStrategyReport" ) """ TBC """ MICRO_STRATEGY_METRIC: ClassVar[RelationField] = RelationField( "microStrategyMetric" ) """ TBC """ MICRO_STRATEGY_CUBE: ClassVar[RelationField] = RelationField("microStrategyCube") """ TBC """ MICRO_STRATEGY_FACT: ClassVar[RelationField] = RelationField("microStrategyFact") """ TBC """ _convenience_properties: ClassVar[List[str]] = [ "micro_strategy_column_id", "micro_strategy_column_type", "micro_strategy_data_type", "micro_strategy_column_attribute_qualified_name", "micro_strategy_column_fact_qualified_name", "micro_strategy_column_metric_qualified_name", "micro_strategy_column_cube_qualified_name", "micro_strategy_column_report_qualified_name", "micro_strategy_column_dossier_qualified_name", "micro_strategy_column_document_qualified_name", "micro_strategy_parent_name", "micro_strategy_column_expression", "micro_strategy_dossier", "micro_strategy_document", "micro_strategy_attribute", "micro_strategy_report", "micro_strategy_metric", "micro_strategy_cube", "micro_strategy_fact", ] @property def micro_strategy_column_id(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_id ) @micro_strategy_column_id.setter def micro_strategy_column_id(self, micro_strategy_column_id: Optional[str]): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_id = micro_strategy_column_id @property def micro_strategy_column_type(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_type ) @micro_strategy_column_type.setter def micro_strategy_column_type(self, micro_strategy_column_type: Optional[str]): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_type = micro_strategy_column_type @property def micro_strategy_data_type(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_data_type ) @micro_strategy_data_type.setter def micro_strategy_data_type(self, micro_strategy_data_type: Optional[str]): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_data_type = micro_strategy_data_type @property def micro_strategy_column_attribute_qualified_name(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_attribute_qualified_name ) @micro_strategy_column_attribute_qualified_name.setter def micro_strategy_column_attribute_qualified_name( self, micro_strategy_column_attribute_qualified_name: Optional[str] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_attribute_qualified_name = ( micro_strategy_column_attribute_qualified_name ) @property def micro_strategy_column_fact_qualified_name(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_fact_qualified_name ) @micro_strategy_column_fact_qualified_name.setter def micro_strategy_column_fact_qualified_name( self, micro_strategy_column_fact_qualified_name: Optional[str] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_fact_qualified_name = ( micro_strategy_column_fact_qualified_name ) @property def micro_strategy_column_metric_qualified_name(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_metric_qualified_name ) @micro_strategy_column_metric_qualified_name.setter def micro_strategy_column_metric_qualified_name( self, micro_strategy_column_metric_qualified_name: Optional[str] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_metric_qualified_name = ( micro_strategy_column_metric_qualified_name ) @property def micro_strategy_column_cube_qualified_name(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_cube_qualified_name ) @micro_strategy_column_cube_qualified_name.setter def micro_strategy_column_cube_qualified_name( self, micro_strategy_column_cube_qualified_name: Optional[str] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_cube_qualified_name = ( micro_strategy_column_cube_qualified_name ) @property def micro_strategy_column_report_qualified_name(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_report_qualified_name ) @micro_strategy_column_report_qualified_name.setter def micro_strategy_column_report_qualified_name( self, micro_strategy_column_report_qualified_name: Optional[str] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_report_qualified_name = ( micro_strategy_column_report_qualified_name ) @property def micro_strategy_column_dossier_qualified_name(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_dossier_qualified_name ) @micro_strategy_column_dossier_qualified_name.setter def micro_strategy_column_dossier_qualified_name( self, micro_strategy_column_dossier_qualified_name: Optional[str] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_dossier_qualified_name = ( micro_strategy_column_dossier_qualified_name ) @property def micro_strategy_column_document_qualified_name(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_document_qualified_name ) @micro_strategy_column_document_qualified_name.setter def micro_strategy_column_document_qualified_name( self, micro_strategy_column_document_qualified_name: Optional[str] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_document_qualified_name = ( micro_strategy_column_document_qualified_name ) @property def micro_strategy_parent_name(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_parent_name ) @micro_strategy_parent_name.setter def micro_strategy_parent_name(self, micro_strategy_parent_name: Optional[str]): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_parent_name = micro_strategy_parent_name @property def micro_strategy_column_expression(self) -> Optional[str]: return ( None if self.attributes is None else self.attributes.micro_strategy_column_expression ) @micro_strategy_column_expression.setter def micro_strategy_column_expression( self, micro_strategy_column_expression: Optional[str] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_column_expression = ( micro_strategy_column_expression ) @property def micro_strategy_dossier(self) -> Optional[MicroStrategyDossier]: return ( None if self.attributes is None else self.attributes.micro_strategy_dossier ) @micro_strategy_dossier.setter def micro_strategy_dossier( self, micro_strategy_dossier: Optional[MicroStrategyDossier] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_dossier = micro_strategy_dossier @property def micro_strategy_document(self) -> Optional[MicroStrategyDocument]: return ( None if self.attributes is None else self.attributes.micro_strategy_document ) @micro_strategy_document.setter def micro_strategy_document( self, micro_strategy_document: Optional[MicroStrategyDocument] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_document = micro_strategy_document @property def micro_strategy_attribute(self) -> Optional[MicroStrategyAttribute]: return ( None if self.attributes is None else self.attributes.micro_strategy_attribute ) @micro_strategy_attribute.setter def micro_strategy_attribute( self, micro_strategy_attribute: Optional[MicroStrategyAttribute] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_attribute = micro_strategy_attribute @property def micro_strategy_report(self) -> Optional[MicroStrategyReport]: return ( None if self.attributes is None else self.attributes.micro_strategy_report ) @micro_strategy_report.setter def micro_strategy_report( self, micro_strategy_report: Optional[MicroStrategyReport] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_report = micro_strategy_report @property def micro_strategy_metric(self) -> Optional[MicroStrategyMetric]: return ( None if self.attributes is None else self.attributes.micro_strategy_metric ) @micro_strategy_metric.setter def micro_strategy_metric( self, micro_strategy_metric: Optional[MicroStrategyMetric] ): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_metric = micro_strategy_metric @property def micro_strategy_cube(self) -> Optional[MicroStrategyCube]: return None if self.attributes is None else self.attributes.micro_strategy_cube @micro_strategy_cube.setter def micro_strategy_cube(self, micro_strategy_cube: Optional[MicroStrategyCube]): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_cube = micro_strategy_cube @property def micro_strategy_fact(self) -> Optional[MicroStrategyFact]: return None if self.attributes is None else self.attributes.micro_strategy_fact @micro_strategy_fact.setter def micro_strategy_fact(self, micro_strategy_fact: Optional[MicroStrategyFact]): if self.attributes is None: self.attributes = self.Attributes() self.attributes.micro_strategy_fact = micro_strategy_fact class Attributes(MicroStrategy.Attributes): micro_strategy_column_id: Optional[str] = Field(default=None, description="") micro_strategy_column_type: Optional[str] = Field(default=None, description="") micro_strategy_data_type: Optional[str] = Field(default=None, description="") micro_strategy_column_attribute_qualified_name: Optional[str] = Field( default=None, description="" ) micro_strategy_column_fact_qualified_name: Optional[str] = Field( default=None, description="" ) micro_strategy_column_metric_qualified_name: Optional[str] = Field( default=None, description="" ) micro_strategy_column_cube_qualified_name: Optional[str] = Field( default=None, description="" ) micro_strategy_column_report_qualified_name: Optional[str] = Field( default=None, description="" ) micro_strategy_column_dossier_qualified_name: Optional[str] = Field( default=None, description="" ) micro_strategy_column_document_qualified_name: Optional[str] = Field( default=None, description="" ) micro_strategy_parent_name: Optional[str] = Field(default=None, description="") micro_strategy_column_expression: Optional[str] = Field( default=None, description="" ) micro_strategy_dossier: Optional[MicroStrategyDossier] = Field( default=None, description="" ) # relationship micro_strategy_document: Optional[MicroStrategyDocument] = Field( default=None, description="" ) # relationship micro_strategy_attribute: Optional[MicroStrategyAttribute] = Field( default=None, description="" ) # relationship micro_strategy_report: Optional[MicroStrategyReport] = Field( default=None, description="" ) # relationship micro_strategy_metric: Optional[MicroStrategyMetric] = Field( default=None, description="" ) # relationship micro_strategy_cube: Optional[MicroStrategyCube] = Field( default=None, description="" ) # relationship micro_strategy_fact: Optional[MicroStrategyFact] = Field( default=None, description="" ) # relationship attributes: MicroStrategyColumn.Attributes = Field( default_factory=lambda: MicroStrategyColumn.Attributes(), description=( "Map of attributes in the instance and their values. " "The specific keys of this map will vary by type, " "so are described in the sub-types of this schema." ), )
from .micro_strategy_attribute import MicroStrategyAttribute # noqa: E402, F401 from .micro_strategy_cube import MicroStrategyCube # noqa: E402, F401 from .micro_strategy_document import MicroStrategyDocument # noqa: E402, F401 from .micro_strategy_dossier import MicroStrategyDossier # noqa: E402, F401 from .micro_strategy_fact import MicroStrategyFact # noqa: E402, F401 from .micro_strategy_metric import MicroStrategyMetric # noqa: E402, F401 from .micro_strategy_report import MicroStrategyReport # noqa: E402, F401 MicroStrategyColumn.Attributes.update_forward_refs()