cognite-neat 0.128.0__py3-none-any.whl → 1.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cognite/neat/__init__.py +4 -3
- cognite/neat/_config.py +53 -6
- cognite/neat/_data_model/_identifiers.py +1 -1
- cognite/neat/_data_model/importers/_table_importer/data_classes.py +1 -1
- cognite/neat/_data_model/models/conceptual/_data_model.py +1 -1
- cognite/neat/_data_model/models/dms/_space.py +1 -1
- cognite/neat/_data_model/models/entities/_identifiers.py +1 -1
- cognite/neat/_session/_session.py +7 -14
- cognite/neat/{v0 → _v0}/core/_client/_api/data_modeling_loaders.py +6 -6
- cognite/neat/{v0 → _v0}/core/_client/_api/neat_instances.py +5 -5
- cognite/neat/{v0 → _v0}/core/_client/_api/schema.py +5 -5
- cognite/neat/{v0 → _v0}/core/_client/_api/statistics.py +3 -3
- cognite/neat/{v0 → _v0}/core/_client/_api_client.py +1 -1
- cognite/neat/{v0 → _v0}/core/_client/data_classes/schema.py +4 -4
- cognite/neat/{v0 → _v0}/core/_client/testing.py +1 -1
- cognite/neat/{v0 → _v0}/core/_constants.py +3 -3
- cognite/neat/{v0 → _v0}/core/_data_model/_shared.py +4 -4
- cognite/neat/{v0 → _v0}/core/_data_model/analysis/_base.py +8 -8
- cognite/neat/{v0 → _v0}/core/_data_model/exporters/_base.py +7 -7
- cognite/neat/{v0 → _v0}/core/_data_model/exporters/_data_model2dms.py +9 -9
- cognite/neat/{v0 → _v0}/core/_data_model/exporters/_data_model2excel.py +9 -9
- cognite/neat/{v0 → _v0}/core/_data_model/exporters/_data_model2instance_template.py +4 -4
- cognite/neat/{v0 → _v0}/core/_data_model/exporters/_data_model2semantic_model.py +9 -9
- cognite/neat/{v0 → _v0}/core/_data_model/exporters/_data_model2yaml.py +1 -1
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_base.py +5 -5
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_base_file_reader.py +2 -2
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_dict2data_model.py +5 -5
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_dms2data_model.py +13 -13
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_graph2data_model.py +12 -12
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_rdf/_base.py +12 -12
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_rdf/_inference2rdata_model.py +14 -14
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_rdf/_owl2data_model.py +2 -2
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_rdf/_shared.py +7 -7
- cognite/neat/{v0 → _v0}/core/_data_model/importers/_spreadsheet2data_model.py +10 -10
- cognite/neat/{v0 → _v0}/core/_data_model/models/__init__.py +3 -3
- cognite/neat/{v0 → _v0}/core/_data_model/models/_base_verified.py +5 -5
- cognite/neat/{v0 → _v0}/core/_data_model/models/_import_contexts.py +1 -1
- cognite/neat/{v0 → _v0}/core/_data_model/models/_types.py +5 -5
- cognite/neat/{v0 → _v0}/core/_data_model/models/conceptual/_unverified.py +5 -5
- cognite/neat/{v0 → _v0}/core/_data_model/models/conceptual/_validation.py +12 -12
- cognite/neat/{v0 → _v0}/core/_data_model/models/conceptual/_verified.py +9 -9
- cognite/neat/{v0 → _v0}/core/_data_model/models/data_types.py +3 -3
- cognite/neat/{v0 → _v0}/core/_data_model/models/entities/_loaders.py +2 -2
- cognite/neat/{v0 → _v0}/core/_data_model/models/entities/_multi_value.py +2 -2
- cognite/neat/{v0 → _v0}/core/_data_model/models/entities/_restrictions.py +6 -6
- cognite/neat/{v0 → _v0}/core/_data_model/models/entities/_single_value.py +3 -3
- cognite/neat/{v0 → _v0}/core/_data_model/models/mapping/_classic2core.py +5 -5
- cognite/neat/{v0 → _v0}/core/_data_model/models/physical/__init__.py +1 -1
- cognite/neat/{v0 → _v0}/core/_data_model/models/physical/_exporter.py +8 -8
- cognite/neat/{v0 → _v0}/core/_data_model/models/physical/_unverified.py +8 -8
- cognite/neat/{v0 → _v0}/core/_data_model/models/physical/_validation.py +16 -16
- cognite/neat/{v0 → _v0}/core/_data_model/models/physical/_verified.py +11 -11
- cognite/neat/{v0 → _v0}/core/_data_model/transformers/_base.py +4 -4
- cognite/neat/{v0 → _v0}/core/_data_model/transformers/_converters.py +26 -26
- cognite/neat/{v0 → _v0}/core/_data_model/transformers/_mapping.py +7 -7
- cognite/neat/{v0 → _v0}/core/_data_model/transformers/_union_conceptual.py +5 -5
- cognite/neat/{v0 → _v0}/core/_data_model/transformers/_verification.py +7 -7
- cognite/neat/{v0 → _v0}/core/_instances/_tracking/base.py +1 -1
- cognite/neat/{v0 → _v0}/core/_instances/_tracking/log.py +1 -1
- cognite/neat/{v0 → _v0}/core/_instances/extractors/__init__.py +3 -2
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_base.py +6 -6
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_base.py +7 -7
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_classic.py +12 -12
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_relationships.py +3 -3
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_sequences.py +2 -2
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_dict.py +2 -2
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_dms.py +6 -6
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_dms_graph.py +11 -11
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_mock_graph_generator.py +10 -10
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_raw.py +3 -3
- cognite/neat/{v0 → _v0}/core/_instances/extractors/_rdf_file.py +7 -7
- cognite/neat/{v0 → _v0}/core/_instances/loaders/_base.py +5 -5
- cognite/neat/{v0 → _v0}/core/_instances/loaders/_rdf2dms.py +17 -17
- cognite/neat/{v0 → _v0}/core/_instances/loaders/_rdf_to_instance_space.py +11 -11
- cognite/neat/{v0 → _v0}/core/_instances/queries/_select.py +3 -3
- cognite/neat/{v0 → _v0}/core/_instances/queries/_update.py +1 -1
- cognite/neat/{v0 → _v0}/core/_instances/transformers/_base.py +4 -4
- cognite/neat/{v0 → _v0}/core/_instances/transformers/_classic_cdf.py +6 -6
- cognite/neat/{v0 → _v0}/core/_instances/transformers/_prune_graph.py +4 -4
- cognite/neat/{v0 → _v0}/core/_instances/transformers/_rdfpath.py +1 -1
- cognite/neat/{v0 → _v0}/core/_instances/transformers/_value_type.py +4 -4
- cognite/neat/{v0 → _v0}/core/_issues/_base.py +5 -5
- cognite/neat/{v0 → _v0}/core/_issues/_contextmanagers.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/_factory.py +3 -3
- cognite/neat/{v0 → _v0}/core/_issues/errors/__init__.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/errors/_external.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/errors/_general.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/errors/_properties.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/errors/_resources.py +2 -2
- cognite/neat/{v0 → _v0}/core/_issues/errors/_wrapper.py +2 -2
- cognite/neat/{v0 → _v0}/core/_issues/warnings/__init__.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/warnings/_external.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/warnings/_general.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/warnings/_models.py +2 -2
- cognite/neat/{v0 → _v0}/core/_issues/warnings/_properties.py +2 -2
- cognite/neat/{v0 → _v0}/core/_issues/warnings/_resources.py +1 -1
- cognite/neat/{v0 → _v0}/core/_issues/warnings/user_modeling.py +1 -1
- cognite/neat/{v0 → _v0}/core/_store/_data_model.py +12 -12
- cognite/neat/{v0 → _v0}/core/_store/_instance.py +11 -11
- cognite/neat/{v0 → _v0}/core/_store/_provenance.py +3 -3
- cognite/neat/{v0 → _v0}/core/_store/exceptions.py +4 -4
- cognite/neat/{v0 → _v0}/core/_utils/auth.py +1 -1
- cognite/neat/{v0 → _v0}/core/_utils/auxiliary.py +1 -1
- cognite/neat/{v0 → _v0}/core/_utils/collection_.py +2 -2
- cognite/neat/{v0 → _v0}/core/_utils/graph_transformations_report.py +1 -1
- cognite/neat/{v0 → _v0}/core/_utils/rdf_.py +1 -1
- cognite/neat/{v0 → _v0}/core/_utils/reader/_base.py +1 -1
- cognite/neat/{v0 → _v0}/core/_utils/spreadsheet.py +1 -1
- cognite/neat/{v0 → _v0}/core/_utils/text.py +1 -1
- cognite/neat/{v0 → _v0}/core/_utils/upload.py +3 -3
- cognite/neat/{v0/session → _v0}/engine/_load.py +1 -1
- cognite/neat/{v0 → _v0}/plugins/_data_model.py +2 -2
- cognite/neat/{v0 → _v0}/plugins/_issues.py +1 -1
- cognite/neat/{v0 → _v0}/plugins/_manager.py +2 -2
- cognite/neat/{v0 → _v0}/session/_base.py +11 -11
- cognite/neat/{v0 → _v0}/session/_collector.py +1 -1
- cognite/neat/{v0 → _v0}/session/_diff.py +1 -1
- cognite/neat/{v0 → _v0}/session/_drop.py +3 -3
- cognite/neat/{v0 → _v0}/session/_explore.py +2 -2
- cognite/neat/{v0 → _v0}/session/_fix.py +2 -2
- cognite/neat/{v0 → _v0}/session/_inspect.py +3 -3
- cognite/neat/{v0 → _v0}/session/_mapping.py +3 -3
- cognite/neat/{v0 → _v0}/session/_plugin.py +4 -4
- cognite/neat/{v0 → _v0}/session/_prepare.py +8 -8
- cognite/neat/{v0 → _v0}/session/_read.py +19 -19
- cognite/neat/{v0 → _v0}/session/_set.py +8 -8
- cognite/neat/{v0 → _v0}/session/_show.py +5 -5
- cognite/neat/{v0 → _v0}/session/_state.py +10 -10
- cognite/neat/{v0 → _v0}/session/_subset.py +4 -4
- cognite/neat/{v0 → _v0}/session/_template.py +11 -11
- cognite/neat/{v0 → _v0}/session/_to.py +12 -12
- cognite/neat/{v0 → _v0}/session/_wizard.py +1 -1
- cognite/neat/{v0 → _v0}/session/exceptions.py +5 -5
- cognite/neat/_version.py +1 -1
- cognite/neat/legacy.py +6 -0
- {cognite_neat-0.128.0.dist-info → cognite_neat-1.0.0.dist-info}/METADATA +1 -1
- cognite_neat-1.0.0.dist-info/RECORD +319 -0
- cognite/neat/v1.py +0 -3
- cognite_neat-0.128.0.dist-info/RECORD +0 -319
- /cognite/neat/{v0 → _v0}/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_client/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_client/_api/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_client/data_classes/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_client/data_classes/data_modeling.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_client/data_classes/neat_sequence.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_client/data_classes/statistics.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_config.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/_constants.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/analysis/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/catalog/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/catalog/classic_model.xlsx +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/catalog/conceptual-imf-data-model.xlsx +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/catalog/hello_world_pump.xlsx +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/exporters/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/importers/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/importers/_rdf/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/models/_base_unverified.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/models/conceptual/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/models/entities/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/models/entities/_constants.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/models/entities/_types.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/models/entities/_wrapped.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/models/mapping/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/models/mapping/_classic2core.yaml +0 -0
- /cognite/neat/{v0 → _v0}/core/_data_model/transformers/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/_shared.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/_tracking/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/examples/Knowledge-Graph-Nordic44-dirty.xml +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/examples/Knowledge-Graph-Nordic44.xml +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/examples/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/examples/skos-capturing-sheet-wind-topics.xlsx +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_assets.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_data_sets.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_events.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_files.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_labels.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/extractors/_classic_cdf/_timeseries.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/loaders/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/queries/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/queries/_base.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/queries/_queries.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_instances/transformers/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_issues/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_issues/formatters.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_shared.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_store/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_utils/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_utils/io_.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_utils/reader/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_utils/tarjan.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_utils/time_.py +0 -0
- /cognite/neat/{v0 → _v0}/core/_utils/xml_.py +0 -0
- /cognite/neat/{v0/session → _v0}/engine/__init__.py +0 -0
- /cognite/neat/{v0/session → _v0}/engine/_import.py +0 -0
- /cognite/neat/{v0/session → _v0}/engine/_interface.py +0 -0
- /cognite/neat/{v0 → _v0}/plugins/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/plugins/_base.py +0 -0
- /cognite/neat/{v0 → _v0}/session/__init__.py +0 -0
- /cognite/neat/{v0 → _v0}/session/_experimental.py +0 -0
- /cognite/neat/{v0 → _v0}/session/_state/README.md +0 -0
- {cognite_neat-0.128.0.dist-info → cognite_neat-1.0.0.dist-info}/WHEEL +0 -0
- {cognite_neat-0.128.0.dist-info → cognite_neat-1.0.0.dist-info}/licenses/LICENSE +0 -0
cognite/neat/__init__.py
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
from cognite.neat.
|
|
2
|
-
from cognite.neat.v0.session import NeatSession
|
|
1
|
+
from cognite.neat._v0.core._utils.auth import get_cognite_client
|
|
3
2
|
|
|
3
|
+
from ._config import NeatConfig
|
|
4
|
+
from ._session import NeatSession
|
|
4
5
|
from ._version import __version__
|
|
5
6
|
|
|
6
|
-
__all__ = ["NeatSession", "__version__", "get_cognite_client"]
|
|
7
|
+
__all__ = ["NeatConfig", "NeatSession", "__version__", "get_cognite_client"]
|
cognite/neat/_config.py
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import sys
|
|
2
2
|
from pathlib import Path
|
|
3
|
+
from typing import Any, Literal, TypeAlias
|
|
3
4
|
|
|
4
|
-
from pydantic import BaseModel, Field
|
|
5
|
+
from pydantic import BaseModel, ConfigDict, Field
|
|
5
6
|
|
|
7
|
+
from cognite.neat._exceptions import UserInputError
|
|
6
8
|
from cognite.neat._issues import ConsistencyError, ModelSyntaxError
|
|
9
|
+
from cognite.neat._utils.text import humanize_collection
|
|
7
10
|
from cognite.neat._utils.useful_types import ModusOperandi
|
|
8
11
|
|
|
9
12
|
if sys.version_info >= (3, 11):
|
|
@@ -11,8 +14,14 @@ if sys.version_info >= (3, 11):
|
|
|
11
14
|
else:
|
|
12
15
|
import tomli # type: ignore
|
|
13
16
|
|
|
17
|
+
PredefinedProfile: TypeAlias = Literal["legacy-additive", "legacy-rebuild", "deep-additive", "deep-rebuild"]
|
|
14
18
|
|
|
15
|
-
|
|
19
|
+
|
|
20
|
+
class ConfigModel(BaseModel):
|
|
21
|
+
model_config = ConfigDict(populate_by_name=True, validate_assignment=True)
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
class ValidationConfig(ConfigModel):
|
|
16
25
|
"""Validation configuration."""
|
|
17
26
|
|
|
18
27
|
exclude: list[str] = Field(default_factory=list)
|
|
@@ -71,18 +80,45 @@ class ValidationConfig(BaseModel, populate_by_name=True):
|
|
|
71
80
|
return f"Excluded Rules: {', '.join(self.exclude)}"
|
|
72
81
|
|
|
73
82
|
|
|
74
|
-
class ModelingConfig(
|
|
83
|
+
class ModelingConfig(ConfigModel):
|
|
75
84
|
"""Modeling configuration."""
|
|
76
85
|
|
|
77
86
|
mode: ModusOperandi = "additive"
|
|
78
87
|
|
|
79
88
|
|
|
80
|
-
class
|
|
89
|
+
class AlphaFlagConfig(ConfigModel):
|
|
90
|
+
"""Alpha feature flags configuration."""
|
|
91
|
+
|
|
92
|
+
fix_validation_issues: bool = Field(
|
|
93
|
+
default=False,
|
|
94
|
+
description="If enabled, Neat will attempt to automatically fix certain validation issues in the data model.",
|
|
95
|
+
)
|
|
96
|
+
|
|
97
|
+
def __setattr__(self, key: str, value: Any) -> None:
|
|
98
|
+
"""Set attribute value or raise AttributeError."""
|
|
99
|
+
if key in self.model_fields:
|
|
100
|
+
super().__setattr__(key, value)
|
|
101
|
+
else:
|
|
102
|
+
available_flags = humanize_collection(type(self).model_fields.keys())
|
|
103
|
+
raise UserInputError(f"Alpha flag '{key}' not found. Available flags: {available_flags}.")
|
|
104
|
+
|
|
105
|
+
def _repr_html_(self) -> str:
|
|
106
|
+
"""HTML representation for Jupyter notebooks."""
|
|
107
|
+
lines = ["<b>Alpha Feature Flags:</b>"]
|
|
108
|
+
for field_name, field in type(self).model_fields.items():
|
|
109
|
+
value = getattr(self, field_name)
|
|
110
|
+
display = "Enabled" if value else "Disabled"
|
|
111
|
+
lines.append(f"<li><b>{field_name}</b>: {display} - {field.description}</li>")
|
|
112
|
+
return "<ul>" + "\n".join(lines) + "</ul>"
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
class NeatConfig(ConfigModel):
|
|
81
116
|
"""Configuration for a custom profile."""
|
|
82
117
|
|
|
83
118
|
profile: str
|
|
84
119
|
validation: ValidationConfig
|
|
85
120
|
modeling: ModelingConfig
|
|
121
|
+
alpha: AlphaFlagConfig = Field(default_factory=AlphaFlagConfig)
|
|
86
122
|
|
|
87
123
|
def __str__(self) -> str:
|
|
88
124
|
"""Human-readable configuration summary."""
|
|
@@ -93,8 +129,19 @@ class NeatConfig(BaseModel, populate_by_name=True):
|
|
|
93
129
|
]
|
|
94
130
|
return "\n".join(lines)
|
|
95
131
|
|
|
132
|
+
@classmethod
|
|
133
|
+
def create_predefined(cls, profile: PredefinedProfile = "legacy-additive") -> "NeatConfig":
|
|
134
|
+
"""Create NeatConfig from internal profiles."""
|
|
135
|
+
available_profiles = internal_profiles()
|
|
136
|
+
if profile not in available_profiles:
|
|
137
|
+
raise UserInputError(
|
|
138
|
+
f"Profile {profile!r} not found. Available predefined profiles: "
|
|
139
|
+
f"{humanize_collection(available_profiles.keys())}."
|
|
140
|
+
)
|
|
141
|
+
return available_profiles[profile]
|
|
142
|
+
|
|
96
143
|
|
|
97
|
-
def internal_profiles() -> dict[
|
|
144
|
+
def internal_profiles() -> dict[PredefinedProfile, NeatConfig]:
|
|
98
145
|
"""Get internal NeatConfig profile by name."""
|
|
99
146
|
return {
|
|
100
147
|
"legacy-additive": NeatConfig(
|
|
@@ -136,7 +183,7 @@ def internal_profiles() -> dict[str, NeatConfig]:
|
|
|
136
183
|
}
|
|
137
184
|
|
|
138
185
|
|
|
139
|
-
def
|
|
186
|
+
def get_neat_config_from_file(config_file_name: str, profile: str) -> NeatConfig:
|
|
140
187
|
"""Get NeatConfig from file or internal profiles.
|
|
141
188
|
|
|
142
189
|
Args:
|
|
@@ -18,7 +18,7 @@ from traitlets import Any
|
|
|
18
18
|
from cognite.neat._data_model.models.entities import ParsedEntity, parse_entities, parse_entity
|
|
19
19
|
from cognite.neat._utils.text import title_case
|
|
20
20
|
from cognite.neat._utils.useful_types import CellValueType
|
|
21
|
-
from cognite.neat.
|
|
21
|
+
from cognite.neat._v0.core._data_model.models.entities import (
|
|
22
22
|
HasDataFilter,
|
|
23
23
|
NodeTypeFilter,
|
|
24
24
|
RawFilter,
|
|
@@ -4,7 +4,7 @@ from pydantic import Field, ValidationInfo, field_validator
|
|
|
4
4
|
|
|
5
5
|
from cognite.neat._data_model.models.entities._constants import PREFIX_PATTERN, SUFFIX_PATTERN, VERSION_PATTERN
|
|
6
6
|
from cognite.neat._utils.text import humanize_collection
|
|
7
|
-
from cognite.neat.
|
|
7
|
+
from cognite.neat._v0.core._data_model.models.entities._single_value import ConceptEntity
|
|
8
8
|
|
|
9
9
|
from ._base import ResourceMetadata
|
|
10
10
|
from ._concept import Concept
|
|
@@ -3,7 +3,7 @@ from abc import ABC
|
|
|
3
3
|
from pydantic import Field, field_validator
|
|
4
4
|
|
|
5
5
|
from cognite.neat._data_model.models.dms._references import SpaceReference
|
|
6
|
-
from cognite.neat.
|
|
6
|
+
from cognite.neat._v0.core._utils.text import humanize_collection
|
|
7
7
|
|
|
8
8
|
from ._base import APIResource, Resource, WriteableResource
|
|
9
9
|
from ._constants import FORBIDDEN_SPACES, SPACE_FORMAT_PATTERN
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import json
|
|
2
|
-
from typing import Literal
|
|
3
2
|
|
|
4
3
|
from cognite.client import ClientConfig, CogniteClient
|
|
5
4
|
|
|
6
5
|
from cognite.neat import _version
|
|
7
6
|
from cognite.neat._client import NeatClient
|
|
8
|
-
from cognite.neat._config import
|
|
7
|
+
from cognite.neat._config import NeatConfig, PredefinedProfile
|
|
9
8
|
from cognite.neat._state_machine import EmptyState, PhysicalState
|
|
10
9
|
from cognite.neat._store import NeatStore
|
|
11
10
|
from cognite.neat._utils.http_client import ParametersRequest, SuccessResponse
|
|
@@ -20,24 +19,18 @@ class NeatSession:
|
|
|
20
19
|
"""A session is an interface for neat operations."""
|
|
21
20
|
|
|
22
21
|
def __init__(
|
|
23
|
-
self,
|
|
24
|
-
client: CogniteClient | ClientConfig,
|
|
25
|
-
config: Literal["legacy-additive", "legacy-rebuild", "deep-additive", "deep-rebuild"] | None = None,
|
|
22
|
+
self, client: CogniteClient | ClientConfig, config: PredefinedProfile | NeatConfig = "legacy-additive"
|
|
26
23
|
) -> None:
|
|
27
24
|
"""Initialize a Neat session.
|
|
28
25
|
|
|
29
26
|
Args:
|
|
30
27
|
client (CogniteClient | ClientConfig): The Cognite client or client configuration to use for the session.
|
|
31
|
-
config (Literal["legacy-additive", "legacy-rebuild", "deep-additive", "deep-rebuild"] |
|
|
28
|
+
config (Literal["legacy-additive", "legacy-rebuild", "deep-additive", "deep-rebuild"] | NeatConfig):
|
|
32
29
|
The configuration profile to use for the session.
|
|
33
|
-
|
|
34
|
-
and apply only validations that were part of the legacy Neat version.
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
if config and config not in internal_profiles():
|
|
38
|
-
raise ValueError(f"Profile '{config}' not found among internal profiles.")
|
|
39
|
-
|
|
40
|
-
self._config = internal_profiles()[config or "legacy-additive"]
|
|
30
|
+
Defaults to "legacy-additive". This means Neat will perform additive modeling
|
|
31
|
+
and apply only validations that were part of the legacy Neat version.
|
|
32
|
+
"""
|
|
33
|
+
self._config = NeatConfig.create_predefined(config) if isinstance(config, str) else config
|
|
41
34
|
|
|
42
35
|
# Use configuration for physical data model
|
|
43
36
|
self._store = NeatStore()
|
|
@@ -55,14 +55,14 @@ from cognite.client.data_classes.data_modeling.views import (
|
|
|
55
55
|
from cognite.client.exceptions import CogniteAPIError
|
|
56
56
|
from cognite.client.utils.useful_types import SequenceNotStr
|
|
57
57
|
|
|
58
|
-
from cognite.neat.
|
|
59
|
-
from cognite.neat.
|
|
60
|
-
from cognite.neat.
|
|
61
|
-
from cognite.neat.
|
|
62
|
-
from cognite.neat.
|
|
58
|
+
from cognite.neat._v0.core._client.data_classes.data_modeling import Component
|
|
59
|
+
from cognite.neat._v0.core._client.data_classes.schema import DMSSchema
|
|
60
|
+
from cognite.neat._v0.core._issues.warnings import CDFMaxIterationsWarning
|
|
61
|
+
from cognite.neat._v0.core._shared import T_ID
|
|
62
|
+
from cognite.neat._v0.core._utils.tarjan import tarjan
|
|
63
63
|
|
|
64
64
|
if TYPE_CHECKING:
|
|
65
|
-
from cognite.neat.
|
|
65
|
+
from cognite.neat._v0.core._client._api_client import NeatClient
|
|
66
66
|
|
|
67
67
|
T_WritableCogniteResourceList = TypeVar("T_WritableCogniteResourceList", bound=WriteableCogniteResourceList)
|
|
68
68
|
|
|
@@ -7,13 +7,13 @@ from cognite.client.data_classes.filters import Filter
|
|
|
7
7
|
from cognite.client.exceptions import CogniteAPIError
|
|
8
8
|
from cognite.client.utils.useful_types import SequenceNotStr
|
|
9
9
|
|
|
10
|
-
from cognite.neat.
|
|
11
|
-
from cognite.neat.
|
|
12
|
-
from cognite.neat.
|
|
13
|
-
from cognite.neat.
|
|
10
|
+
from cognite.neat._v0.core._constants import DMS_INSTANCE_LIMIT_MARGIN
|
|
11
|
+
from cognite.neat._v0.core._issues import NeatIssue
|
|
12
|
+
from cognite.neat._v0.core._issues.errors import WillExceedLimitError
|
|
13
|
+
from cognite.neat._v0.core._issues.warnings import NeatValueWarning
|
|
14
14
|
|
|
15
15
|
if TYPE_CHECKING:
|
|
16
|
-
from cognite.neat.
|
|
16
|
+
from cognite.neat._v0.core._client._api_client import NeatClient
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
class NeatInstancesAPI:
|
|
@@ -5,17 +5,17 @@ from typing import TYPE_CHECKING
|
|
|
5
5
|
|
|
6
6
|
from cognite.client import data_modeling as dm
|
|
7
7
|
|
|
8
|
-
from cognite.neat.
|
|
8
|
+
from cognite.neat._v0.core._client.data_classes.data_modeling import (
|
|
9
9
|
ContainerApplyDict,
|
|
10
10
|
SpaceApplyDict,
|
|
11
11
|
ViewApplyDict,
|
|
12
12
|
)
|
|
13
|
-
from cognite.neat.
|
|
14
|
-
from cognite.neat.
|
|
15
|
-
from cognite.neat.
|
|
13
|
+
from cognite.neat._v0.core._client.data_classes.schema import DMSSchema
|
|
14
|
+
from cognite.neat._v0.core._constants import is_hierarchy_property
|
|
15
|
+
from cognite.neat._v0.core._issues.errors import NeatValueError
|
|
16
16
|
|
|
17
17
|
if TYPE_CHECKING:
|
|
18
|
-
from cognite.neat.
|
|
18
|
+
from cognite.neat._v0.core._client._api_client import NeatClient
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
class SchemaAPI:
|
|
@@ -7,7 +7,7 @@ from cognite.client.config import ClientConfig
|
|
|
7
7
|
from cognite.client.data_classes.data_modeling.ids import _load_space_identifier
|
|
8
8
|
from cognite.client.utils.useful_types import SequenceNotStr
|
|
9
9
|
|
|
10
|
-
from cognite.neat.
|
|
10
|
+
from cognite.neat._v0.core._client.data_classes.statistics import (
|
|
11
11
|
ProjectStatsAndLimits,
|
|
12
12
|
SpaceInstanceCounts,
|
|
13
13
|
SpaceInstanceCountsList,
|
|
@@ -34,7 +34,7 @@ class StatisticsAPI(APIClient):
|
|
|
34
34
|
Examples:
|
|
35
35
|
Fetch project statistics (and limits) and check the current number of data models vs.
|
|
36
36
|
and how many more can be created:
|
|
37
|
-
>>> from cognite.neat.
|
|
37
|
+
>>> from cognite.neat._v0.core._client import NeatClient
|
|
38
38
|
>>> client = NeatClient()
|
|
39
39
|
>>> stats = client.instance_statistics.project()
|
|
40
40
|
>>> num_dm = stats.data_models.current
|
|
@@ -64,7 +64,7 @@ class StatisticsAPI(APIClient):
|
|
|
64
64
|
|
|
65
65
|
Examples:
|
|
66
66
|
Fetch statistics for a single space:
|
|
67
|
-
>>> from cognite.neat.
|
|
67
|
+
>>> from cognite.neat._v0.core._client import NeatClient
|
|
68
68
|
>>> client = NeatClient()
|
|
69
69
|
>>> res = client.instance_statistics.list("my-space")
|
|
70
70
|
Fetch statistics for multiple spaces:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from cognite.client import ClientConfig, CogniteClient
|
|
2
2
|
|
|
3
|
-
from cognite.neat.
|
|
3
|
+
from cognite.neat._v0.core._utils.auth import _CLIENT_NAME
|
|
4
4
|
|
|
5
5
|
from ._api.data_modeling_loaders import DataModelLoaderAPI
|
|
6
6
|
from ._api.neat_instances import NeatInstancesAPI
|
|
@@ -20,21 +20,21 @@ from cognite.client.data_classes.data_modeling.views import (
|
|
|
20
20
|
ViewPropertyApply,
|
|
21
21
|
)
|
|
22
22
|
|
|
23
|
-
from cognite.neat.
|
|
23
|
+
from cognite.neat._v0.core._client.data_classes.data_modeling import (
|
|
24
24
|
CogniteResourceDict,
|
|
25
25
|
ContainerApplyDict,
|
|
26
26
|
NodeApplyDict,
|
|
27
27
|
SpaceApplyDict,
|
|
28
28
|
ViewApplyDict,
|
|
29
29
|
)
|
|
30
|
-
from cognite.neat.
|
|
30
|
+
from cognite.neat._v0.core._issues.errors import (
|
|
31
31
|
NeatYamlError,
|
|
32
32
|
)
|
|
33
|
-
from cognite.neat.
|
|
33
|
+
from cognite.neat._v0.core._issues.warnings import (
|
|
34
34
|
FileTypeUnexpectedWarning,
|
|
35
35
|
ResourcesDuplicatedWarning,
|
|
36
36
|
)
|
|
37
|
-
from cognite.neat.
|
|
37
|
+
from cognite.neat._v0.core._utils.text import to_camel_case
|
|
38
38
|
|
|
39
39
|
if sys.version_info >= (3, 11):
|
|
40
40
|
from typing import Self
|
|
@@ -5,7 +5,7 @@ from unittest.mock import MagicMock
|
|
|
5
5
|
|
|
6
6
|
from cognite.client.testing import CogniteClientMock
|
|
7
7
|
|
|
8
|
-
from cognite.neat.
|
|
8
|
+
from cognite.neat._v0.core._client._api_client import NeatClient
|
|
9
9
|
|
|
10
10
|
from ._api.data_modeling_loaders import DataModelLoaderAPI
|
|
11
11
|
from ._api.neat_instances import NeatInstancesAPI
|
|
@@ -11,7 +11,7 @@ from rdflib.namespace import DefinedNamespace
|
|
|
11
11
|
from cognite import neat
|
|
12
12
|
|
|
13
13
|
if TYPE_CHECKING:
|
|
14
|
-
from cognite.neat.
|
|
14
|
+
from cognite.neat._v0.core._data_model.models.physical import PhysicalProperty
|
|
15
15
|
|
|
16
16
|
|
|
17
17
|
def _is_in_notebook() -> bool:
|
|
@@ -204,7 +204,7 @@ BASE_MODEL = Literal["CogniteCore"]
|
|
|
204
204
|
|
|
205
205
|
def get_asset_read_only_properties_with_connection() -> "list[PhysicalProperty]":
|
|
206
206
|
"""Gets the asset read-only properties with connection, i.e. Root and Path."""
|
|
207
|
-
from cognite.neat.
|
|
207
|
+
from cognite.neat._v0.core._data_model.models.physical import PhysicalProperty
|
|
208
208
|
|
|
209
209
|
return [PhysicalProperty.model_validate(item) for item in (_ASSET_ROOT_PROPERTY, _ASSET_PATH_PROPERTY)]
|
|
210
210
|
|
|
@@ -219,7 +219,7 @@ def get_base_concepts(
|
|
|
219
219
|
total_concepts: The number of concepts to get. If None, all concepts are returned.
|
|
220
220
|
"""
|
|
221
221
|
# Local import to avoid circular dependency issues
|
|
222
|
-
from cognite.neat.
|
|
222
|
+
from cognite.neat._v0.core._issues.errors._general import NeatValueError
|
|
223
223
|
|
|
224
224
|
if base_model == "CogniteCore":
|
|
225
225
|
return [f"cdf_cdm:{concept}(version=v1)" for concept in COGNITE_CONCEPTS][:total_concepts]
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
from dataclasses import dataclass
|
|
2
2
|
from typing import Generic, TypeAlias, TypeVar
|
|
3
3
|
|
|
4
|
-
from cognite.neat.
|
|
4
|
+
from cognite.neat._v0.core._data_model.models import (
|
|
5
5
|
ConceptualDataModel,
|
|
6
6
|
PhysicalDataModel,
|
|
7
7
|
)
|
|
8
|
-
from cognite.neat.
|
|
9
|
-
from cognite.neat.
|
|
8
|
+
from cognite.neat._v0.core._data_model.models._import_contexts import ImportContext
|
|
9
|
+
from cognite.neat._v0.core._data_model.models.conceptual._unverified import (
|
|
10
10
|
UnverifiedConceptualDataModel,
|
|
11
11
|
)
|
|
12
|
-
from cognite.neat.
|
|
12
|
+
from cognite.neat._v0.core._data_model.models.physical._unverified import (
|
|
13
13
|
UnverifiedPhysicalDataModel,
|
|
14
14
|
)
|
|
15
15
|
|
|
@@ -11,23 +11,23 @@ import pandas as pd
|
|
|
11
11
|
from cognite.client import data_modeling as dm
|
|
12
12
|
from rdflib import URIRef
|
|
13
13
|
|
|
14
|
-
from cognite.neat.
|
|
15
|
-
from cognite.neat.
|
|
14
|
+
from cognite.neat._v0.core._data_model.models import ConceptualDataModel, PhysicalDataModel
|
|
15
|
+
from cognite.neat._v0.core._data_model.models.conceptual import (
|
|
16
16
|
Concept,
|
|
17
17
|
ConceptualProperty,
|
|
18
18
|
)
|
|
19
|
-
from cognite.neat.
|
|
19
|
+
from cognite.neat._v0.core._data_model.models.entities import (
|
|
20
20
|
ConceptEntity,
|
|
21
21
|
MultiValueTypeInfo,
|
|
22
22
|
ViewEntity,
|
|
23
23
|
)
|
|
24
|
-
from cognite.neat.
|
|
24
|
+
from cognite.neat._v0.core._data_model.models.entities._single_value import (
|
|
25
25
|
UnknownEntity,
|
|
26
26
|
)
|
|
27
|
-
from cognite.neat.
|
|
28
|
-
from cognite.neat.
|
|
29
|
-
from cognite.neat.
|
|
30
|
-
from cognite.neat.
|
|
27
|
+
from cognite.neat._v0.core._data_model.models.physical import PhysicalProperty
|
|
28
|
+
from cognite.neat._v0.core._data_model.models.physical._verified import PhysicalView
|
|
29
|
+
from cognite.neat._v0.core._issues.errors import NeatValueError
|
|
30
|
+
from cognite.neat._v0.core._issues.warnings import NeatValueWarning
|
|
31
31
|
|
|
32
32
|
T_Hashable = TypeVar("T_Hashable", bound=Hashable)
|
|
33
33
|
|
|
@@ -5,14 +5,14 @@ from pathlib import Path
|
|
|
5
5
|
from types import UnionType
|
|
6
6
|
from typing import TYPE_CHECKING, Generic, TypeVar, Union, get_args, get_origin
|
|
7
7
|
|
|
8
|
-
from cognite.neat.
|
|
9
|
-
from cognite.neat.
|
|
10
|
-
from cognite.neat.
|
|
11
|
-
from cognite.neat.
|
|
12
|
-
from cognite.neat.
|
|
8
|
+
from cognite.neat._v0.core._client import NeatClient
|
|
9
|
+
from cognite.neat._v0.core._constants import DEFAULT_NAMESPACE
|
|
10
|
+
from cognite.neat._v0.core._data_model._shared import T_VerifiedDataModel
|
|
11
|
+
from cognite.neat._v0.core._utils.auxiliary import class_html_doc
|
|
12
|
+
from cognite.neat._v0.core._utils.upload import UploadResult, UploadResultList
|
|
13
13
|
|
|
14
14
|
if TYPE_CHECKING:
|
|
15
|
-
from cognite.neat.
|
|
15
|
+
from cognite.neat._v0.core._store._provenance import Agent as ProvenanceAgent
|
|
16
16
|
|
|
17
17
|
T_Export = TypeVar("T_Export")
|
|
18
18
|
|
|
@@ -36,7 +36,7 @@ class BaseExporter(ABC, Generic[T_VerifiedDataModel, T_Export]):
|
|
|
36
36
|
@property
|
|
37
37
|
def agent(self) -> "ProvenanceAgent":
|
|
38
38
|
"""Provenance agent for the importer."""
|
|
39
|
-
from cognite.neat.
|
|
39
|
+
from cognite.neat._v0.core._store._provenance import Agent as ProvenanceAgent
|
|
40
40
|
|
|
41
41
|
return ProvenanceAgent(id_=DEFAULT_NAMESPACE[f"agent/{type(self).__name__}"])
|
|
42
42
|
|
|
@@ -18,24 +18,24 @@ from cognite.client.data_classes.data_modeling import (
|
|
|
18
18
|
)
|
|
19
19
|
from cognite.client.exceptions import CogniteAPIError
|
|
20
20
|
|
|
21
|
-
from cognite.neat.
|
|
22
|
-
from cognite.neat.
|
|
21
|
+
from cognite.neat._v0.core._client import DataModelingLoader, NeatClient
|
|
22
|
+
from cognite.neat._v0.core._client._api.data_modeling_loaders import (
|
|
23
23
|
MultiCogniteAPIError,
|
|
24
24
|
T_WritableCogniteResourceList,
|
|
25
25
|
)
|
|
26
|
-
from cognite.neat.
|
|
26
|
+
from cognite.neat._v0.core._client.data_classes.data_modeling import (
|
|
27
27
|
Component,
|
|
28
28
|
ViewApplyDict,
|
|
29
29
|
)
|
|
30
|
-
from cognite.neat.
|
|
31
|
-
from cognite.neat.
|
|
32
|
-
from cognite.neat.
|
|
33
|
-
from cognite.neat.
|
|
30
|
+
from cognite.neat._v0.core._client.data_classes.schema import DMSSchema
|
|
31
|
+
from cognite.neat._v0.core._data_model.models.physical import PhysicalDataModel
|
|
32
|
+
from cognite.neat._v0.core._issues import IssueList
|
|
33
|
+
from cognite.neat._v0.core._issues.warnings import (
|
|
34
34
|
PrincipleOneModelOneSpaceWarning,
|
|
35
35
|
ResourceRetrievalWarning,
|
|
36
36
|
)
|
|
37
|
-
from cognite.neat.
|
|
38
|
-
from cognite.neat.
|
|
37
|
+
from cognite.neat._v0.core._shared import T_ID
|
|
38
|
+
from cognite.neat._v0.core._utils.upload import UploadResult
|
|
39
39
|
|
|
40
40
|
from ._base import CDFExporter
|
|
41
41
|
|
|
@@ -14,24 +14,24 @@ from openpyxl.worksheet.datavalidation import DataValidation
|
|
|
14
14
|
from openpyxl.worksheet.worksheet import Worksheet
|
|
15
15
|
from rdflib import Namespace
|
|
16
16
|
|
|
17
|
-
from cognite.neat.
|
|
18
|
-
from cognite.neat.
|
|
19
|
-
from cognite.neat.
|
|
20
|
-
from cognite.neat.
|
|
17
|
+
from cognite.neat._v0.core._constants import BASE_MODEL, get_base_concepts
|
|
18
|
+
from cognite.neat._v0.core._data_model._constants import get_internal_properties
|
|
19
|
+
from cognite.neat._v0.core._data_model._shared import VerifiedDataModel
|
|
20
|
+
from cognite.neat._v0.core._data_model.models import (
|
|
21
21
|
SheetRow,
|
|
22
22
|
)
|
|
23
|
-
from cognite.neat.
|
|
23
|
+
from cognite.neat._v0.core._data_model.models._base_verified import (
|
|
24
24
|
BaseVerifiedMetadata,
|
|
25
25
|
RoleTypes,
|
|
26
26
|
)
|
|
27
|
-
from cognite.neat.
|
|
27
|
+
from cognite.neat._v0.core._data_model.models.conceptual._verified import (
|
|
28
28
|
ConceptualDataModel,
|
|
29
29
|
)
|
|
30
|
-
from cognite.neat.
|
|
30
|
+
from cognite.neat._v0.core._data_model.models.data_types import (
|
|
31
31
|
_DATA_TYPE_BY_DMS_TYPE,
|
|
32
32
|
)
|
|
33
|
-
from cognite.neat.
|
|
34
|
-
from cognite.neat.
|
|
33
|
+
from cognite.neat._v0.core._data_model.models.physical._verified import PhysicalDataModel
|
|
34
|
+
from cognite.neat._v0.core._utils.spreadsheet import (
|
|
35
35
|
find_column_and_row_with_value,
|
|
36
36
|
generate_data_validation,
|
|
37
37
|
)
|
|
@@ -8,12 +8,12 @@ from openpyxl.styles import Alignment, Border, Font, NamedStyle, PatternFill, Si
|
|
|
8
8
|
from openpyxl.utils import get_column_letter
|
|
9
9
|
from openpyxl.worksheet.datavalidation import DataValidation
|
|
10
10
|
|
|
11
|
-
from cognite.neat.
|
|
12
|
-
from cognite.neat.
|
|
13
|
-
from cognite.neat.
|
|
11
|
+
from cognite.neat._v0.core._data_model._constants import EntityTypes
|
|
12
|
+
from cognite.neat._v0.core._data_model.analysis import DataModelAnalysis
|
|
13
|
+
from cognite.neat._v0.core._data_model.models.conceptual._verified import (
|
|
14
14
|
ConceptualDataModel,
|
|
15
15
|
)
|
|
16
|
-
from cognite.neat.
|
|
16
|
+
from cognite.neat._v0.core._data_model.models.entities._single_value import ConceptEntity
|
|
17
17
|
|
|
18
18
|
from ._base import BaseExporter
|
|
19
19
|
|
|
@@ -8,22 +8,22 @@ from pydantic import BaseModel, ConfigDict, ValidationInfo, field_validator
|
|
|
8
8
|
from rdflib import DCTERMS, OWL, RDF, RDFS, XSD, BNode, Graph, Literal, Namespace, URIRef
|
|
9
9
|
from rdflib.collection import Collection as GraphCollection
|
|
10
10
|
|
|
11
|
-
from cognite.neat.
|
|
12
|
-
from cognite.neat.
|
|
13
|
-
from cognite.neat.
|
|
14
|
-
from cognite.neat.
|
|
11
|
+
from cognite.neat._v0.core._constants import DEFAULT_NAMESPACE as NEAT_NAMESPACE
|
|
12
|
+
from cognite.neat._v0.core._data_model._constants import EntityTypes
|
|
13
|
+
from cognite.neat._v0.core._data_model.analysis import DataModelAnalysis
|
|
14
|
+
from cognite.neat._v0.core._data_model.models.conceptual import (
|
|
15
15
|
Concept,
|
|
16
16
|
ConceptualDataModel,
|
|
17
17
|
ConceptualMetadata,
|
|
18
18
|
ConceptualProperty,
|
|
19
19
|
)
|
|
20
|
-
from cognite.neat.
|
|
21
|
-
from cognite.neat.
|
|
22
|
-
from cognite.neat.
|
|
20
|
+
from cognite.neat._v0.core._data_model.models.data_types import DataType
|
|
21
|
+
from cognite.neat._v0.core._data_model.models.entities import ConceptEntity
|
|
22
|
+
from cognite.neat._v0.core._issues.errors import (
|
|
23
23
|
PropertyDefinitionDuplicatedError,
|
|
24
24
|
)
|
|
25
|
-
from cognite.neat.
|
|
26
|
-
from cognite.neat.
|
|
25
|
+
from cognite.neat._v0.core._issues.warnings import PropertyDefinitionDuplicatedWarning
|
|
26
|
+
from cognite.neat._v0.core._utils.rdf_ import remove_namespace_from_uri
|
|
27
27
|
|
|
28
28
|
from ._base import BaseExporter
|
|
29
29
|
|
|
@@ -5,15 +5,15 @@ from typing import TYPE_CHECKING, Any, Generic
|
|
|
5
5
|
|
|
6
6
|
from rdflib import URIRef
|
|
7
7
|
|
|
8
|
-
from cognite.neat.
|
|
9
|
-
from cognite.neat.
|
|
8
|
+
from cognite.neat._v0.core._constants import DEFAULT_NAMESPACE
|
|
9
|
+
from cognite.neat._v0.core._data_model._shared import (
|
|
10
10
|
ImportedDataModel,
|
|
11
11
|
T_UnverifiedDataModel,
|
|
12
12
|
)
|
|
13
|
-
from cognite.neat.
|
|
13
|
+
from cognite.neat._v0.core._utils.auxiliary import class_html_doc
|
|
14
14
|
|
|
15
15
|
if TYPE_CHECKING:
|
|
16
|
-
from cognite.neat.
|
|
16
|
+
from cognite.neat._v0.core._store._provenance import Agent as ProvenanceAgent
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
class BaseImporter(ABC, Generic[T_UnverifiedDataModel]):
|
|
@@ -51,7 +51,7 @@ class BaseImporter(ABC, Generic[T_UnverifiedDataModel]):
|
|
|
51
51
|
@property
|
|
52
52
|
def agent(self) -> "ProvenanceAgent":
|
|
53
53
|
"""Provenance agent for the importer."""
|
|
54
|
-
from cognite.neat.
|
|
54
|
+
from cognite.neat._v0.core._store._provenance import Agent as ProvenanceAgent
|
|
55
55
|
|
|
56
56
|
return ProvenanceAgent(id_=DEFAULT_NAMESPACE[f"agent/{type(self).__name__}"])
|
|
57
57
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
from pathlib import Path
|
|
2
2
|
from typing import Protocol, TypeVar
|
|
3
3
|
|
|
4
|
-
from cognite.neat.
|
|
5
|
-
from cognite.neat.
|
|
4
|
+
from cognite.neat._v0.core._issues import NeatIssue
|
|
5
|
+
from cognite.neat._v0.core._issues.errors import (
|
|
6
6
|
FileNotAFileError,
|
|
7
7
|
FileNotFoundNeatError,
|
|
8
8
|
FileTypeUnexpectedError,
|