cognite-neat 0.113.4__tar.gz → 0.114.0__tar.gz
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.
Potentially problematic release.
This version of cognite-neat might be problematic. Click here for more details.
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/PKG-INFO +1 -1
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/_api/data_modeling_loaders.py +87 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/_rules2dms.py +7 -1
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_to.py +3 -1
- cognite_neat-0.114.0/cognite/neat/_version.py +2 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/pyproject.toml +3 -1
- cognite_neat-0.113.4/cognite/neat/_version.py +0 -2
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/LICENSE +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/README.md +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_alpha.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/_api/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/_api/schema.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/_api_client.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/data_classes/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/data_classes/data_modeling.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/data_classes/neat_sequence.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/data_classes/schema.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/testing.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_config.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_constants.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/_shared.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/_tracking/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/_tracking/base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/_tracking/log.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/examples/Knowledge-Graph-Nordic44-dirty.xml +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/examples/Knowledge-Graph-Nordic44.xml +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/examples/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/examples/skos-capturing-sheet-wind-topics.xlsx +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_assets.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_classic.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_data_sets.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_events.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_files.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_labels.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_relationships.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_sequences.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_timeseries.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_dexpi.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_dict.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_dms.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_dms_graph.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_iodd.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_mock_graph_generator.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_raw.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_rdf_file.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/loaders/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/loaders/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/loaders/_rdf2dms.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/queries/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/queries/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_classic_cdf.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_iodd.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_prune_graph.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_rdfpath.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_value_type.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/_contextmanagers.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/_factory.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/errors/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/errors/_external.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/errors/_general.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/errors/_properties.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/errors/_resources.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/errors/_wrapper.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/formatters.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/warnings/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/warnings/_external.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/warnings/_general.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/warnings/_models.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/warnings/_properties.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/warnings/_resources.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/warnings/user_modeling.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/_constants.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/_shared.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/analysis/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/analysis/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/catalog/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/catalog/classic_model.xlsx +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/catalog/hello_world_pump.xlsx +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/catalog/info-rules-imf.xlsx +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/_rules2excel.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/_rules2instance_template.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/_rules2ontology.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/_rules2yaml.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/_validation.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_dms2rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_dtdl2rules/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_dtdl2rules/_unit_lookup.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_dtdl2rules/dtdl_converter.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_dtdl2rules/dtdl_importer.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_dtdl2rules/spec.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/_imf2rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/_inference2rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/_owl2rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/_shared.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_spreadsheet2rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_yaml2rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/_base_input.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/_base_rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/_types.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/data_types.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/dms/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/dms/_exporter.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/dms/_rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/dms/_rules_input.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/dms/_validation.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_constants.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_loaders.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_multi_value.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_single_value.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_types.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_wrapped.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/information/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/information/_rules.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/information/_rules_input.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/information/_validation.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/mapping/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/mapping/_classic2core.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/mapping/_classic2core.yaml +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/transformers/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/transformers/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/transformers/_converters.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/transformers/_mapping.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/transformers/_verification.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_collector.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_create.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_drop.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_explore.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_fix.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_inspect.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_mapping.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_prepare.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_read.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_set.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_show.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_state.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_subset.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/_wizard.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/engine/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/engine/_import.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/engine/_interface.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/engine/_load.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_session/exceptions.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_shared.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_store/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_store/_graph_store.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_store/_provenance.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_store/_rules_store.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_store/exceptions.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/auth.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/auxiliary.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/collection_.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/graph_transformations_report.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/io_.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/rdf_.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/reader/__init__.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/reader/_base.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/spreadsheet.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/text.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/time_.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/upload.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/xml_.py +0 -0
- {cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/py.typed +0 -0
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/_api/data_modeling_loaders.py
RENAMED
|
@@ -291,6 +291,8 @@ class DataModelingLoader(
|
|
|
291
291
|
ResourceLoader[T_ID, T_WriteClass, T_WritableCogniteResource, T_CogniteResourceList, T_WritableCogniteResourceList],
|
|
292
292
|
ABC,
|
|
293
293
|
):
|
|
294
|
+
support_merge: ClassVar[bool] = True
|
|
295
|
+
|
|
294
296
|
@classmethod
|
|
295
297
|
def in_space(cls, item: T_WriteClass | T_WritableCogniteResource | T_ID, space: set[str]) -> bool:
|
|
296
298
|
if hasattr(item, "space"):
|
|
@@ -302,9 +304,15 @@ class DataModelingLoader(
|
|
|
302
304
|
def items_from_schema(cls, schema: DMSSchema) -> T_CogniteResourceList:
|
|
303
305
|
raise NotImplementedError
|
|
304
306
|
|
|
307
|
+
@classmethod
|
|
308
|
+
@abstractmethod
|
|
309
|
+
def merge(cls, local: T_WriteClass, remote: T_WritableCogniteResource) -> T_WriteClass:
|
|
310
|
+
raise NotImplementedError
|
|
311
|
+
|
|
305
312
|
|
|
306
313
|
class SpaceLoader(DataModelingLoader[str, SpaceApply, Space, SpaceApplyList, SpaceList]):
|
|
307
314
|
resource_name = "spaces"
|
|
315
|
+
support_merge = False
|
|
308
316
|
|
|
309
317
|
@classmethod
|
|
310
318
|
def get_id(cls, item: Space | SpaceApply | str | dict) -> str:
|
|
@@ -314,6 +322,10 @@ class SpaceLoader(DataModelingLoader[str, SpaceApply, Space, SpaceApplyList, Spa
|
|
|
314
322
|
return item["space"]
|
|
315
323
|
return item
|
|
316
324
|
|
|
325
|
+
@classmethod
|
|
326
|
+
def merge(cls, local: SpaceApply, remote: Space) -> SpaceApply:
|
|
327
|
+
raise NotImplementedError("Spaces cannot be merged")
|
|
328
|
+
|
|
317
329
|
def _create(self, items: Sequence[SpaceApply]) -> SpaceList:
|
|
318
330
|
return self._client.data_modeling.spaces.apply(items)
|
|
319
331
|
|
|
@@ -401,6 +413,28 @@ class ContainerLoader(DataModelingLoader[ContainerId, ContainerApply, Container,
|
|
|
401
413
|
return ContainerId.load(item)
|
|
402
414
|
return item
|
|
403
415
|
|
|
416
|
+
@classmethod
|
|
417
|
+
def merge(cls, local: ContainerApply, remote: Container) -> ContainerApply:
|
|
418
|
+
if local.as_id() != remote.as_id():
|
|
419
|
+
raise ValueError(f"Cannot merge containers with different IDs: {local.as_id()} and {remote.as_id()}")
|
|
420
|
+
if local.used_for != remote.used_for:
|
|
421
|
+
raise ValueError(f"Cannot merge containers with different used_for: {local.used_for} and {remote.used_for}")
|
|
422
|
+
remote_write = remote.as_write()
|
|
423
|
+
existing_properties = remote_write.properties or {}
|
|
424
|
+
merged_properties = {**existing_properties, **(local.properties or {})}
|
|
425
|
+
merged_indices = {**remote_write.indexes, **local.indexes}
|
|
426
|
+
merged_constraints = {**remote_write.constraints, **local.constraints}
|
|
427
|
+
return ContainerApply(
|
|
428
|
+
space=remote.space,
|
|
429
|
+
external_id=remote.external_id,
|
|
430
|
+
properties=merged_properties,
|
|
431
|
+
description=local.description or remote.description,
|
|
432
|
+
name=local.name or remote.name,
|
|
433
|
+
used_for=local.used_for,
|
|
434
|
+
constraints=merged_constraints,
|
|
435
|
+
indexes=merged_indices,
|
|
436
|
+
)
|
|
437
|
+
|
|
404
438
|
def sort_by_dependencies(self, items: Sequence[ContainerApply]) -> list[ContainerApply]:
|
|
405
439
|
container_by_id = {container.as_id(): container for container in items}
|
|
406
440
|
container_dependencies = {
|
|
@@ -561,6 +595,28 @@ class ViewLoader(DataModelingLoader[ViewId, ViewApply, View, ViewApplyList, View
|
|
|
561
595
|
return ViewId.load(item)
|
|
562
596
|
return item
|
|
563
597
|
|
|
598
|
+
@classmethod
|
|
599
|
+
def merge(cls, local: ViewApply, remote: View) -> ViewApply:
|
|
600
|
+
if local.as_id() != remote.as_id():
|
|
601
|
+
raise ValueError(f"Cannot merge views with different IDs: {local.as_id()} and {remote.as_id()}")
|
|
602
|
+
remote_write = remote.as_write()
|
|
603
|
+
existing_properties = remote_write.properties or {}
|
|
604
|
+
merged_properties = {**existing_properties, **(local.properties or {})}
|
|
605
|
+
merged_implements = list(remote_write.implements or [])
|
|
606
|
+
for view_id in local.implements or []:
|
|
607
|
+
if view_id not in merged_implements:
|
|
608
|
+
merged_implements.append(view_id)
|
|
609
|
+
return ViewApply(
|
|
610
|
+
space=remote.space,
|
|
611
|
+
external_id=remote.external_id,
|
|
612
|
+
version=remote.version,
|
|
613
|
+
properties=merged_properties,
|
|
614
|
+
description=local.description or remote.description,
|
|
615
|
+
name=local.name or remote.name,
|
|
616
|
+
filter=local.filter or remote.filter,
|
|
617
|
+
implements=merged_implements,
|
|
618
|
+
)
|
|
619
|
+
|
|
564
620
|
def _create(self, items: Sequence[ViewApply]) -> ViewList:
|
|
565
621
|
return self._client.data_modeling.views.apply(items)
|
|
566
622
|
|
|
@@ -736,6 +792,32 @@ class DataModelLoader(DataModelingLoader[DataModelId, DataModelApply, DataModel,
|
|
|
736
792
|
return DataModelId.load(item)
|
|
737
793
|
return item
|
|
738
794
|
|
|
795
|
+
@classmethod
|
|
796
|
+
def merge(cls, local: DataModelApply, remote: DataModel) -> DataModelApply:
|
|
797
|
+
if local.as_id() != remote.as_id():
|
|
798
|
+
raise ValueError(f"Cannot merge data models with different IDs: {local.as_id()} and {remote.as_id()}")
|
|
799
|
+
existing_view = {
|
|
800
|
+
view.as_id() if isinstance(view, View) else view: view.as_write() if isinstance(view, View) else view
|
|
801
|
+
for view in remote.views
|
|
802
|
+
}
|
|
803
|
+
new_views = {view.as_id() if isinstance(view, ViewApply) else view: view for view in local.views or []}
|
|
804
|
+
merged_views: list[ViewId | ViewApply] = []
|
|
805
|
+
for view_id, view in existing_view.items():
|
|
806
|
+
if view_id in new_views:
|
|
807
|
+
merged_views.append(new_views.pop(view_id))
|
|
808
|
+
else:
|
|
809
|
+
merged_views.append(view)
|
|
810
|
+
merged_views.extend(new_views.values())
|
|
811
|
+
|
|
812
|
+
return DataModelApply(
|
|
813
|
+
space=local.space,
|
|
814
|
+
external_id=local.external_id,
|
|
815
|
+
version=local.version,
|
|
816
|
+
description=local.description or remote.description,
|
|
817
|
+
name=local.name or remote.name,
|
|
818
|
+
views=merged_views,
|
|
819
|
+
)
|
|
820
|
+
|
|
739
821
|
def _create(self, items: Sequence[DataModelApply]) -> DataModelList:
|
|
740
822
|
return self._client.data_modeling.data_models.apply(items)
|
|
741
823
|
|
|
@@ -774,6 +856,7 @@ class DataModelLoader(DataModelingLoader[DataModelId, DataModelApply, DataModel,
|
|
|
774
856
|
class NodeLoader(DataModelingLoader[NodeId, NodeApply, Node, NodeApplyList, NodeList]):
|
|
775
857
|
resource_name = "nodes"
|
|
776
858
|
dependencies = frozenset({SpaceLoader, ContainerLoader, ViewLoader})
|
|
859
|
+
support_merge = False
|
|
777
860
|
|
|
778
861
|
@classmethod
|
|
779
862
|
def get_id(cls, item: Node | NodeApply | NodeId | dict) -> NodeId:
|
|
@@ -783,6 +866,10 @@ class NodeLoader(DataModelingLoader[NodeId, NodeApply, Node, NodeApplyList, Node
|
|
|
783
866
|
return NodeId.load(item)
|
|
784
867
|
return item
|
|
785
868
|
|
|
869
|
+
@classmethod
|
|
870
|
+
def merge(cls, local: NodeApply, remote: Node) -> NodeApply:
|
|
871
|
+
raise NotImplementedError("Nodes cannot be merged")
|
|
872
|
+
|
|
786
873
|
def _create(self, items: Sequence[NodeApply]) -> NodeList:
|
|
787
874
|
self._client.data_modeling.instances.apply(items)
|
|
788
875
|
return self._retrieve([item.as_id() for item in items])
|
|
@@ -344,9 +344,15 @@ class DMSExporter(CDFExporter[DMSRules, DMSSchema]):
|
|
|
344
344
|
categorized.to_skip.append(cdf_item)
|
|
345
345
|
else:
|
|
346
346
|
categorized.to_delete.append(cdf_item.as_write())
|
|
347
|
-
|
|
347
|
+
if isinstance(item, dm.DataModelApply) and self.existing != "recreate":
|
|
348
|
+
# Mypy failing to understand the output of merge is T_WriteClass.
|
|
349
|
+
categorized.to_create.append(loader.merge(item, cdf_item)) # type: ignore[arg-type]
|
|
350
|
+
else:
|
|
351
|
+
categorized.to_create.append(item)
|
|
348
352
|
elif loader.are_equal(item, cdf_item):
|
|
349
353
|
categorized.unchanged.append(item)
|
|
354
|
+
elif loader.support_merge:
|
|
355
|
+
categorized.to_update.append(loader.merge(item, cdf_item))
|
|
350
356
|
else:
|
|
351
357
|
categorized.to_update.append(item)
|
|
352
358
|
return categorized
|
|
@@ -364,7 +364,9 @@ class CDFToAPI:
|
|
|
364
364
|
!!! note "Data Model creation modes"
|
|
365
365
|
- "fail": If any component already exists, the export will fail.
|
|
366
366
|
- "skip": If any component already exists, it will be skipped.
|
|
367
|
-
- "update": If any component already exists, it will be updated.
|
|
367
|
+
- "update": If any component already exists, it will be updated. For data models, views, and containers
|
|
368
|
+
this means combining the existing and new component. Fo example, for data models the new
|
|
369
|
+
views will be added to the existing views.
|
|
368
370
|
- "force": If any component already exists, and the update fails, it will be deleted and recreated.
|
|
369
371
|
- "recreate": All components will be deleted and recreated. The exception is spaces, which will be updated.
|
|
370
372
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "cognite-neat"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.114.0"
|
|
4
4
|
readme = "README.md"
|
|
5
5
|
description = "Knowledge graph transformation"
|
|
6
6
|
authors = [
|
|
@@ -121,6 +121,7 @@ docs = [
|
|
|
121
121
|
google = ["gspread", "google-api-python-client", "google-auth-oauthlib"]
|
|
122
122
|
oxi = ["oxrdflib", "pyoxigraph"]
|
|
123
123
|
|
|
124
|
+
|
|
124
125
|
all = [
|
|
125
126
|
"pyoxigraph",
|
|
126
127
|
"oxrdflib",
|
|
@@ -155,6 +156,7 @@ types-tqdm = "^4.67.0.20241221"
|
|
|
155
156
|
networkx-stubs = "^0.0.1"
|
|
156
157
|
cognite-toolkit = "^0.4.8"
|
|
157
158
|
tqdm = "^4.67.1"
|
|
159
|
+
deepdiff = "^8.2.0"
|
|
158
160
|
|
|
159
161
|
[build-system]
|
|
160
162
|
requires = ["poetry>=0.12"]
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/data_classes/data_modeling.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_client/data_classes/neat_sequence.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_assets.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_base.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_events.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_files.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/extractors/_classic_cdf/_labels.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_classic_cdf.py
RENAMED
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_prune_graph.py
RENAMED
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_graph/transformers/_value_type.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_issues/warnings/user_modeling.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/catalog/classic_model.xlsx
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/catalog/hello_world_pump.xlsx
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/catalog/info-rules-imf.xlsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/exporters/_rules2ontology.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_dtdl2rules/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_dtdl2rules/spec.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/_imf2rules.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/_inference2rules.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_rdf/_owl2rules.py
RENAMED
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/importers/_spreadsheet2rules.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/dms/_rules_input.py
RENAMED
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/__init__.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_constants.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_loaders.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_multi_value.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_single_value.py
RENAMED
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/entities/_wrapped.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/information/__init__.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/information/_rules.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/information/_rules_input.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/information/_validation.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/mapping/__init__.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/mapping/_classic2core.py
RENAMED
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/models/mapping/_classic2core.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/transformers/_converters.py
RENAMED
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_rules/transformers/_verification.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.113.4 → cognite_neat-0.114.0}/cognite/neat/_utils/graph_transformations_report.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|