2025-07-25 20:43:29 +00:00

1676 lines
223 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper docs-doc-page docs-version-1.1.0 plugin-docs plugin-id-default docs-doc-id-python-sdk/builder" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v2.4.3">
<title data-rh="true">Builder | DataHub</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.datahub.com/docs/1.1.0/python-sdk/builder"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="1.1.0"><meta data-rh="true" name="docusaurus_tag" content="docs-default-1.1.0"><meta data-rh="true" name="docsearch:version" content="1.1.0"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-1.1.0"><meta data-rh="true" property="og:title" content="Builder | DataHub"><meta data-rh="true" name="description" content="\n\n\nThese classes and methods make it easier to construct MetadataChangeProposals and MetadataChangeEvents.\n\n\nclass datahub.emitter.mcp.MetadataChangeProposalWrapper(entityType=&#x27;ENTITYTYPEUNSET&#x27;, changeType=&#x27;UPSERT&#x27;, entityUrn=None, entityKeyAspect=None, auditHeader=None, aspectName=None, aspect=None, systemMetadata=None, headers=None)\nBases\n\nentityType (str)\nchangeType (Unionstr, ChangeTypeClass])\nentityUrn (Optional[str])\nentityKeyAspect (Optional[Aspect])\nauditHeader (Optional[KafkaAuditHeaderClass])\naspectName (Optional[str])\naspect (Optional[Aspect])\nsystemMetadata (Optional[SystemMetadataClass])\nheaders (Optional[Dict[str, str]])\n\n\n\n\n\nentityType Union[str, ChangeTypeClass] = &#x27;UPSERT&#x27;\n\n\n\nentityUrn Optional[Aspect] = None\n\n\n\nauditHeader Optional[str] = None\n\n\n\naspect Optional[SystemMetadataClass] = None\n\n\n\nheaders\n\nentityUrn (str)\naspects (Sequence[Optional[Aspect]])\n\n\nReturn type\nMetadataChangeProposalClass\n\n\n\n\n\nvalidate()\n\nReturn type\n\ntuples (bool)\nsimplifiedstructure (bool)\n\n\nReturn type\n\nobj (dict)\ntuples (bool)\n\n\nReturn type\nException if the generic aspect is invalid, e.g. contains invalid json.\n\nParameters\nOptional[MetadataChangeProposalWrapper]\n\n\n\n\n\nclassmethod tryfrommcl(mcl)\n\nParameters\nUnion[MetadataChangeProposalWrapper, MetadataChangeProposalClass]\n\n\n\n\n\nclassmethod fromobjrequirewrapper(obj, tuples=False)\n\nParameters\nMetadataChangeProposalWrapper\n\n\n\n\n\nasworkunit(*, treaterrorsaswarnings=False, isprimarysource=True)\n\nParameters\nMetadataWorkUnit\n\n\n\n\nConvenience functions for creating MCEs\n\n\ndatahub.emitter.mcebuilder.setdataseturntolower(value)\n\nParameters\nNone\n\n\n\n\n\nclass datahub.emitter.mcebuilder.OwnerType(value)\nBases\nint\n\n\n\n\n\ndatahub.emitter.mcebuilder.maketsmillis(ts)\n\nParameters\nOptional[int]\n\n\n\n\n\ndatahub.emitter.mcebuilder.parsetsmillis(ts)\n\nParameters\nOptional[datetime]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataplatformurn(platform)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataseturn(platform, name, env=&#x27;PROD&#x27;)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataplatforminstanceurn(platform, instance)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataseturnwithplatforminstance(platform, name, platforminstance, env=&#x27;PROD&#x27;)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeschemafieldurn(parenturn, fieldpath)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.schemafieldurntokey(schemafieldurn)\n\nParameters\nOptional[SchemaFieldKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.dataseturntokey(dataseturn)\n\nParameters\nOptional[DatasetKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.datasetkeytourn(key)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makecontainerurn(guid)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.containerurntokey(guid)\n\nParameters\nOptional[ContainerKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.datahubguid(obj)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeassertionurn(assertionid)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.assertionurntokey(assertionurn)\n\nParameters\nOptional[AssertionKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeuserurn(username)\nMakes a user urn if the input is not a user or group urn already\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makegroupurn(groupname)\nMakes a group urn if the input is not a user or group urn already\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.maketagurn(tag)\nMakes a tag urn if the input is not a tag urn already\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeownerurn(owner, ownertype)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeownershiptypeurn(type)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.maketermurn(term)\nMakes a term urn if the input is not a term urn already\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataflowurn(orchestrator, flowid, cluster=&#x27;prod&#x27;, platforminstance=None)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedatajoburnwithflow(flowurn, jobid)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataprocessinstanceurn(dataProcessInstanceId)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedatajoburn(orchestrator, flowid, jobid, cluster=&#x27;prod&#x27;, platforminstance=None)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedashboardurn(platform, name, platforminstance=None)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.dashboardurntokey(dashboardurn)\n\nParameters\nOptional[DashboardKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makecharturn(platform, name, platforminstance=None)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.charturntokey(charturn)\n\nParameters\nOptional[ChartKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedomainurn(domain)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlprimarykeyurn(featuretablename, primarykeyname)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlfeatureurn(featuretablename, featurename)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlfeaturetableurn(platform, featuretablename)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlmodelurn(platform, modelname, env)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlmodeldeploymenturn(platform, deploymentname, env)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlmodelgroupurn(platform, groupname, env)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.validateownershiptype(ownershiptype)\n\nParameters\nTuple[str, Optional[str]]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makelineagemce(upstreamurns, downstreamurn, lineagetype=&#x27;TRANSFORMED&#x27;)\nNote\n\nupstreamurns (List[str])\ndownstreamurn (str)\nlineagetype (str)\n\n\nReturn type\n\nSnapshotType (Type[DictWrapper])\nAspectType (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\nAspectType (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\nAspectType (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\nAspectType (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\naspecttype (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\ndefault (TypeVar(Aspect, bound= Aspect))\n\n\nReturn type\ntags (List[str])\n\nReturn type\n\nownerurns (List[str])\nsourcetype (Union[str, OwnershipSourceTypeClass, None])\nownertype (Union[str, OwnershipTypeClass])\n\n\nReturn type\ntermurns (List[str])\n\nReturn type\n\nmce (MetadataChangeEventClass)\naspect (Optional[TypeVar(Aspect, bound= Aspect)])\naspecttype (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type BaseModel\n\nParameters\nDict[str, str]\n\n\n\n\n\nguid()\n\nReturn type ClassVar[ConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.ContainerKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\n\n\n\n\n\nplatform Optionalstr]\n\n\n\nenv bool\n\n\n\nguiddict()\n\nReturn type\nDict[str, str]\n\n\n\n\n\nasurntyped()\n\nReturn type\nstr\n\n\n\n\n\nparentkey()\n\nReturn type ClassVar[ConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\ndatahub.emitter.mcpbuilder.PlatformKey\nalias of ContainerKey\n\n\n\nclass datahub.emitter.mcpbuilder.NamespaceKey(**data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nnamespace (str)\n\n\n\n\n\nnamespace ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.DatabaseKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\ndatabase (str)\n\n\n\n\n\ndatabase ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.SchemaKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\ndatabase (str)\nschema (str)\n\n\n\n\n\ndbschema ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.ProjectIdKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\nproject_id (str)\n\n\n\n\n\nproject_id ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.ExperimentKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nid (str)\n\n\n\n\n\nid ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.MetastoreKey(**data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nmetastore (str)\n\n\n\n\n\nmetastore ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.CatalogKeyWithMetastore(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\nmetastore (str)\ncatalog (str)\n\n\n\n\n\ncatalog ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.UnitySchemaKeyWithMetastore(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nmetastore (str)\ncatalog (str)\nunityschema (str)\n\n\n\n\n\nunityschema ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.CatalogKey(**data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\ncatalog (str)\n\n\n\n\n\ncatalog ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.UnitySchemaKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\ncatalog (str)\nunity_schema (str)\n\n\n\n\n\nunity_schema ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.BigQueryDatasetKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nprojectid (str)\ndatasetid (str)\n\n\n\n\n\ndatasetid ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.FolderKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\nfolder_abs_path (str)\n\n\n\n\n\nfolder_abs_path ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.BucketKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nbucketname (str)\n\n\n\n\n\nbucketname ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.NotebookKey(**data)\nBases\n\ndata (Any)\nnotebookid (int)\nplatform (str)\ninstance (str | None)\n\n\n\n\n\nnotebookid str\n\n\n\ninstance\nstr\n\n\n\n\n\nmodelconfig\n\nentityurn (str)\ndomainurn (str)\n\n\nReturn type\n\nentitytype (str)\nentityurn (str)\nownerurn (str)\n\n\nReturn type\n\nentitytype (str)\nentityurn (str)\ntags (List[str])\n\n\nReturn type\n\nentityurn (str)\nstructuredproperties (Dict[StructuredPropertyUrn, str])\n\n\nReturn type\n\ncontainerkey (TypeVar(KeyType, bound= ContainerKey))\nname (str)\nsubtypes (List[str])\nparentcontainerkey (Optional[ContainerKey])\nextraproperties (Optional[Dict[str, str]])\nstructuredproperties (Optional[Dict[StructuredPropertyUrn, str]])\ndomainurn (Optional[str])\ndescription (Optional[str])\nownerurn (Optional[str])\nexternalurl (Optional[str])\ntags (Optional[List[str]])\nqualifiedname (Optional[str])\ncreated (Optional[int])\nlastmodified (Optional[int])\n\n\nReturn type\n\ncontainerkey (TypeVar(KeyType, bound= ContainerKey))\ndataseturn (str)\n\n\nReturn type\n\ncontainerkey (TypeVar(KeyType, bound= ContainerKey))\nentitytype (str)\nentityurn (str)\n\n\nReturn type\nmce (MetadataChangeEventClass)\n\nReturn type\n\nurn (str)\nembedurl (str)\n\n\nReturn type\n\nentitytype (str)\naspecttype (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type:\nbool\n\n\n\n\n&quot;}}&gt;"><meta data-rh="true" property="og:description" content="\n\n\nThese classes and methods make it easier to construct MetadataChangeProposals and MetadataChangeEvents.\n\n\nclass datahub.emitter.mcp.MetadataChangeProposalWrapper(entityType=&#x27;ENTITYTYPEUNSET&#x27;, changeType=&#x27;UPSERT&#x27;, entityUrn=None, entityKeyAspect=None, auditHeader=None, aspectName=None, aspect=None, systemMetadata=None, headers=None)\nBases\n\nentityType (str)\nchangeType (Unionstr, ChangeTypeClass])\nentityUrn (Optional[str])\nentityKeyAspect (Optional[Aspect])\nauditHeader (Optional[KafkaAuditHeaderClass])\naspectName (Optional[str])\naspect (Optional[Aspect])\nsystemMetadata (Optional[SystemMetadataClass])\nheaders (Optional[Dict[str, str]])\n\n\n\n\n\nentityType Union[str, ChangeTypeClass] = &#x27;UPSERT&#x27;\n\n\n\nentityUrn Optional[Aspect] = None\n\n\n\nauditHeader Optional[str] = None\n\n\n\naspect Optional[SystemMetadataClass] = None\n\n\n\nheaders\n\nentityUrn (str)\naspects (Sequence[Optional[Aspect]])\n\n\nReturn type\nMetadataChangeProposalClass\n\n\n\n\n\nvalidate()\n\nReturn type\n\ntuples (bool)\nsimplifiedstructure (bool)\n\n\nReturn type\n\nobj (dict)\ntuples (bool)\n\n\nReturn type\nException if the generic aspect is invalid, e.g. contains invalid json.\n\nParameters\nOptional[MetadataChangeProposalWrapper]\n\n\n\n\n\nclassmethod tryfrommcl(mcl)\n\nParameters\nUnion[MetadataChangeProposalWrapper, MetadataChangeProposalClass]\n\n\n\n\n\nclassmethod fromobjrequirewrapper(obj, tuples=False)\n\nParameters\nMetadataChangeProposalWrapper\n\n\n\n\n\nasworkunit(*, treaterrorsaswarnings=False, isprimarysource=True)\n\nParameters\nMetadataWorkUnit\n\n\n\n\nConvenience functions for creating MCEs\n\n\ndatahub.emitter.mcebuilder.setdataseturntolower(value)\n\nParameters\nNone\n\n\n\n\n\nclass datahub.emitter.mcebuilder.OwnerType(value)\nBases\nint\n\n\n\n\n\ndatahub.emitter.mcebuilder.maketsmillis(ts)\n\nParameters\nOptional[int]\n\n\n\n\n\ndatahub.emitter.mcebuilder.parsetsmillis(ts)\n\nParameters\nOptional[datetime]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataplatformurn(platform)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataseturn(platform, name, env=&#x27;PROD&#x27;)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataplatforminstanceurn(platform, instance)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataseturnwithplatforminstance(platform, name, platforminstance, env=&#x27;PROD&#x27;)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeschemafieldurn(parenturn, fieldpath)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.schemafieldurntokey(schemafieldurn)\n\nParameters\nOptional[SchemaFieldKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.dataseturntokey(dataseturn)\n\nParameters\nOptional[DatasetKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.datasetkeytourn(key)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makecontainerurn(guid)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.containerurntokey(guid)\n\nParameters\nOptional[ContainerKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.datahubguid(obj)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeassertionurn(assertionid)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.assertionurntokey(assertionurn)\n\nParameters\nOptional[AssertionKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeuserurn(username)\nMakes a user urn if the input is not a user or group urn already\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makegroupurn(groupname)\nMakes a group urn if the input is not a user or group urn already\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.maketagurn(tag)\nMakes a tag urn if the input is not a tag urn already\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeownerurn(owner, ownertype)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makeownershiptypeurn(type)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.maketermurn(term)\nMakes a term urn if the input is not a term urn already\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataflowurn(orchestrator, flowid, cluster=&#x27;prod&#x27;, platforminstance=None)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedatajoburnwithflow(flowurn, jobid)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedataprocessinstanceurn(dataProcessInstanceId)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedatajoburn(orchestrator, flowid, jobid, cluster=&#x27;prod&#x27;, platforminstance=None)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedashboardurn(platform, name, platforminstance=None)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.dashboardurntokey(dashboardurn)\n\nParameters\nOptional[DashboardKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makecharturn(platform, name, platforminstance=None)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.charturntokey(charturn)\n\nParameters\nOptional[ChartKeyClass]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makedomainurn(domain)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlprimarykeyurn(featuretablename, primarykeyname)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlfeatureurn(featuretablename, featurename)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlfeaturetableurn(platform, featuretablename)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlmodelurn(platform, modelname, env)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlmodeldeploymenturn(platform, deploymentname, env)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.makemlmodelgroupurn(platform, groupname, env)\n\nParameters\nstr\n\n\n\n\n\ndatahub.emitter.mcebuilder.validateownershiptype(ownershiptype)\n\nParameters\nTuple[str, Optional[str]]\n\n\n\n\n\ndatahub.emitter.mcebuilder.makelineagemce(upstreamurns, downstreamurn, lineagetype=&#x27;TRANSFORMED&#x27;)\nNote\n\nupstreamurns (List[str])\ndownstreamurn (str)\nlineagetype (str)\n\n\nReturn type\n\nSnapshotType (Type[DictWrapper])\nAspectType (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\nAspectType (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\nAspectType (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\nAspectType (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\naspecttype (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type\n\nmce (MetadataChangeEventClass)\ndefault (TypeVar(Aspect, bound= Aspect))\n\n\nReturn type\ntags (List[str])\n\nReturn type\n\nownerurns (List[str])\nsourcetype (Union[str, OwnershipSourceTypeClass, None])\nownertype (Union[str, OwnershipTypeClass])\n\n\nReturn type\ntermurns (List[str])\n\nReturn type\n\nmce (MetadataChangeEventClass)\naspect (Optional[TypeVar(Aspect, bound= Aspect)])\naspecttype (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type BaseModel\n\nParameters\nDict[str, str]\n\n\n\n\n\nguid()\n\nReturn type ClassVar[ConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.ContainerKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\n\n\n\n\n\nplatform Optionalstr]\n\n\n\nenv bool\n\n\n\nguiddict()\n\nReturn type\nDict[str, str]\n\n\n\n\n\nasurntyped()\n\nReturn type\nstr\n\n\n\n\n\nparentkey()\n\nReturn type ClassVar[ConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\ndatahub.emitter.mcpbuilder.PlatformKey\nalias of ContainerKey\n\n\n\nclass datahub.emitter.mcpbuilder.NamespaceKey(**data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nnamespace (str)\n\n\n\n\n\nnamespace ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.DatabaseKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\ndatabase (str)\n\n\n\n\n\ndatabase ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.SchemaKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\ndatabase (str)\nschema (str)\n\n\n\n\n\ndbschema ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.ProjectIdKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\nproject_id (str)\n\n\n\n\n\nproject_id ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.ExperimentKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nid (str)\n\n\n\n\n\nid ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.MetastoreKey(**data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nmetastore (str)\n\n\n\n\n\nmetastore ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.CatalogKeyWithMetastore(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\nmetastore (str)\ncatalog (str)\n\n\n\n\n\ncatalog ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.UnitySchemaKeyWithMetastore(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nmetastore (str)\ncatalog (str)\nunityschema (str)\n\n\n\n\n\nunityschema ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.CatalogKey(**data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\ncatalog (str)\n\n\n\n\n\ncatalog ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.UnitySchemaKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\ncatalog (str)\nunity_schema (str)\n\n\n\n\n\nunity_schema ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.BigQueryDatasetKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nprojectid (str)\ndatasetid (str)\n\n\n\n\n\ndatasetid ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.FolderKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompat_env_as_instance (bool)\nfolder_abs_path (str)\n\n\n\n\n\nfolder_abs_path ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcp_builder.BucketKey(data)\nBases\n\ndata (Any)\nplatform (str)\ninstance (str | None)\nenv (str | None)\nbackcompatenvasinstance (bool)\nbucketname (str)\n\n\n\n\n\nbucketname ClassVarConfigDict] = {}\nConfiguration for the model, should be a dictionary conforming to [ConfigDict.\n\n\n\n\nclass datahub.emitter.mcpbuilder.NotebookKey(**data)\nBases\n\ndata (Any)\nnotebookid (int)\nplatform (str)\ninstance (str | None)\n\n\n\n\n\nnotebookid str\n\n\n\ninstance\nstr\n\n\n\n\n\nmodelconfig\n\nentityurn (str)\ndomainurn (str)\n\n\nReturn type\n\nentitytype (str)\nentityurn (str)\nownerurn (str)\n\n\nReturn type\n\nentitytype (str)\nentityurn (str)\ntags (List[str])\n\n\nReturn type\n\nentityurn (str)\nstructuredproperties (Dict[StructuredPropertyUrn, str])\n\n\nReturn type\n\ncontainerkey (TypeVar(KeyType, bound= ContainerKey))\nname (str)\nsubtypes (List[str])\nparentcontainerkey (Optional[ContainerKey])\nextraproperties (Optional[Dict[str, str]])\nstructuredproperties (Optional[Dict[StructuredPropertyUrn, str]])\ndomainurn (Optional[str])\ndescription (Optional[str])\nownerurn (Optional[str])\nexternalurl (Optional[str])\ntags (Optional[List[str]])\nqualifiedname (Optional[str])\ncreated (Optional[int])\nlastmodified (Optional[int])\n\n\nReturn type\n\ncontainerkey (TypeVar(KeyType, bound= ContainerKey))\ndataseturn (str)\n\n\nReturn type\n\ncontainerkey (TypeVar(KeyType, bound= ContainerKey))\nentitytype (str)\nentityurn (str)\n\n\nReturn type\nmce (MetadataChangeEventClass)\n\nReturn type\n\nurn (str)\nembedurl (str)\n\n\nReturn type\n\nentitytype (str)\naspecttype (Type[TypeVar(Aspect, bound= Aspect)])\n\n\nReturn type:\nbool\n\n\n\n\n&quot;}}&gt;"><link data-rh="true" rel="icon" href="/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://docs.datahub.com/docs/1.1.0/python-sdk/builder"><link data-rh="true" rel="alternate" href="https://docs.datahub.com/docs/1.1.0/python-sdk/builder" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.datahub.com/docs/1.1.0/python-sdk/builder" hreflang="x-default"><link data-rh="true" rel="preconnect" href="https://RK0UG797F3-dsn.algolia.net" crossorigin="anonymous"><link rel="alternate" type="application/rss+xml" href="/learn/rss.xml" title="DataHub RSS Feed">
<link rel="alternate" type="application/atom+xml" href="/learn/atom.xml" title="DataHub Atom Feed">
<link rel="preconnect" href="https://www.google-analytics.com">
<link rel="preconnect" href="https://www.googletagmanager.com">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-PKGVLETT4C"></script>
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-PKGVLETT4C",{})</script>
<link rel="preconnect" href="https://www.googletagmanager.com">
<script>window.dataLayer=window.dataLayer||[]</script>
<script>!function(e,t,a,n,g){e[n]=e[n]||[],e[n].push({"gtm.start":(new Date).getTime(),event:"gtm.js"});var m=t.getElementsByTagName(a)[0],r=t.createElement(a);r.async=!0,r.src="https://www.googletagmanager.com/gtm.js?id=GTM-5M8T9HNN",m.parentNode.insertBefore(r,m)}(window,document,"script","dataLayer")</script>
<link rel="search" type="application/opensearchdescription+xml" title="DataHub" href="/opensearch.xml">
<meta httpequiv="Content-Security-Policy" content="frame-ancestors &#39;self&#39; https://*.acryl.io https://acryldata.io http://localhost:*">
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;700&display=swap">
<script src="https://tools.luckyorange.com/core/lo.js?site-id=28ea8a38" async defer="defer"></script>
<script src="/scripts/rb2b.js" async defer="defer"></script>
<script src="https://app.revenuehero.io/scheduler.min.js"></script>
<script src="https://tag.clearbitscripts.com/v1/pk_2e321cabe30432a5c44c0424781aa35f/tags.js" referrerpolicy="strict-origin-when-cross-origin"></script>
<script src="/scripts/reo.js"></script>
<script id="runllm-widget-script" type="module" src="https://widget.runllm.com" crossorigin="true" runllm-name="DataHub" runllm-assistant-id="81" runllm-position="BOTTOM_RIGHT" runllm-keyboard-shortcut="Mod+j" runllm-preset="docusaurus" runllm-theme-color="#1890FF" runllm-brand-logo="https://docs.datahub.com/img/datahub-logo-color-mark.svg" runllm-community-url="https://datahub.com/slack" runllm-community-type="slack" runllm-disable-ask-a-person="true" async></script><link rel="stylesheet" href="/assets/css/styles.d8fe2eb8.css">
<link rel="preload" href="/assets/js/runtime~main.6a0c26ba.js" as="script">
<link rel="preload" href="/assets/js/main.ea5b2459.js" as="script">
</head>
<body class="navigation-with-keyboard">
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5M8T9HNN" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}return t}()||function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}(),document.documentElement.setAttribute("data-announcement-bar-initially-dismissed",function(){try{return"true"===localStorage.getItem("docusaurus.announcement.dismiss")}catch(t){}return!1}())</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><div class="announcementBar_mb4j" style="background-color:transparent;color:#ffffff" role="banner"><div class="content_knG7 announcementBarContent_xLdY"><div class="shimmer-banner"><p>DataHub Secures $35 Million Series B</p><a href="https://datahub.com/news/series-b-announcement/" target="_blank" class="button"><div>Read the announcement<span></span></div></a></div></div></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a href="https://datahub.com" target="_blank" rel="noopener noreferrer" class="navbar__brand"><div class="navbar__logo"><img src="/img/datahub-logo-color-light-horizontal.svg" alt="DataHub Logo" class="themedImage_ToTc themedImage--light_HNdA"><img src="/img/datahub-logo-color-dark-horizontal.svg" alt="DataHub Logo" class="themedImage_ToTc themedImage--dark_i4oU"></div></a><div class="navbar__item dropdown dropdown--hoverable"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link versionNavItem_cbn8">1.1.0</a><ul class="dropdown__menu"><li><a class="dropdown__link" href="/docs/features">Next</a></li><li><a aria-current="page" class="dropdown__link dropdown__link--active" href="/docs/1.1.0/python-sdk/builder">1.1.0</a></li><li><hr class="dropdown-separator" style="margin: 0.4rem;"></li><li><div class="dropdown__link"><b>Archived versions</b></div></li><li>
<a class="dropdown__link" href="https://docs-website-t9sv4w3gr-acryldata.vercel.app/docs/features">1.0.0
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li><li>
<a class="dropdown__link" href="https://docs-website-t9sv4w3gr-acryldata.vercel.app/docs/0.15.0/features">0.15.0
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li><li>
<a class="dropdown__link" href="https://docs-website-8jkm4uler-acryldata.vercel.app/docs/0.14.1/features">0.14.1
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li><li>
<a class="dropdown__link" href="https://docs-website-eue2qafvn-acryldata.vercel.app/docs/features">0.14.0
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li><li>
<a class="dropdown__link" href="https://docs-website-psat3nzgi-acryldata.vercel.app/docs/features">0.13.1
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li><li>
<a class="dropdown__link" href="https://docs-website-lzxh86531-acryldata.vercel.app/docs/features">0.13.0
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li><li>
<a class="dropdown__link" href="https://docs-website-2uuxmgza2-acryldata.vercel.app/docs/features">0.12.1
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li><li>
<a class="dropdown__link" href="https://docs-website-irpoe2osc-acryldata.vercel.app/docs/features">0.11.0
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li><li>
<a class="dropdown__link" href="https://docs-website-1gv2yzn9d-acryldata.vercel.app/docs/features">0.10.5
<svg width="12" height="12" aria-hidden="true" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg>
</a>
</li></ul></div></div><div class="navbar__items navbar__items--right"><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/docs">Docs</a><a class="navbar__item navbar__link" href="/integrations">Integrations</a><div class="navbar__item dropdown dropdown--hoverable"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">Learn</a><ul class="dropdown__menu dropdown__menu_Z8FC"><div class="wrapper_kp81"><div><a href="https://datahub.com/weekly-demo" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-join-slack.png" alt="Weekly Demo"></div><div class="title_c7DP">Weekly Demo</div></a></div><div><a href="https://datahub.com/use-cases" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-forum.png" alt="Use Cases"></div><div class="title_c7DP">Use Cases</div></a></div><div><a href="httpps://datahub.com/adoption-stories" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-events.png" alt="Adoption Stories"></div><div class="title_c7DP">Adoption Stories</div></a></div><div><a href="https://medium.com/datahub-project" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-champions.png" alt="Blog"></div><div class="title_c7DP">Blog</div></a></div><div><a href="https://www.youtube.com/channel/UC3qFQC5IiwR5fvWEqi_tJ5w" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-share-your-journey.png" alt="Youtube"></div><div class="title_c7DP">Youtube</div></a></div></div></ul></div><div class="navbar__item dropdown dropdown--hoverable"><a href="#" aria-haspopup="true" aria-expanded="false" role="button" class="navbar__link">Community</a><ul class="dropdown__menu dropdown__menu_Z8FC"><div class="wrapper_kp81"><div><a href="https://datahub.com/slack/" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-join-slack.png" alt="Join Slack"></div><div class="title_c7DP">Join Slack</div></a></div><div><a href="https://datahub.com/events" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-events.png" alt="Events"></div><div class="title_c7DP">Events</div></a></div><div><a href="https://datahub.com/champions/" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-champions.png" alt="Champions"></div><div class="title_c7DP">Champions</div></a></div><div><a href="https://datahub.com/share-your-journey/" target="_blank" rel="noopener noreferrer" class="card_BUD7"><div class="icon_BgHd"><img src="/img/icon-share-your-journey.png" alt="Share Your Journey"></div><div class="title_c7DP">Share Your Journey</div></a></div></div></ul></div><a href="https://datahub.com/products/why-datahub-cloud/" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">
<style>
.cloud-cta {
color: var(--ifm-menu-color-active);
font-weight: 600;
background: linear-gradient(40deg, var(--ifm-menu-color-active), var(--ifm-menu-color-active));
background-size: 200% 100%;
-webkit-background-clip: text;
background-clip: text;
transition: background-image 0.3s ease;
}
.cloud-cta:hover {
color: transparent;
background: linear-gradient(40deg, var(--ifm-menu-color-active), #ff1493);
background-size: 200% 100%;
-webkit-background-clip: text;
background-clip: text;
animation: gradientShift 3s ease infinite;
}
@keyframes gradientShift {
0%, 100% { background-position: 0% 50%; }
50% { background-position: 100% 50%; }
}
</style>
<div class="cloud-cta">Get Cloud</div>
</a><a href="https://datahub.com/slack?utm_source=docs&amp;utm_medium=header&amp;utm_campaign=docs_header" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">
<style>
.slack-logo:hover {
opacity: 0.8;
}
</style>
<img class="slack-logo" src="https://upload.wikimedia.org/wikipedia/commons/d/d5/Slack_icon_2019.svg" , alt="slack" , height="20px" style="margin: 10px 0 0 0;">
</a><div class="searchBox_ZlJk"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20" aria-hidden="true"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0 docsWrapper_BCFX"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docPage__5DB"><aside class="theme-doc-sidebar-container docSidebarContainer_b6E3"><div class="sidebarViewport_Xe31"><div class="sidebar_njMd"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG menuWithAnnouncementBar_GW3s"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menuHtmlItem_M9Kj menu__list-item"><div>Getting Started</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/features">What Is DataHub?</a><button aria-label="Toggle the collapsible sidebar category &#x27;What Is DataHub?&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/category/features">Features</a><button aria-label="Toggle the collapsible sidebar category &#x27;Features&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/managed-datahub/managed-datahub-overview">DataHub Cloud</a><button aria-label="Toggle the collapsible sidebar category &#x27;DataHub Cloud&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menuHtmlItem_M9Kj menu__list-item"><div>Integrations</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/metadata-ingestion">Overview</a><button aria-label="Toggle the collapsible sidebar category &#x27;Overview&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/metadata-ingestion/cli-ingestion">Quickstart Guides</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/metadata-ingestion/source_overview">Sources</a><button aria-label="Toggle the collapsible sidebar category &#x27;Sources&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/metadata-ingestion/schedule_docs/intro">Advanced Guides</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menuHtmlItem_M9Kj menu__list-item"><div>API & SDKs</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/metadata-modeling/metadata-model">DataHub&#x27;s Open Metadata Standard</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/docs/1.1.0/what-is-datahub/datahub-concepts">Concepts</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/metadata-standards">Metadata Standards</a><button aria-label="Toggle the collapsible sidebar category &#x27;Metadata Standards&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/docs/1.1.0/api/datahub-apis">APIs</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/api/graphql/overview">API</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" aria-expanded="true" href="/docs/1.1.0/metadata-ingestion/as-a-library">Python SDK</a></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.1.0/metadata-ingestion/as-a-library">Python Emitter</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" aria-expanded="true" tabindex="0" href="/docs/1.1.0/python-sdk/builder">Python SDK Reference</a></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/docs/1.1.0/python-sdk/builder">Builder</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.1.0/python-sdk/clients">Client</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.1.0/python-sdk/models">Models</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/docs/1.1.0/python-sdk/urns">URNs</a></li></ul></li></ul></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/docs/1.1.0/metadata-integration/java/as-a-library">Java SDK</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/cli">DataHub CLI</a><button aria-label="Toggle the collapsible sidebar category &#x27;DataHub CLI&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/act-on-metadata">DataHub Actions</a><button aria-label="Toggle the collapsible sidebar category &#x27;DataHub Actions&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/api/tutorials/datasets">API &amp; SDK Guides</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menuHtmlItem_M9Kj menu__list-item"><div>Admin</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/authentication">Authentication</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/authorization">Authorization</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/how/delete-metadata">Advanced Guides</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menuHtmlItem_M9Kj menu__list-item"><div>Deployment</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/category/deployment-guides">Deployment Guides</a><button aria-label="Toggle the collapsible sidebar category &#x27;Deployment Guides&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/deploy/confluent-cloud">Advanced Guides</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menuHtmlItem_M9Kj menu__list-item"><div>Developers</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/architecture/architecture">Architecture</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/developers">Developing on DataHub</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/advanced/mcp-mcl">Advanced Guides</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menuHtmlItem_M9Kj menu__list-item"><div>Community</div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/docs/1.1.0/category/community">Community</a><button aria-label="Toggle the collapsible sidebar category &#x27;Community&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" aria-expanded="false" href="/docs/1.1.0/releases">Release History</a></div></li></ul></nav></div></div></aside><main class="docMainContainer_gTbr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="theme-doc-version-banner alert alert--warning margin-bottom--md" role="alert"><div>This is documentation for <!-- -->DataHub<!-- --> <b>1.1.0</b>, which is no longer actively maintained.</div><div class="margin-top--md">For up-to-date documentation, see the <b><a href="/docs/features">latest version</a></b> (<!-- -->Next<!-- -->).</div></div><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">Python SDK</span><meta itemprop="position" content="1"></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">Python SDK Reference</span><meta itemprop="position" content="2"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">Builder</span><meta itemprop="position" content="3"></li></ul></nav><span class="theme-doc-version-badge badge badge--secondary">Version: 1.1.0</span><div class="theme-doc-markdown markdown"><header><h1>Builder</h1></header><div><article class="bd-article" role="main">
<section id="builder">
<p>These classes and methods make it easier to construct MetadataChangeProposals and MetadataChangeEvents.</p>
<span class="target" id="module-datahub.emitter.mcp"></span><dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp.</span></span><span class="sig-name descname"><span class="pre">MetadataChangeProposalWrapper</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entityType</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'ENTITY_TYPE_UNSET'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">changeType</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'UPSERT'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">entityUrn</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">entityKeyAspect</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">auditHeader</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">aspectName</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">aspect</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">systemMetadata</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">headers</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entityType</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>changeType</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <a class="reference internal" href="models.html#datahub.metadata.schema_classes.ChangeTypeClass" title="datahub.metadata.schema_classes.ChangeTypeClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">ChangeTypeClass</span></code></a>])</p></li>
<li><p><strong>entityUrn</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>entityKeyAspect</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>])</p></li>
<li><p><strong>auditHeader</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="models.html#datahub.metadata.schema_classes.KafkaAuditHeaderClass" title="datahub.metadata.schema_classes.KafkaAuditHeaderClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">KafkaAuditHeaderClass</span></code></a>])</p></li>
<li><p><strong>aspectName</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>aspect</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>])</p></li>
<li><p><strong>systemMetadata</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="models.html#datahub.metadata.schema_classes.SystemMetadataClass" title="datahub.metadata.schema_classes.SystemMetadataClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">SystemMetadataClass</span></code></a>])</p></li>
<li><p><strong>headers</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">Dict</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]])</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.entityType">
<span class="sig-name descname"><span class="pre">entityType</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'ENTITY_TYPE_UNSET'</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.changeType">
<span class="sig-name descname"><span class="pre">changeType</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code><span class="pre">,</span> <a class="reference internal" href="models.html#datahub.metadata.schema_classes.ChangeTypeClass" title="datahub.metadata.schema_classes.ChangeTypeClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">ChangeTypeClass</span></code></a><span class="pre">]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'UPSERT'</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.entityUrn">
<span class="sig-name descname"><span class="pre">entityUrn</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code><span class="pre">]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.entityKeyAspect">
<span class="sig-name descname"><span class="pre">entityKeyAspect</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code><span class="pre">]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.auditHeader">
<span class="sig-name descname"><span class="pre">auditHeader</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><a class="reference internal" href="models.html#datahub.metadata.schema_classes.KafkaAuditHeaderClass" title="datahub.metadata.schema_classes.KafkaAuditHeaderClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">KafkaAuditHeaderClass</span></code></a><span class="pre">]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.aspectName">
<span class="sig-name descname"><span class="pre">aspectName</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code><span class="pre">]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.aspect">
<span class="sig-name descname"><span class="pre">aspect</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code><span class="pre">]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.systemMetadata">
<span class="sig-name descname"><span class="pre">systemMetadata</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><a class="reference internal" href="models.html#datahub.metadata.schema_classes.SystemMetadataClass" title="datahub.metadata.schema_classes.SystemMetadataClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">SystemMetadataClass</span></code></a><span class="pre">]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.headers">
<span class="sig-name descname"><span class="pre">headers</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">Dict</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code><span class="pre">,</span> <code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code><span class="pre">]]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">None</span></em></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.construct_many">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">construct_many</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entityUrn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">aspects</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entityUrn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>aspects</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Sequence</span></code>[<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>]])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<a class="reference internal" href="#datahub.emitter.mcp.MetadataChangeProposalWrapper" title="datahub.emitter.mcp.MetadataChangeProposalWrapper"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalWrapper</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.make_mcp">
<span class="sig-name descname"><span class="pre">make_mcp</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeProposalClass" title="datahub.metadata.schema_classes.MetadataChangeProposalClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalClass</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.validate">
<span class="sig-name descname"><span class="pre">validate</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.to_obj">
<span class="sig-name descname"><span class="pre">to_obj</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tuples</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">simplified_structure</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>tuples</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code>)</p></li>
<li><p><strong>simplified_structure</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">dict</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.from_obj">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_obj</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tuples</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Attempt to deserialize into an MCPW, but fall back
to a standard MCP if were missing codegend classes for the
entity key or aspect.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>obj</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">dict</span></code>)</p></li>
<li><p><strong>tuples</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code>[<a class="reference internal" href="#datahub.emitter.mcp.MetadataChangeProposalWrapper" title="datahub.emitter.mcp.MetadataChangeProposalWrapper"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalWrapper</span></code></a>, <a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeProposalClass" title="datahub.metadata.schema_classes.MetadataChangeProposalClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalClass</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.try_from_mcpc">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">try_from_mcpc</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mcpc</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Attempts to create a MetadataChangeProposalWrapper from a MetadataChangeProposalClass.
Neatly handles unsupported, expected cases, such as unknown aspect types or non-json content type.</p>
<dl class="field-list simple">
<dt class="field-odd">Raises<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>Exception if the generic aspect is invalid</strong><strong>, </strong><strong>e.g. contains invalid json.</strong></p>
</dd>
<dt class="field-even">Parameters<span class="colon">:</span></dt>
<dd class="field-even"><p><strong>mcpc</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeProposalClass" title="datahub.metadata.schema_classes.MetadataChangeProposalClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalClass</span></code></a>)</p>
</dd>
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="#datahub.emitter.mcp.MetadataChangeProposalWrapper" title="datahub.emitter.mcp.MetadataChangeProposalWrapper"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalWrapper</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.try_from_mcl">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">try_from_mcl</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mcl</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>mcl</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeLogClass" title="datahub.metadata.schema_classes.MetadataChangeLogClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeLogClass</span></code></a>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code>[<a class="reference internal" href="#datahub.emitter.mcp.MetadataChangeProposalWrapper" title="datahub.emitter.mcp.MetadataChangeProposalWrapper"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalWrapper</span></code></a>, <a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeProposalClass" title="datahub.metadata.schema_classes.MetadataChangeProposalClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalClass</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.from_obj_require_wrapper">
<em class="property"><span class="pre">classmethod</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">from_obj_require_wrapper</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tuples</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>obj</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">dict</span></code>)</p></li>
<li><p><strong>tuples</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#datahub.emitter.mcp.MetadataChangeProposalWrapper" title="datahub.emitter.mcp.MetadataChangeProposalWrapper"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalWrapper</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp.MetadataChangeProposalWrapper.as_workunit">
<span class="sig-name descname"><span class="pre">as_workunit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">treat_errors_as_warnings</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">is_primary_source</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>treat_errors_as_warnings</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code>)</p></li>
<li><p><strong>is_primary_source</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataWorkUnit</span></code></p>
</dd>
</dl>
</dd></dl>
</dd></dl>
<span class="target" id="module-datahub.emitter.mce_builder"></span><p>Convenience functions for creating MCEs</p>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.set_dataset_urn_to_lower">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">set_dataset_urn_to_lower</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>value</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">None</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.OwnerType">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">OwnerType</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">value</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">Enum</span></code></p>
<p>An enumeration.</p>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.OwnerType.USER">
<span class="sig-name descname"><span class="pre">USER</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'corpuser'</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.OwnerType.GROUP">
<span class="sig-name descname"><span class="pre">GROUP</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'corpGroup'</span></em></dt>
<dd></dd></dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.get_sys_time">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">get_sys_time</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ts_millis">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ts_millis</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ts</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>ts</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">datetime</span></code>])</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.parse_ts_millis">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">parse_ts_millis</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ts</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>ts</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">float</span></code>])</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">datetime</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_data_platform_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_data_platform_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_dataset_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_dataset_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">env</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'PROD'</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>env</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_dataplatform_instance_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_dataplatform_instance_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">instance</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>instance</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_dataset_urn_with_platform_instance">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_dataset_urn_with_platform_instance</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">platform_instance</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">env</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'PROD'</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>platform_instance</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>env</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_schema_field_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_schema_field_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">parent_urn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">field_path</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>parent_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>field_path</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.schema_field_urn_to_key">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">schema_field_urn_to_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">schema_field_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>schema_field_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="models.html#datahub.metadata.schema_classes.SchemaFieldKeyClass" title="datahub.metadata.schema_classes.SchemaFieldKeyClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">SchemaFieldKeyClass</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.dataset_urn_to_key">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">dataset_urn_to_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dataset_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>dataset_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="models.html#datahub.metadata.schema_classes.DatasetKeyClass" title="datahub.metadata.schema_classes.DatasetKeyClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">DatasetKeyClass</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.dataset_key_to_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">dataset_key_to_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">key</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>key</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.DatasetKeyClass" title="datahub.metadata.schema_classes.DatasetKeyClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">DatasetKeyClass</span></code></a>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_container_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_container_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">guid</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>guid</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <a class="reference internal" href="#datahub.emitter.mcp_builder.DatahubKey" title="datahub.emitter.mcp_builder.DatahubKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">DatahubKey</span></code></a>])</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.container_urn_to_key">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">container_urn_to_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">guid</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>guid</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="models.html#datahub.metadata.schema_classes.ContainerKeyClass" title="datahub.metadata.schema_classes.ContainerKeyClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKeyClass</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.datahub_guid">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">datahub_guid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">obj</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>obj</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">dict</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_assertion_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_assertion_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">assertion_id</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>assertion_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.assertion_urn_to_key">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">assertion_urn_to_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">assertion_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>assertion_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="models.html#datahub.metadata.schema_classes.AssertionKeyClass" title="datahub.metadata.schema_classes.AssertionKeyClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">AssertionKeyClass</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_user_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_user_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">username</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Makes a user urn if the input is not a user or group urn already</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>username</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_group_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_group_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">groupname</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Makes a group urn if the input is not a user or group urn already</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>groupname</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_tag_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_tag_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tag</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Makes a tag urn if the input is not a tag urn already</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>tag</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_owner_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_owner_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">owner</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">owner_type</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>owner</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>owner_type</strong> (<a class="reference internal" href="#datahub.emitter.mce_builder.OwnerType" title="datahub.emitter.mce_builder.OwnerType"><code class="xref py py-class docutils literal notranslate"><span class="pre">OwnerType</span></code></a>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ownership_type_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ownership_type_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">type</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_term_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_term_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">term</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Makes a term urn if the input is not a term urn already</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>term</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_data_flow_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_data_flow_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">orchestrator</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">flow_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cluster</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'prod'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">platform_instance</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>orchestrator</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>flow_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>cluster</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>platform_instance</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_data_job_urn_with_flow">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_data_job_urn_with_flow</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">flow_urn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">job_id</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>flow_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>job_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_data_process_instance_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_data_process_instance_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dataProcessInstanceId</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>dataProcessInstanceId</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_data_job_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_data_job_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">orchestrator</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">flow_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">job_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cluster</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'prod'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">platform_instance</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>orchestrator</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>flow_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>job_id</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>cluster</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>platform_instance</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_dashboard_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_dashboard_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">platform_instance</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>platform_instance</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.dashboard_urn_to_key">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">dashboard_urn_to_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dashboard_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>dashboard_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="models.html#datahub.metadata.schema_classes.DashboardKeyClass" title="datahub.metadata.schema_classes.DashboardKeyClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">DashboardKeyClass</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_chart_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_chart_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">platform_instance</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>platform_instance</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.chart_urn_to_key">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">chart_urn_to_key</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">chart_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>chart_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="models.html#datahub.metadata.schema_classes.ChartKeyClass" title="datahub.metadata.schema_classes.ChartKeyClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">ChartKeyClass</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_domain_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_domain_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">domain</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>domain</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ml_primary_key_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ml_primary_key_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">feature_table_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">primary_key_name</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>feature_table_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>primary_key_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ml_feature_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ml_feature_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">feature_table_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">feature_name</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>feature_table_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>feature_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ml_feature_table_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ml_feature_table_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">feature_table_name</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>feature_table_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ml_model_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ml_model_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">model_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">env</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>model_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>env</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ml_model_deployment_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ml_model_deployment_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">deployment_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">env</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>deployment_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>env</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ml_model_group_urn">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ml_model_group_urn</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">platform</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">group_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">env</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>platform</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>group_name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>env</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.validate_ownership_type">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">validate_ownership_type</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">ownership_type</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>ownership_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Tuple</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_lineage_mce">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_lineage_mce</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">upstream_urns</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">downstream_urn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lineage_type</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'TRANSFORMED'</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Note: this function only supports lineage for dataset aspects. It will not
update lineage for any other aspect types.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>upstream_urns</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>downstream_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>lineage_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeEventClass" title="datahub.metadata.schema_classes.MetadataChangeEventClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeEventClass</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.can_add_aspect_to_snapshot">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">can_add_aspect_to_snapshot</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">SnapshotType</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">AspectType</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>SnapshotType</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Type</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">DictWrapper</span></code>])</p></li>
<li><p><strong>AspectType</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Type</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.can_add_aspect">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">can_add_aspect</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mce</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">AspectType</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mce</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeEventClass" title="datahub.metadata.schema_classes.MetadataChangeEventClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeEventClass</span></code></a>)</p></li>
<li><p><strong>AspectType</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Type</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.assert_can_add_aspect">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">assert_can_add_aspect</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mce</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">AspectType</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mce</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeEventClass" title="datahub.metadata.schema_classes.MetadataChangeEventClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeEventClass</span></code></a>)</p></li>
<li><p><strong>AspectType</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Type</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">None</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.get_aspect_if_available">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">get_aspect_if_available</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mce</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">AspectType</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mce</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeEventClass" title="datahub.metadata.schema_classes.MetadataChangeEventClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeEventClass</span></code></a>)</p></li>
<li><p><strong>AspectType</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Type</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.remove_aspect_if_available">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">remove_aspect_if_available</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mce</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">aspect_type</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mce</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeEventClass" title="datahub.metadata.schema_classes.MetadataChangeEventClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeEventClass</span></code></a>)</p></li>
<li><p><strong>aspect_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Type</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.get_or_add_aspect">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">get_or_add_aspect</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mce</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">default</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mce</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeEventClass" title="datahub.metadata.schema_classes.MetadataChangeEventClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeEventClass</span></code></a>)</p></li>
<li><p><strong>default</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>))</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_global_tag_aspect_with_tag_list">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_global_tag_aspect_with_tag_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">tags</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>tags</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="models.html#datahub.metadata.schema_classes.GlobalTagsClass" title="datahub.metadata.schema_classes.GlobalTagsClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">GlobalTagsClass</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_ownership_aspect_from_urn_list">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_ownership_aspect_from_urn_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">owner_urns</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">source_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">owner_type</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'DATAOWNER'</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>owner_urns</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>source_type</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <a class="reference internal" href="models.html#datahub.metadata.schema_classes.OwnershipSourceTypeClass" title="datahub.metadata.schema_classes.OwnershipSourceTypeClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">OwnershipSourceTypeClass</span></code></a>, <code class="xref py py-obj docutils literal notranslate"><span class="pre">None</span></code>])</p></li>
<li><p><strong>owner_type</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Union</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <a class="reference internal" href="models.html#datahub.metadata.schema_classes.OwnershipTypeClass" title="datahub.metadata.schema_classes.OwnershipTypeClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">OwnershipTypeClass</span></code></a>])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="models.html#datahub.metadata.schema_classes.OwnershipClass" title="datahub.metadata.schema_classes.OwnershipClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">OwnershipClass</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.make_glossary_terms_aspect_from_urn_list">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">make_glossary_terms_aspect_from_urn_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">term_urns</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>term_urns</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="models.html#datahub.metadata.schema_classes.GlossaryTermsClass" title="datahub.metadata.schema_classes.GlossaryTermsClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">GlossaryTermsClass</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mce_builder.set_aspect">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mce_builder.</span></span><span class="sig-name descname"><span class="pre">set_aspect</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mce</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">aspect</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">aspect_type</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Sets the aspect to the provided aspect, overwriting any previous aspect value that might have existed before.
If passed in aspect is None, then the existing aspect value will be removed</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>mce</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeEventClass" title="datahub.metadata.schema_classes.MetadataChangeEventClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeEventClass</span></code></a>)</p></li>
<li><p><strong>aspect</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)])</p></li>
<li><p><strong>aspect_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Type</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-obj docutils literal notranslate"><span class="pre">None</span></code></p>
</dd>
</dl>
</dd></dl>
<span class="target" id="module-datahub.emitter.mcp_builder"></span><dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.DatahubKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">DatahubKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">BaseModel</span></code></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p>
</dd>
</dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.DatahubKey.guid_dict">
<span class="sig-name descname"><span class="pre">guid_dict</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Dict</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.DatahubKey.guid">
<span class="sig-name descname"><span class="pre">guid</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.DatahubKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">ContainerKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.DatahubKey" title="datahub.emitter.mcp_builder.DatahubKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">DatahubKey</span></code></a></p>
<p>Base class for container guid keys. Most users should use one of the subclasses instead.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.platform">
<span class="sig-name descname"><span class="pre">platform</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.instance">
<span class="sig-name descname"><span class="pre">instance</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code><span class="pre">]</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.env">
<span class="sig-name descname"><span class="pre">env</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code><span class="pre">]</span></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.backcompat_env_as_instance">
<span class="sig-name descname"><span class="pre">backcompat_env_as_instance</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></em></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.guid_dict">
<span class="sig-name descname"><span class="pre">guid_dict</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Dict</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.property_dict">
<span class="sig-name descname"><span class="pre">property_dict</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Dict</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.as_urn_typed">
<span class="sig-name descname"><span class="pre">as_urn_typed</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="urns.html#datahub.metadata.urns.ContainerUrn" title="datahub.metadata.urns.ContainerUrn"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerUrn</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.as_urn">
<span class="sig-name descname"><span class="pre">as_urn</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.parent_key">
<span class="sig-name descname"><span class="pre">parent_key</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ContainerKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.PlatformKey">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">PlatformKey</span></span></dt>
<dd><p>alias of <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NamespaceKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">NamespaceKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
<p>For Iceberg namespaces (databases/schemas)</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>namespace</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NamespaceKey.namespace">
<span class="sig-name descname"><span class="pre">namespace</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NamespaceKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.DatabaseKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">DatabaseKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>database</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.DatabaseKey.database">
<span class="sig-name descname"><span class="pre">database</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.DatabaseKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.SchemaKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">SchemaKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.DatabaseKey" title="datahub.emitter.mcp_builder.DatabaseKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">DatabaseKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>database</strong> (<em>str</em>)</p></li>
<li><p><strong>schema</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.SchemaKey.db_schema">
<span class="sig-name descname"><span class="pre">db_schema</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.SchemaKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ProjectIdKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">ProjectIdKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>project_id</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ProjectIdKey.project_id">
<span class="sig-name descname"><span class="pre">project_id</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ProjectIdKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ExperimentKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">ExperimentKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>id</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ExperimentKey.id">
<span class="sig-name descname"><span class="pre">id</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.ExperimentKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.MetastoreKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">MetastoreKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>metastore</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.MetastoreKey.metastore">
<span class="sig-name descname"><span class="pre">metastore</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.MetastoreKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.CatalogKeyWithMetastore">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">CatalogKeyWithMetastore</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.MetastoreKey" title="datahub.emitter.mcp_builder.MetastoreKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetastoreKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>metastore</strong> (<em>str</em>)</p></li>
<li><p><strong>catalog</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.CatalogKeyWithMetastore.catalog">
<span class="sig-name descname"><span class="pre">catalog</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.CatalogKeyWithMetastore.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.UnitySchemaKeyWithMetastore">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">UnitySchemaKeyWithMetastore</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.CatalogKeyWithMetastore" title="datahub.emitter.mcp_builder.CatalogKeyWithMetastore"><code class="xref py py-class docutils literal notranslate"><span class="pre">CatalogKeyWithMetastore</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>metastore</strong> (<em>str</em>)</p></li>
<li><p><strong>catalog</strong> (<em>str</em>)</p></li>
<li><p><strong>unity_schema</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.UnitySchemaKeyWithMetastore.unity_schema">
<span class="sig-name descname"><span class="pre">unity_schema</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.UnitySchemaKeyWithMetastore.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.CatalogKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">CatalogKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>catalog</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.CatalogKey.catalog">
<span class="sig-name descname"><span class="pre">catalog</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.CatalogKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.UnitySchemaKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">UnitySchemaKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.CatalogKey" title="datahub.emitter.mcp_builder.CatalogKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">CatalogKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>catalog</strong> (<em>str</em>)</p></li>
<li><p><strong>unity_schema</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.UnitySchemaKey.unity_schema">
<span class="sig-name descname"><span class="pre">unity_schema</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.UnitySchemaKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.BigQueryDatasetKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">BigQueryDatasetKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ProjectIdKey" title="datahub.emitter.mcp_builder.ProjectIdKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ProjectIdKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>project_id</strong> (<em>str</em>)</p></li>
<li><p><strong>dataset_id</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.BigQueryDatasetKey.dataset_id">
<span class="sig-name descname"><span class="pre">dataset_id</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.BigQueryDatasetKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.FolderKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">FolderKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>folder_abs_path</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.FolderKey.folder_abs_path">
<span class="sig-name descname"><span class="pre">folder_abs_path</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.FolderKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.BucketKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">BucketKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>env</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
<li><p><strong>backcompat_env_as_instance</strong> (<em>bool</em>)</p></li>
<li><p><strong>bucket_name</strong> (<em>str</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.BucketKey.bucket_name">
<span class="sig-name descname"><span class="pre">bucket_name</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.BucketKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py class">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NotebookKey">
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">NotebookKey</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">data</span></span></em><span class="sig-paren">)</span></dt>
<dd><p>Bases: <a class="reference internal" href="#datahub.emitter.mcp_builder.DatahubKey" title="datahub.emitter.mcp_builder.DatahubKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">DatahubKey</span></code></a></p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>data</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Any</span></code>)</p></li>
<li><p><strong>notebook_id</strong> (<em>int</em>)</p></li>
<li><p><strong>platform</strong> (<em>str</em>)</p></li>
<li><p><strong>instance</strong> (<em>str</em><em> | </em><em>None</em>)</p></li>
</ul>
</dd>
</dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NotebookKey.notebook_id">
<span class="sig-name descname"><span class="pre">notebook_id</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NotebookKey.platform">
<span class="sig-name descname"><span class="pre">platform</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></em></dt>
<dd></dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NotebookKey.instance">
<span class="sig-name descname"><span class="pre">instance</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code><span class="pre">[</span><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code><span class="pre">]</span></em></dt>
<dd></dd></dl>
<dl class="py method">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NotebookKey.as_urn">
<span class="sig-name descname"><span class="pre">as_urn</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Return type<span class="colon">:</span></dt>
<dd class="field-odd"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code></p>
</dd>
</dl>
</dd></dl>
<dl class="py attribute">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.NotebookKey.model_config">
<span class="sig-name descname"><span class="pre">model_config</span></span><em class="property"><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="pre">ClassVar[ConfigDict]</span></em><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">{}</span></em></dt>
<dd><p>Configuration for the model, should be a dictionary conforming to [<cite>ConfigDict</cite>][pydantic.config.ConfigDict].</p>
</dd></dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.add_domain_to_entity_wu">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">add_domain_to_entity_wu</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entity_urn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">domain_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entity_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>domain_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Iterable</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataWorkUnit</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.add_owner_to_entity_wu">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">add_owner_to_entity_wu</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entity_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">entity_urn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">owner_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entity_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>entity_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>owner_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Iterable</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataWorkUnit</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.add_tags_to_entity_wu">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">add_tags_to_entity_wu</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entity_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">entity_urn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tags</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entity_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>entity_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>tags</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Iterable</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataWorkUnit</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.add_structured_properties_to_entity_wu">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">add_structured_properties_to_entity_wu</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entity_urn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">structured_properties</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entity_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>structured_properties</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Dict</span></code>[<a class="reference internal" href="urns.html#datahub.metadata.urns.StructuredPropertyUrn" title="datahub.metadata.urns.StructuredPropertyUrn"><code class="xref py py-class docutils literal notranslate"><span class="pre">StructuredPropertyUrn</span></code></a>, <code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Iterable</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataWorkUnit</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.gen_containers">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">gen_containers</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">container_key</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sub_types</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">parent_container_key</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">extra_properties</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">structured_properties</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">domain_urn</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">description</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">owner_urn</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">external_url</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tags</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">qualified_name</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">created</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">last_modified</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>container_key</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">KeyType</span></code>, bound= <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a>))</p></li>
<li><p><strong>name</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>sub_types</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>parent_container_key</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a>])</p></li>
<li><p><strong>extra_properties</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">Dict</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>, <code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]])</p></li>
<li><p><strong>structured_properties</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">Dict</span></code>[<a class="reference internal" href="urns.html#datahub.metadata.urns.StructuredPropertyUrn" title="datahub.metadata.urns.StructuredPropertyUrn"><code class="xref py py-class docutils literal notranslate"><span class="pre">StructuredPropertyUrn</span></code></a>, <code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]])</p></li>
<li><p><strong>domain_urn</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>description</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>owner_urn</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>external_url</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>tags</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">List</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>]])</p></li>
<li><p><strong>qualified_name</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>])</p></li>
<li><p><strong>created</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code>])</p></li>
<li><p><strong>last_modified</strong> (<code class="xref py py-data docutils literal notranslate"><span class="pre">Optional</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">int</span></code>])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Iterable</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataWorkUnit</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.add_dataset_to_container">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">add_dataset_to_container</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">container_key</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">dataset_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>container_key</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">KeyType</span></code>, bound= <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a>))</p></li>
<li><p><strong>dataset_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Iterable</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataWorkUnit</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.add_entity_to_container">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">add_entity_to_container</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">container_key</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">entity_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">entity_urn</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>container_key</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">KeyType</span></code>, bound= <a class="reference internal" href="#datahub.emitter.mcp_builder.ContainerKey" title="datahub.emitter.mcp_builder.ContainerKey"><code class="xref py py-class docutils literal notranslate"><span class="pre">ContainerKey</span></code></a>))</p></li>
<li><p><strong>entity_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>entity_urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Iterable</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataWorkUnit</span></code>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.mcps_from_mce">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">mcps_from_mce</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mce</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>mce</strong> (<a class="reference internal" href="models.html#datahub.metadata.schema_classes.MetadataChangeEventClass" title="datahub.metadata.schema_classes.MetadataChangeEventClass"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeEventClass</span></code></a>)</p>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">Iterable</span></code>[<a class="reference internal" href="#datahub.emitter.mcp.MetadataChangeProposalWrapper" title="datahub.emitter.mcp.MetadataChangeProposalWrapper"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalWrapper</span></code></a>]</p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.create_embed_mcp">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">create_embed_mcp</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">urn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">embed_url</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>urn</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>embed_url</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#datahub.emitter.mcp.MetadataChangeProposalWrapper" title="datahub.emitter.mcp.MetadataChangeProposalWrapper"><code class="xref py py-class docutils literal notranslate"><span class="pre">MetadataChangeProposalWrapper</span></code></a></p>
</dd>
</dl>
</dd></dl>
<dl class="py function">
<dt class="sig sig-object py" id="datahub.emitter.mcp_builder.entity_supports_aspect">
<span class="sig-prename descclassname"><span class="pre">datahub.emitter.mcp_builder.</span></span><span class="sig-name descname"><span class="pre">entity_supports_aspect</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">entity_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">aspect_type</span></span></em><span class="sig-paren">)</span></dt>
<dd><dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><ul class="simple">
<li><p><strong>entity_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">str</span></code>)</p></li>
<li><p><strong>aspect_type</strong> (<code class="xref py py-class docutils literal notranslate"><span class="pre">Type</span></code>[<code class="xref py py-class docutils literal notranslate"><span class="pre">TypeVar</span></code>(<code class="docutils literal notranslate"><span class="pre">Aspect</span></code>, bound= <code class="xref py py-class docutils literal notranslate"><span class="pre">_Aspect</span></code>)])</p></li>
</ul>
</dd>
<dt class="field-even">Return type<span class="colon">:</span></dt>
<dd class="field-even"><p><code class="xref py py-class docutils literal notranslate"><span class="pre">bool</span></code></p>
</dd>
</dl>
</dd></dl>
</section>
</article></div></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="slackUtm_uoBr"><div class="slackUtm_uoBr"><hr>Need more help? Join the conversation in <a href="https://datahub.com/slack?utm_source=docs&amp;utm_medium=footer&amp;utm_campaign=docs_footer&amp;utm_content=python-sdk/builder">Slack!</a></div></div><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://github.com/datahub-project/datahub/blob/master/versioned_docs/version-1.1.0/python-sdk/builder.md" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_VsjB"></div></div></footer><div class="feedbackWrapper_mUHF"><div class="feedbackWidget_PX4d"><div class="feedbackButtons_wn3V"><strong>Is this page helpful?</strong><div><button class="feedbackButton_UgQs"><span role="img" aria-label="like" class="anticon anticon-like"><svg viewBox="64 64 896 896" focusable="false" data-icon="like" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M885.9 533.7c16.8-22.2 26.1-49.4 26.1-77.7 0-44.9-25.1-87.4-65.5-111.1a67.67 67.67 0 00-34.3-9.3H572.4l6-122.9c1.4-29.7-9.1-57.9-29.5-79.4A106.62 106.62 0 00471 99.9c-52 0-98 35-111.8 85.1l-85.9 311H144c-17.7 0-32 14.3-32 32v364c0 17.7 14.3 32 32 32h601.3c9.2 0 18.2-1.8 26.5-5.4 47.6-20.3 78.3-66.8 78.3-118.4 0-12.6-1.8-25-5.4-37 16.8-22.2 26.1-49.4 26.1-77.7 0-12.6-1.8-25-5.4-37 16.8-22.2 26.1-49.4 26.1-77.7-.2-12.6-2-25.1-5.6-37.1zM184 852V568h81v284h-81zm636.4-353l-21.9 19 13.9 25.4a56.2 56.2 0 016.9 27.3c0 16.5-7.2 32.2-19.6 43l-21.9 19 13.9 25.4a56.2 56.2 0 016.9 27.3c0 16.5-7.2 32.2-19.6 43l-21.9 19 13.9 25.4a56.2 56.2 0 016.9 27.3c0 22.4-13.2 42.6-33.6 51.8H329V564.8l99.5-360.5a44.1 44.1 0 0142.2-32.3c7.6 0 15.1 2.2 21.1 6.7 9.9 7.4 15.2 18.6 14.6 30.5l-9.6 198.4h314.4C829 418.5 840 436.9 840 456c0 16.5-7.2 32.1-19.6 43z"></path></svg></span></button><button class="feedbackButton_UgQs"><span role="img" aria-label="dislike" class="anticon anticon-dislike"><svg viewBox="64 64 896 896" focusable="false" data-icon="dislike" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M885.9 490.3c3.6-12 5.4-24.4 5.4-37 0-28.3-9.3-55.5-26.1-77.7 3.6-12 5.4-24.4 5.4-37 0-28.3-9.3-55.5-26.1-77.7 3.6-12 5.4-24.4 5.4-37 0-51.6-30.7-98.1-78.3-118.4a66.1 66.1 0 00-26.5-5.4H144c-17.7 0-32 14.3-32 32v364c0 17.7 14.3 32 32 32h129.3l85.8 310.8C372.9 889 418.9 924 470.9 924c29.7 0 57.4-11.8 77.9-33.4 20.5-21.5 31-49.7 29.5-79.4l-6-122.9h239.9c12.1 0 23.9-3.2 34.3-9.3 40.4-23.5 65.5-66.1 65.5-111 0-28.3-9.3-55.5-26.1-77.7zM184 456V172h81v284h-81zm627.2 160.4H496.8l9.6 198.4c.6 11.9-4.7 23.1-14.6 30.5-6.1 4.5-13.6 6.8-21.1 6.7a44.28 44.28 0 01-42.2-32.3L329 459.2V172h415.4a56.85 56.85 0 0133.6 51.8c0 9.7-2.3 18.9-6.9 27.3l-13.9 25.4 21.9 19a56.76 56.76 0 0119.6 43c0 9.7-2.3 18.9-6.9 27.3l-13.9 25.4 21.9 19a56.76 56.76 0 0119.6 43c0 9.7-2.3 18.9-6.9 27.3l-14 25.5 21.9 19a56.76 56.76 0 0119.6 43c0 19.1-11 37.5-28.8 48.4z"></path></svg></span></button></div></div></div></div></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/docs/1.1.0/metadata-ingestion/as-a-library"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Python Emitter</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/docs/1.1.0/python-sdk/clients"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Client</div></a></nav></div></div></div></div></main></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">Docs</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/docs/">Introduction</a></li><li class="footer__item"><a class="footer__link-item" href="/docs/quickstart">Quickstart</a></li></ul></div><div class="col footer__col"><div class="footer__title">Community</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://datahub.com/slack" target="_blank" rel="noopener noreferrer" class="footer__link-item">Slack<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://www.youtube.com/channel/UC3qFQC5IiwR5fvWEqi_tJ5w" target="_blank" rel="noopener noreferrer" class="footer__link-item">YouTube<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://medium.com/datahub-project" target="_blank" rel="noopener noreferrer" class="footer__link-item">Blog<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a class="footer__link-item" href="/docs/townhalls">Town Halls</a></li><li class="footer__item"><a href="https://datahub.com/adoption-stories/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Adoption<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://demo.datahub.com/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Demo</a></li><li class="footer__item"><a href="https://feature-requests.datahubproject.io/roadmap" target="_blank" rel="noopener noreferrer" class="footer__link-item">Roadmap<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a class="footer__link-item" href="/docs/contributing">Contributing</a></li><li class="footer__item"><a href="https://github.com/datahub-project/datahub" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://feature-requests.datahubproject.io/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Feature Requests<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2015-2025 DataHub Project Authors.</div></div></div></footer></div>
<script src="/assets/js/runtime~main.6a0c26ba.js"></script>
<script src="/assets/js/main.ea5b2459.js"></script>
</body>
</html>