cognite-neat 0.123.26__tar.gz → 1.0.9__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.
- cognite_neat-1.0.9/PKG-INFO +111 -0
- cognite_neat-1.0.9/README.md +56 -0
- cognite_neat-1.0.9/cognite/neat/__init__.py +7 -0
- cognite_neat-1.0.9/cognite/neat/_client/__init__.py +4 -0
- cognite_neat-1.0.9/cognite/neat/_client/api.py +8 -0
- cognite_neat-1.0.9/cognite/neat/_client/client.py +21 -0
- cognite_neat-1.0.9/cognite/neat/_client/config.py +40 -0
- cognite_neat-1.0.9/cognite/neat/_client/containers_api.py +138 -0
- cognite_neat-1.0.9/cognite/neat/_client/data_classes.py +44 -0
- cognite_neat-1.0.9/cognite/neat/_client/data_model_api.py +115 -0
- cognite_neat-1.0.9/cognite/neat/_client/spaces_api.py +115 -0
- cognite_neat-1.0.9/cognite/neat/_client/statistics_api.py +24 -0
- cognite_neat-1.0.9/cognite/neat/_client/views_api.py +144 -0
- cognite_neat-1.0.9/cognite/neat/_config.py +250 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/_analysis.py +196 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/_constants.py +67 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/_identifiers.py +61 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/_shared.py +41 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/deployer/_differ.py +140 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/deployer/_differ_container.py +360 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/deployer/_differ_data_model.py +54 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/deployer/_differ_space.py +9 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/deployer/_differ_view.py +299 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/deployer/data_classes.py +638 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/deployer/deployer.py +442 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/exporters/__init__.py +15 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/exporters/_api_exporter.py +37 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/exporters/_base.py +24 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/exporters/_table_exporter/exporter.py +128 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/exporters/_table_exporter/workbook.py +409 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/exporters/_table_exporter/writer.py +424 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/importers/__init__.py +5 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/importers/_api_importer.py +166 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/importers/_base.py +16 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/importers/_table_importer/data_classes.py +295 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/importers/_table_importer/importer.py +192 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/importers/_table_importer/reader.py +1063 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/importers/_table_importer/source.py +94 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/conceptual/_base.py +18 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/conceptual/_concept.py +67 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/conceptual/_data_model.py +51 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/conceptual/_properties.py +104 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/conceptual/_property.py +105 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/__init__.py +206 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_base.py +31 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_constants.py +48 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_constraints.py +42 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_container.py +159 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_data_model.py +95 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_data_types.py +195 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_http.py +28 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_indexes.py +30 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_limits.py +96 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_references.py +135 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_schema.py +18 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_space.py +48 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_types.py +17 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_view_filter.py +285 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_view_property.py +235 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/dms/_views.py +210 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/entities/__init__.py +50 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/entities/_base.py +101 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/entities/_constants.py +22 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/entities/_data_types.py +144 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/entities/_identifiers.py +61 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/models/entities/_parser.py +226 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/__init__.py +75 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/_ai_readiness.py +364 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/_base.py +349 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/_connections.py +638 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/_consistency.py +57 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/_containers.py +174 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/_limits.py +420 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/_orchestrator.py +222 -0
- cognite_neat-1.0.9/cognite/neat/_data_model/validation/dms/_views.py +103 -0
- cognite_neat-1.0.9/cognite/neat/_exceptions.py +56 -0
- cognite_neat-1.0.9/cognite/neat/_issues.py +68 -0
- cognite_neat-1.0.9/cognite/neat/_session/__init__.py +3 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/_render.py +30 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/static/__init__.py +8 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/static/deployment.css +476 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/static/deployment.js +181 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/static/issues.css +211 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/static/issues.js +168 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/static/shared.css +186 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/templates/__init__.py +4 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/templates/deployment.html +80 -0
- cognite_neat-1.0.9/cognite/neat/_session/_html/templates/issues.html +45 -0
- cognite_neat-1.0.9/cognite/neat/_session/_issues.py +81 -0
- cognite_neat-1.0.9/cognite/neat/_session/_physical.py +266 -0
- cognite_neat-1.0.9/cognite/neat/_session/_result/__init__.py +3 -0
- cognite_neat-1.0.9/cognite/neat/_session/_result/_deployment/_physical/_changes.py +195 -0
- cognite_neat-1.0.9/cognite/neat/_session/_result/_deployment/_physical/_statistics.py +180 -0
- cognite_neat-1.0.9/cognite/neat/_session/_result/_deployment/_physical/serializer.py +35 -0
- cognite_neat-1.0.9/cognite/neat/_session/_result/_result.py +31 -0
- cognite_neat-1.0.9/cognite/neat/_session/_session.py +81 -0
- cognite_neat-1.0.9/cognite/neat/_session/_usage_analytics/_collector.py +131 -0
- cognite_neat-1.0.9/cognite/neat/_session/_usage_analytics/_constants.py +23 -0
- cognite_neat-1.0.9/cognite/neat/_session/_usage_analytics/_storage.py +240 -0
- cognite_neat-1.0.9/cognite/neat/_session/_wrappers.py +82 -0
- cognite_neat-1.0.9/cognite/neat/_state_machine/__init__.py +10 -0
- cognite_neat-1.0.9/cognite/neat/_state_machine/_base.py +37 -0
- cognite_neat-1.0.9/cognite/neat/_state_machine/_states.py +52 -0
- cognite_neat-1.0.9/cognite/neat/_store/__init__.py +3 -0
- cognite_neat-1.0.9/cognite/neat/_store/_provenance.py +81 -0
- cognite_neat-1.0.9/cognite/neat/_store/_store.py +156 -0
- cognite_neat-1.0.9/cognite/neat/_utils/_reader.py +194 -0
- cognite_neat-1.0.9/cognite/neat/_utils/auxiliary.py +39 -0
- cognite_neat-1.0.9/cognite/neat/_utils/collection.py +11 -0
- cognite_neat-1.0.9/cognite/neat/_utils/http_client/__init__.py +39 -0
- cognite_neat-1.0.9/cognite/neat/_utils/http_client/_client.py +245 -0
- cognite_neat-1.0.9/cognite/neat/_utils/http_client/_config.py +19 -0
- cognite_neat-1.0.9/cognite/neat/_utils/http_client/_data_classes.py +294 -0
- cognite_neat-1.0.9/cognite/neat/_utils/http_client/_tracker.py +31 -0
- cognite_neat-1.0.9/cognite/neat/_utils/text.py +71 -0
- cognite_neat-1.0.9/cognite/neat/_utils/useful_types.py +37 -0
- cognite_neat-1.0.9/cognite/neat/_utils/validation.py +154 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_client/_api/data_modeling_loaders.py +1032 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_client/_api/neat_instances.py +101 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_client/_api/schema.py +158 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_client/_api/statistics.py +91 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_client/_api_client.py +21 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_client/data_classes/schema.py +540 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_client/testing.py +39 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_constants.py +278 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/_constants.py +210 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/_shared.py +59 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/analysis/_base.py +578 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/exporters/__init__.py +38 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/exporters/_base.py +67 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/exporters/_data_model2dms.py +428 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/exporters/_data_model2excel.py +612 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/exporters/_data_model2instance_template.py +158 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/exporters/_data_model2semantic_model.py +646 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/exporters/_data_model2yaml.py +84 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_base.py +64 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_base_file_reader.py +56 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_dict2data_model.py +131 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_dms2data_model.py +705 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_graph2data_model.py +299 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_rdf/_base.py +161 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_rdf/_inference2rdata_model.py +618 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_rdf/_owl2data_model.py +144 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_rdf/_shared.py +255 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/importers/_spreadsheet2data_model.py +424 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/__init__.py +38 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/_base_verified.py +449 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/_import_contexts.py +82 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/_types.py +171 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/conceptual/_unverified.py +193 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/conceptual/_validation.py +308 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/conceptual/_verified.py +327 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/data_types.py +422 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/entities/__init__.py +70 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/entities/_loaders.py +155 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/entities/_multi_value.py +83 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/entities/_restrictions.py +230 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/entities/_single_value.py +676 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/entities/_types.py +103 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/mapping/_classic2core.py +39 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/physical/__init__.py +40 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/physical/_exporter.py +662 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/physical/_unverified.py +557 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/physical/_validation.py +887 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/models/physical/_verified.py +667 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/transformers/_base.py +79 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/transformers/_converters.py +2485 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/transformers/_mapping.py +390 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/transformers/_union_conceptual.py +208 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model/transformers/_verification.py +120 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/_tracking/base.py +30 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/_tracking/log.py +27 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/__init__.py +77 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_base.py +58 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_base.py +443 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_classic.py +479 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_relationships.py +122 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_classic_cdf/_sequences.py +280 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_dict.py +105 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_dms.py +315 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_dms_graph.py +238 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_mock_graph_generator.py +404 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_raw.py +67 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_rdf_file.py +80 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/loaders/_base.py +116 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/loaders/_rdf2dms.py +649 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/loaders/_rdf_to_instance_space.py +249 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/queries/_select.py +478 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/queries/_update.py +37 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/transformers/_base.py +133 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/transformers/_classic_cdf.py +589 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/transformers/_prune_graph.py +315 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/transformers/_rdfpath.py +84 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/transformers/_value_type.py +366 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/_base.py +348 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/_contextmanagers.py +50 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/_factory.py +69 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/errors/__init__.py +90 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/errors/_external.py +91 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/errors/_general.py +51 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/errors/_properties.py +80 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/errors/_resources.py +116 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/errors/_wrapper.py +93 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/warnings/__init__.py +99 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/warnings/_external.py +56 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/warnings/_general.py +46 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/warnings/_models.py +165 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/warnings/_properties.py +108 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/warnings/_resources.py +110 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_issues/warnings/user_modeling.py +125 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_store/_data_model.py +487 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_store/_instance.py +485 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_store/_provenance.py +217 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_store/exceptions.py +59 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/auth.py +374 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/auxiliary.py +169 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/collection_.py +66 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/graph_transformations_report.py +36 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/rdf_.py +336 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/reader/_base.py +194 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/spreadsheet.py +182 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/text.py +277 -0
- cognite_neat-1.0.9/cognite/neat/_v0/core/_utils/upload.py +134 -0
- cognite_neat-1.0.9/cognite/neat/_v0/engine/_load.py +131 -0
- cognite_neat-1.0.9/cognite/neat/_v0/plugins/__init__.py +4 -0
- cognite_neat-1.0.9/cognite/neat/_v0/plugins/_base.py +9 -0
- cognite_neat-1.0.9/cognite/neat/_v0/plugins/_data_model.py +48 -0
- cognite_neat-1.0.9/cognite/neat/_v0/plugins/_issues.py +35 -0
- cognite_neat-1.0.9/cognite/neat/_v0/plugins/_manager.py +94 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_base.py +332 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_collector.py +131 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_diff.py +51 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_drop.py +103 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_explore.py +39 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_fix.py +28 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_inspect.py +285 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_mapping.py +71 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_plugin.py +66 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_prepare.py +286 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_read.py +923 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_set.py +101 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_show.py +298 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_state.py +161 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_subset.py +88 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_template.py +208 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_to.py +454 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/_wizard.py +44 -0
- cognite_neat-1.0.9/cognite/neat/_v0/session/exceptions.py +103 -0
- cognite_neat-1.0.9/cognite/neat/_version.py +2 -0
- cognite_neat-1.0.9/cognite/neat/legacy.py +6 -0
- cognite_neat-1.0.9/pyproject.toml +170 -0
- cognite_neat-0.123.26/.coveragerc +0 -11
- cognite_neat-0.123.26/.gemini/styleguide.md +0 -177
- cognite_neat-0.123.26/.github/CODEOWNERS +0 -2
- cognite_neat-0.123.26/.github/ISSUE_TEMPLATE/bug-report.md +0 -28
- cognite_neat-0.123.26/.github/ISSUE_TEMPLATE/feature-request.md +0 -19
- cognite_neat-0.123.26/.github/pull_request_template.md +0 -14
- cognite_neat-0.123.26/.github/renovate.json +0 -18
- cognite_neat-0.123.26/.github/workflows/code-quality.yaml +0 -150
- cognite_neat-0.123.26/.github/workflows/release.yaml +0 -148
- cognite_neat-0.123.26/.gitignore +0 -183
- cognite_neat-0.123.26/.pre-commit-config.yaml +0 -30
- cognite_neat-0.123.26/.readthedocs.yaml +0 -22
- cognite_neat-0.123.26/CODE_OF_CONDUCT.md +0 -128
- cognite_neat-0.123.26/CONTRIBUTING.md +0 -52
- cognite_neat-0.123.26/LICENSE +0 -201
- cognite_neat-0.123.26/PKG-INFO +0 -144
- cognite_neat-0.123.26/README.md +0 -90
- cognite_neat-0.123.26/cdf.toml +0 -18
- cognite_neat-0.123.26/codecov.yml +0 -23
- cognite_neat-0.123.26/cognite/neat/__init__.py +0 -6
- cognite_neat-0.123.26/cognite/neat/_version.py +0 -2
- cognite_neat-0.123.26/cognite/neat/core/_client/_api/data_modeling_loaders.py +0 -1031
- cognite_neat-0.123.26/cognite/neat/core/_client/_api/neat_instances.py +0 -101
- cognite_neat-0.123.26/cognite/neat/core/_client/_api/schema.py +0 -158
- cognite_neat-0.123.26/cognite/neat/core/_client/_api/statistics.py +0 -91
- cognite_neat-0.123.26/cognite/neat/core/_client/_api_client.py +0 -21
- cognite_neat-0.123.26/cognite/neat/core/_client/data_classes/schema.py +0 -540
- cognite_neat-0.123.26/cognite/neat/core/_client/testing.py +0 -39
- cognite_neat-0.123.26/cognite/neat/core/_constants.py +0 -276
- cognite_neat-0.123.26/cognite/neat/core/_data_model/_constants.py +0 -203
- cognite_neat-0.123.26/cognite/neat/core/_data_model/_shared.py +0 -59
- cognite_neat-0.123.26/cognite/neat/core/_data_model/analysis/_base.py +0 -578
- cognite_neat-0.123.26/cognite/neat/core/_data_model/exporters/__init__.py +0 -39
- cognite_neat-0.123.26/cognite/neat/core/_data_model/exporters/_base.py +0 -67
- cognite_neat-0.123.26/cognite/neat/core/_data_model/exporters/_data_model2dms.py +0 -428
- cognite_neat-0.123.26/cognite/neat/core/_data_model/exporters/_data_model2excel.py +0 -612
- cognite_neat-0.123.26/cognite/neat/core/_data_model/exporters/_data_model2instance_template.py +0 -158
- cognite_neat-0.123.26/cognite/neat/core/_data_model/exporters/_data_model2ontology.py +0 -636
- cognite_neat-0.123.26/cognite/neat/core/_data_model/exporters/_data_model2yaml.py +0 -84
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_base.py +0 -64
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_base_file_reader.py +0 -56
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_dict2data_model.py +0 -131
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_dms2data_model.py +0 -702
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_graph2data_model.py +0 -299
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_rdf/_base.py +0 -161
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_rdf/_inference2rdata_model.py +0 -618
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_rdf/_owl2data_model.py +0 -124
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_rdf/_shared.py +0 -255
- cognite_neat-0.123.26/cognite/neat/core/_data_model/importers/_spreadsheet2data_model.py +0 -344
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/__init__.py +0 -38
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/_base_verified.py +0 -449
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/_import_contexts.py +0 -82
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/_types.py +0 -171
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/conceptual/_unverified.py +0 -187
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/conceptual/_validation.py +0 -308
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/conceptual/_verified.py +0 -327
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/data_types.py +0 -412
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/entities/__init__.py +0 -64
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/entities/_loaders.py +0 -75
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/entities/_multi_value.py +0 -83
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/entities/_single_value.py +0 -571
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/entities/_types.py +0 -93
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/mapping/_classic2core.py +0 -39
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/physical/__init__.py +0 -40
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/physical/_exporter.py +0 -655
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/physical/_unverified.py +0 -461
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/physical/_validation.py +0 -883
- cognite_neat-0.123.26/cognite/neat/core/_data_model/models/physical/_verified.py +0 -596
- cognite_neat-0.123.26/cognite/neat/core/_data_model/transformers/_base.py +0 -79
- cognite_neat-0.123.26/cognite/neat/core/_data_model/transformers/_converters.py +0 -2478
- cognite_neat-0.123.26/cognite/neat/core/_data_model/transformers/_mapping.py +0 -390
- cognite_neat-0.123.26/cognite/neat/core/_data_model/transformers/_union_conceptual.py +0 -208
- cognite_neat-0.123.26/cognite/neat/core/_data_model/transformers/_verification.py +0 -120
- cognite_neat-0.123.26/cognite/neat/core/_instances/_tracking/base.py +0 -30
- cognite_neat-0.123.26/cognite/neat/core/_instances/_tracking/log.py +0 -27
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/__init__.py +0 -76
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_base.py +0 -58
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_classic_cdf/_base.py +0 -443
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_classic_cdf/_classic.py +0 -479
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_classic_cdf/_relationships.py +0 -122
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_classic_cdf/_sequences.py +0 -280
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_dict.py +0 -102
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_dms.py +0 -315
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_dms_graph.py +0 -238
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_mock_graph_generator.py +0 -404
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_raw.py +0 -67
- cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_rdf_file.py +0 -80
- cognite_neat-0.123.26/cognite/neat/core/_instances/loaders/_base.py +0 -116
- cognite_neat-0.123.26/cognite/neat/core/_instances/loaders/_rdf2dms.py +0 -649
- cognite_neat-0.123.26/cognite/neat/core/_instances/loaders/_rdf_to_instance_space.py +0 -249
- cognite_neat-0.123.26/cognite/neat/core/_instances/queries/_select.py +0 -452
- cognite_neat-0.123.26/cognite/neat/core/_instances/queries/_update.py +0 -37
- cognite_neat-0.123.26/cognite/neat/core/_instances/transformers/_base.py +0 -133
- cognite_neat-0.123.26/cognite/neat/core/_instances/transformers/_classic_cdf.py +0 -589
- cognite_neat-0.123.26/cognite/neat/core/_instances/transformers/_prune_graph.py +0 -315
- cognite_neat-0.123.26/cognite/neat/core/_instances/transformers/_rdfpath.py +0 -84
- cognite_neat-0.123.26/cognite/neat/core/_instances/transformers/_value_type.py +0 -366
- cognite_neat-0.123.26/cognite/neat/core/_issues/_base.py +0 -348
- cognite_neat-0.123.26/cognite/neat/core/_issues/_contextmanagers.py +0 -50
- cognite_neat-0.123.26/cognite/neat/core/_issues/_factory.py +0 -69
- cognite_neat-0.123.26/cognite/neat/core/_issues/errors/__init__.py +0 -90
- cognite_neat-0.123.26/cognite/neat/core/_issues/errors/_external.py +0 -91
- cognite_neat-0.123.26/cognite/neat/core/_issues/errors/_general.py +0 -51
- cognite_neat-0.123.26/cognite/neat/core/_issues/errors/_properties.py +0 -80
- cognite_neat-0.123.26/cognite/neat/core/_issues/errors/_resources.py +0 -116
- cognite_neat-0.123.26/cognite/neat/core/_issues/errors/_wrapper.py +0 -89
- cognite_neat-0.123.26/cognite/neat/core/_issues/warnings/__init__.py +0 -99
- cognite_neat-0.123.26/cognite/neat/core/_issues/warnings/_external.py +0 -56
- cognite_neat-0.123.26/cognite/neat/core/_issues/warnings/_general.py +0 -46
- cognite_neat-0.123.26/cognite/neat/core/_issues/warnings/_models.py +0 -165
- cognite_neat-0.123.26/cognite/neat/core/_issues/warnings/_properties.py +0 -108
- cognite_neat-0.123.26/cognite/neat/core/_issues/warnings/_resources.py +0 -110
- cognite_neat-0.123.26/cognite/neat/core/_issues/warnings/user_modeling.py +0 -125
- cognite_neat-0.123.26/cognite/neat/core/_store/_data_model.py +0 -487
- cognite_neat-0.123.26/cognite/neat/core/_store/_instance.py +0 -452
- cognite_neat-0.123.26/cognite/neat/core/_store/_provenance.py +0 -217
- cognite_neat-0.123.26/cognite/neat/core/_store/exceptions.py +0 -59
- cognite_neat-0.123.26/cognite/neat/core/_utils/auth.py +0 -364
- cognite_neat-0.123.26/cognite/neat/core/_utils/auxiliary.py +0 -169
- cognite_neat-0.123.26/cognite/neat/core/_utils/collection_.py +0 -66
- cognite_neat-0.123.26/cognite/neat/core/_utils/graph_transformations_report.py +0 -36
- cognite_neat-0.123.26/cognite/neat/core/_utils/rdf_.py +0 -336
- cognite_neat-0.123.26/cognite/neat/core/_utils/reader/_base.py +0 -194
- cognite_neat-0.123.26/cognite/neat/core/_utils/spreadsheet.py +0 -168
- cognite_neat-0.123.26/cognite/neat/core/_utils/text.py +0 -277
- cognite_neat-0.123.26/cognite/neat/core/_utils/upload.py +0 -134
- cognite_neat-0.123.26/cognite/neat/plugins/__init__.py +0 -3
- cognite_neat-0.123.26/cognite/neat/plugins/_issues.py +0 -35
- cognite_neat-0.123.26/cognite/neat/plugins/_manager.py +0 -103
- cognite_neat-0.123.26/cognite/neat/plugins/data_model/importers/__init__.py +0 -5
- cognite_neat-0.123.26/cognite/neat/plugins/data_model/importers/_base.py +0 -28
- cognite_neat-0.123.26/cognite/neat/session/_base.py +0 -334
- cognite_neat-0.123.26/cognite/neat/session/_collector.py +0 -131
- cognite_neat-0.123.26/cognite/neat/session/_drop.py +0 -103
- cognite_neat-0.123.26/cognite/neat/session/_explore.py +0 -39
- cognite_neat-0.123.26/cognite/neat/session/_fix.py +0 -28
- cognite_neat-0.123.26/cognite/neat/session/_inspect.py +0 -285
- cognite_neat-0.123.26/cognite/neat/session/_mapping.py +0 -71
- cognite_neat-0.123.26/cognite/neat/session/_plugin.py +0 -67
- cognite_neat-0.123.26/cognite/neat/session/_prepare.py +0 -286
- cognite_neat-0.123.26/cognite/neat/session/_read.py +0 -910
- cognite_neat-0.123.26/cognite/neat/session/_session/_data_model/__init__.py +0 -3
- cognite_neat-0.123.26/cognite/neat/session/_session/_data_model/_read.py +0 -193
- cognite_neat-0.123.26/cognite/neat/session/_session/_data_model/_routes.py +0 -45
- cognite_neat-0.123.26/cognite/neat/session/_session/_data_model/_show.py +0 -147
- cognite_neat-0.123.26/cognite/neat/session/_session/_data_model/_write.py +0 -335
- cognite_neat-0.123.26/cognite/neat/session/_set.py +0 -101
- cognite_neat-0.123.26/cognite/neat/session/_show.py +0 -298
- cognite_neat-0.123.26/cognite/neat/session/_state.py +0 -161
- cognite_neat-0.123.26/cognite/neat/session/_subset.py +0 -88
- cognite_neat-0.123.26/cognite/neat/session/_template.py +0 -208
- cognite_neat-0.123.26/cognite/neat/session/_to.py +0 -454
- cognite_neat-0.123.26/cognite/neat/session/_wizard.py +0 -44
- cognite_neat-0.123.26/cognite/neat/session/engine/_load.py +0 -131
- cognite_neat-0.123.26/cognite/neat/session/exceptions.py +0 -103
- cognite_neat-0.123.26/dev.py +0 -186
- cognite_neat-0.123.26/docs/artifacts/figs/DataModelCDF.PNG +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/DataModelInstancesCDF.PNG +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/DataModelInstancesVizCDF.PNG +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/aml-dm-cdf.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/aml-dm.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/aml-instances-cdf.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/aml-instances-full.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/asset_hierarchy_lift_pump_stations.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_dms.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_dms_typed.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_populated.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_populated_with_typed.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/authorship.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/base-components.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/bid_capacity_data_model.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/change_validate_step.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/connecting_metadata_dm.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/connecting_metadata_populated.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/connecting_metadata_published_dm.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/container_spec.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/core_extension.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/core_extension_excel.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/core_extension_no_connection.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/core_extension_with_properties.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/data-exploration.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/data-model-nordic44.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/data-modeling-flow.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dexpi-dm-cdf.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dexpi-dm-viz.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dexpi-graph-viz.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dexpi-instance-cdf.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dexpi-transformed-graph-viz.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dm-classes.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dm-object-shapes.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dm-prefixes.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dm-source-to-solution-mapping.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dm2cdf-asset.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/dm2cdf-mapping.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/execution-history.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/export_dms_config.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/export_dms_executed.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/export_dms_workflow.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/features.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/graph-etl-flow.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/high-level-io.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/instances-nordic44.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/instances-sheet.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/key-aspects-of-neat.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/knowledge-graph-viz-filtering.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/knowledge-graph-viz.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/life_cycle_analitic_solution_export_dms.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/life_cycle_converter_model_analytic_solution_model.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/life_cycle_download_reference_model_analytic_soluteion_model.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/life_cycle_download_reference_model_analytic_solution_model_export.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/logo.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/metadata-sheet.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/multi-hop.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/neat-high-level.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/neat-two_flows.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/neat_shift_tab.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/neat_tab.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/prefixes-sheet.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/pump_hello_world_published.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/rdf-in-nutshell.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/rdf2cdf-graph-change.jpg +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/rdf2cdf-graph-resurrect.jpg +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/rdf2cdf-graph.jpg +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/rdf2cdf-init-run-step1.jpg +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/rdf2cdf-init-run-step2.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/rdf2cdf-init-run.jpg +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/rdf2cdf-post-init.jpg +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/run_workflow.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/sheet2cdf-asset-hierarchy.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/sheet2cdf-running-workflow.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/sheet2cdf-transformation-rules-ui.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/sheet2cdf-upload-rules.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/sheet2cdf-workflow-steps.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/sheet2cdf-workflow.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/sheet2cdf-workflow.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/step-configurables.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/step-metrics.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/tutorial-notebooks-part-2_graph-capturing-sheet.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/validate_workflow.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/wf-ephemeral-mode.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/wf-overview.gif +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/wf-persistent-blocking-mode.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/wf-persistent-non-blocking.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/wf-start-mode-ui.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/wind_farm_classic_knowledge_graph.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/wind_farm_data_product_instances.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/work-in-progress.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/workflow-context.jpg +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/working_with_metadata_provenance.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/figs/working_with_metadata_published_dm.png +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/cdf-dms-architect-alice.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/dms-addition-svein-harald.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/dms-analytics-olav.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/dms-architect-rules-raw-filter-example.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/dms-architect-rules-template.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/dms-rebuild-olav.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/domain-expert-rules-template.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/expert-grid-emma.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/expert-wind-energy-jon.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/information-addition-svein-harald.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/information-analytics-olav-ref.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/information-analytics-olav.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/information-architect-david.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/rules/information-architect-rules-template.xlsx +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-1-defining-data-model.mp4 +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-1-download-rules-template.mp4 +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-1-upload-gql-schema-to-cdf.mp4 +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-2-graph-capturing-sheet.mp4 +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-3-asset-hierarchy.mp4 +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-3-decommissioning.mp4 +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-3-relationships.mp4 +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-3-resurrection.mp4 +0 -0
- cognite_neat-0.123.26/docs/artifacts/videos/tutorial-4-asset-hierarchy.mp4 +0 -0
- cognite_neat-0.123.26/docs/data-modeling-principles.md +0 -132
- cognite_neat-0.123.26/docs/excel_data_modeling/conceptual/overview.md +0 -10
- cognite_neat-0.123.26/docs/excel_data_modeling/conceptual/reference.md +0 -58
- cognite_neat-0.123.26/docs/excel_data_modeling/data_model.md +0 -29
- cognite_neat-0.123.26/docs/excel_data_modeling/physical/enum.md +0 -38
- cognite_neat-0.123.26/docs/excel_data_modeling/physical/overview.md +0 -8
- cognite_neat-0.123.26/docs/excel_data_modeling/physical/properties.md +0 -134
- cognite_neat-0.123.26/docs/excel_data_modeling/physical/reference.md +0 -103
- cognite_neat-0.123.26/docs/excel_data_modeling/physical/views.md +0 -58
- cognite_neat-0.123.26/docs/excel_data_modeling/units.md +0 -594
- cognite_neat-0.123.26/docs/gettingstarted/installation.md +0 -131
- cognite_neat-0.123.26/docs/gettingstarted/why-neat.md +0 -65
- cognite_neat-0.123.26/docs/index.md +0 -90
- cognite_neat-0.123.26/docs/reference/NeatSession/base.md +0 -1
- cognite_neat-0.123.26/docs/reference/NeatSession/drop.md +0 -1
- cognite_neat-0.123.26/docs/reference/NeatSession/fix.md +0 -4
- cognite_neat-0.123.26/docs/reference/NeatSession/inspect.md +0 -1
- cognite_neat-0.123.26/docs/reference/NeatSession/mapping.md +0 -1
- cognite_neat-0.123.26/docs/reference/NeatSession/prepare.md +0 -3
- cognite_neat-0.123.26/docs/reference/NeatSession/read.md +0 -7
- cognite_neat-0.123.26/docs/reference/NeatSession/set.md +0 -1
- cognite_neat-0.123.26/docs/reference/NeatSession/show.md +0 -1
- cognite_neat-0.123.26/docs/reference/NeatSession/subset.md +0 -1
- cognite_neat-0.123.26/docs/reference/NeatSession/template.md +0 -1
- cognite_neat-0.123.26/docs/reference/NeatSession/to.md +0 -3
- cognite_neat-0.123.26/docs/reference/issues/base.md +0 -1
- cognite_neat-0.123.26/docs/reference/issues/errors.md +0 -1
- cognite_neat-0.123.26/docs/reference/issues/user_model_warnings.md +0 -2
- cognite_neat-0.123.26/docs/reference/issues/warnings.md +0 -2
- cognite_neat-0.123.26/docs/reference/overview.md +0 -6
- cognite_neat-0.123.26/docs/tutorials/data-modeling/cold_start.ipynb +0 -483
- cognite_neat-0.123.26/docs/tutorials/data-modeling/figs/data-modeling-flow.png +0 -0
- cognite_neat-0.123.26/docs/tutorials/data-modeling/files/wind_farm_prospecting_conceptual_data_model.xlsx +0 -0
- cognite_neat-0.123.26/docs/tutorials/data-modeling/files/wind_farm_prospecting_conceptual_data_model_expanded.xlsx +0 -0
- cognite_neat-0.123.26/docs/tutorials/data-modeling/files/wind_farm_prospecting_physical_data_model.xlsx +0 -0
- cognite_neat-0.123.26/docs/tutorials/data-modeling/from-conceptual-to-physical-via-CDM.ipynb +0 -1022
- cognite_neat-0.123.26/docs/tutorials/data-modeling/http_purl.org_cognite_neat_data-model_verified_conceptual_wind_energy_WindFarmProspecting_v1.html +0 -478
- cognite_neat-0.123.26/docs/tutorials/data-modeling/http_purl.org_cognite_neat_data-model_verified_conceptual_wind_energy_WindFarmProspecting_v1_implements.html +0 -478
- cognite_neat-0.123.26/docs/tutorials/data-modeling/http_purl.org_cognite_neat_data-model_verified_physical_neat_playground_NeatHelloWorld_v1.html +0 -456
- cognite_neat-0.123.26/docs/tutorials/data-modeling/my_first_model.xlsx +0 -0
- cognite_neat-0.123.26/docs/tutorials/data-modeling/physical-data-model.xlsx +0 -0
- cognite_neat-0.123.26/docs/tutorials/introduction/introduction.ipynb +0 -457
- cognite_neat-0.123.26/last_changelog_entry.md +0 -4
- cognite_neat-0.123.26/last_git_message.txt +0 -26
- cognite_neat-0.123.26/last_version.txt +0 -1
- cognite_neat-0.123.26/mkdocs.yml +0 -100
- cognite_neat-0.123.26/pyproject.toml +0 -141
- cognite_neat-0.123.26/scripts/clean_space.py +0 -17
- cognite_neat-0.123.26/scripts/core_classic_mapping.xlsx +0 -0
- cognite_neat-0.123.26/scripts/create_classic_core_mapping_yaml.py +0 -25
- cognite_neat-0.123.26/scripts/dependency_profiler.py +0 -65
- cognite_neat-0.123.26/scripts/docs_generate_reference.py +0 -109
- cognite_neat-0.123.26/scripts/docs_generate_unit.py +0 -52
- cognite_neat-0.123.26/scripts/generate_steps_md.py +0 -95
- cognite_neat-0.123.26/scripts/integration_runner/.gitignore +0 -276
- cognite_neat-0.123.26/scripts/integration_runner/README.md +0 -92
- cognite_neat-0.123.26/scripts/integration_runner/config.dev.yaml +0 -11
- cognite_neat-0.123.26/scripts/integration_runner/modules/neat_integration_runner/README.md +0 -3
- cognite_neat-0.123.26/scripts/integration_runner/modules/neat_integration_runner/auth/neat_cicd_testing.group.yaml +0 -85
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/lift_pumps/classic/lift_pump_stations_root.Asset.csv +0 -246
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/lift_pumps/data_sets/hierarchies.DataSet.yaml +0 -9
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/lift_pumps/raw/collections_pump.Table.csv +0 -163
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/lift_pumps/raw/collections_pump.Table.yaml +0 -2
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/Measurement.Asset.yaml +0 -9
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/Measurement.Label.yaml +0 -4
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/MetMast.Asset.yaml +0 -12
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/PowerGeneratingUnit.Label.yaml +0 -4
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/Utsira.Asset.yaml +0 -9
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/WT-01.Asset.yaml +0 -13
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/WT-01_to_MetMast.Relationship.yaml +0 -8
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/WT-02.Asset.yaml +0 -13
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/WT-02_to_MetMast.Relationship.yaml +0 -8
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/WindTurbine.Label.yaml +0 -4
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/metMast.Label.yaml +0 -4
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/planned_WT-01_2022-01-01.Event.yaml +0 -12
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/classic/power_curve_manufacturer1.Sequence.yaml +0 -21
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/data_sets/maintenance.DataSet.yaml +0 -7
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/data_sets/source_ds.DataSet.yaml +0 -7
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/data_sets/usecase_01.DataSet.yaml +0 -7
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/files/WT-01_datasheet.FileMetadata.yaml +0 -8
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/files/WT-01_datasheet.txt +0 -1
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-01_forecast.TimeSeries.yaml +0 -10
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-01_production.TimeSeries.yaml +0 -10
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-02_forecast.TimeSeries.yaml +0 -10
- cognite_neat-0.123.26/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-02_production.TimeSeries.yaml +0 -10
- cognite_neat-0.123.26/scripts/manual_test_dms_importer.py +0 -133
- cognite_neat-0.123.26/scripts/migration.py +0 -258
- cognite_neat-0.123.26/scripts/oxi_remote/README.md +0 -43
- cognite_neat-0.123.26/scripts/oxi_remote/docker-compose.yaml +0 -11
- cognite_neat-0.123.26/scripts/test_lookup_table.csv +0 -15
- cognite_neat-0.123.26/scripts/windfarm_to_toolkit.py +0 -52
- cognite_neat-0.123.26/tests/config.py +0 -7
- cognite_neat-0.123.26/tests/conftest.py +0 -69
- cognite_neat-0.123.26/tests/data/__init__.py +0 -122
- cognite_neat-0.123.26/tests/data/_graph/aml-raw-graph.ttl +0 -35147
- cognite_neat-0.123.26/tests/data/_graph/aml_example.aml +0 -88653
- cognite_neat-0.123.26/tests/data/_graph/car.py +0 -284
- cognite_neat-0.123.26/tests/data/_graph/dexpi-raw-graph.ttl +0 -7106
- cognite_neat-0.123.26/tests/data/_graph/dexpi_example.xml +0 -4931
- cognite_neat-0.123.26/tests/data/_graph/iodd_Piab-piCOMPACT10X-20230509-IODD1.1.xml +0 -887
- cognite_neat-0.123.26/tests/data/_graph/low-quality-graph.ttl +0 -30
- cognite_neat-0.123.26/tests/data/_instances/asset_centric_cdf/assets.yaml +0 -93
- cognite_neat-0.123.26/tests/data/_instances/asset_centric_cdf/events.yaml +0 -20
- cognite_neat-0.123.26/tests/data/_instances/asset_centric_cdf/files.yaml +0 -24
- cognite_neat-0.123.26/tests/data/_instances/asset_centric_cdf/labels.yaml +0 -36
- cognite_neat-0.123.26/tests/data/_instances/asset_centric_cdf/relationships.yaml +0 -46
- cognite_neat-0.123.26/tests/data/_instances/asset_centric_cdf/sequence_rows.yaml +0 -72
- cognite_neat-0.123.26/tests/data/_instances/asset_centric_cdf/sequences.yaml +0 -58
- cognite_neat-0.123.26/tests/data/_instances/asset_centric_cdf/timeseries.yaml +0 -25
- cognite_neat-0.123.26/tests/data/_instances/classic_windfarm.py +0 -368
- cognite_neat-0.123.26/tests/data/_schema/conceptual/broken_concepts.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/conceptual/dangling-properties.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/conceptual/info-arch-car-rules.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/conceptual/info_with_cdm_ref.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/conceptual/information-unknown-value-type.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/conceptual/only_concepts.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/conceptual/ontology.ttl +0 -111
- cognite_neat-0.123.26/tests/data/_schema/conversion/single_concept.conceptual.yaml +0 -42
- cognite_neat-0.123.26/tests/data/_schema/conversion/single_concept.physical.yaml +0 -36
- cognite_neat-0.123.26/tests/data/_schema/non_neat/cognite_core_v1.zip +0 -0
- cognite_neat-0.123.26/tests/data/_schema/non_neat/referencing_core/MyDescribable.container.yaml +0 -15
- cognite_neat-0.123.26/tests/data/_schema/non_neat/referencing_core/MyDescribable.view.yaml +0 -15
- cognite_neat-0.123.26/tests/data/_schema/non_neat/referencing_core/enterprise.datamodel.yaml +0 -14
- cognite_neat-0.123.26/tests/data/_schema/non_neat/windturbine.py +0 -245
- cognite_neat-0.123.26/tests/data/_schema/partial-model/complete.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/partial-model/part1.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/partial-model/part2.ttl +0 -97
- cognite_neat-0.123.26/tests/data/_schema/partial-model/part3.yaml +0 -251
- cognite_neat-0.123.26/tests/data/_schema/physical/car_dms_rules.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/car_dms_rules_deprecated.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/dm_raw_filter.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/dm_view_space_different.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/dms-unknown-value-type.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/isa_plus_cdm.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/missing-in-model-value.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/mixed-up-version.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/physical_singleton_issue.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/pump_example_duplicated_resources.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/pump_example_with_missing_cells.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/pump_example_with_missing_cells_raise_issues.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/1.Production.container.yaml +0 -38
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/10.SimNode.container.yaml +0 -22
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/12.SimSubNode.container.yaml +0 -22
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/13.SimEdge.container.yaml +0 -38
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/14.Property.container.yaml +0 -67
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/15.Coordinate.container.yaml +0 -41
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/16.Coordinates.container.yaml +0 -49
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/17.ModelExecutionEnvironment.view.yaml +0 -25
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/18.Coordinate.view.yaml +0 -35
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/19.Coordinates.view.yaml +0 -42
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/2.SimulationModel.container.yaml +0 -44
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/20.SimEdge.view.yaml +0 -47
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/21.ProductionTimeseries.view.yaml +0 -23
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/22.SimNode.view.yaml +0 -39
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/23.Production.view.yaml +0 -58
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/24.SimSubNode.view.yaml +0 -23
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/25.SimulationResultFile.view.yaml +0 -23
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/26.InputProperty.view.yaml +0 -17
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/28.OutputProperty.view.yaml +0 -17
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/29.Property.view.yaml +0 -69
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/3.strongly-coupled-model.datamodel.yaml +0 -178
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/30.SimulationModel.view.yaml +0 -81
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/31.SimNodeAndEdge.view.yaml +0 -88
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/5.my.space.yaml +0 -3
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/6.ModelExecutionEnvironment.container.yaml +0 -32
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/7.ProductionTimeseries.container.yaml +0 -22
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/8.SimNodeAndEdge.container.yaml +0 -48
- cognite_neat-0.123.26/tests/data/_schema/physical/strongly_connected_model/data_models/9.SimulationResultFile.container.yaml +0 -22
- cognite_neat-0.123.26/tests/data/_schema/physical_invalid/inconsistent_container_dms_rules.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical_invalid/invalid_metadata.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical_invalid/invalid_property_dms_rules.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical_invalid/missing_view_container_dms_rules.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical_invalid/too_many_containers_per_view.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical_invalid/views_without_properties.xlsx +0 -0
- cognite_neat-0.123.26/tests/data/_schema/physical_yamls/invalid_indices.expected_issues.yaml +0 -77
- cognite_neat-0.123.26/tests/data/_schema/physical_yamls/invalid_indices.yaml +0 -92
- cognite_neat-0.123.26/tests/data/_schema/physical_yamls/invalid_yaml.expected_issues.yaml +0 -4
- cognite_neat-0.123.26/tests/data/_schema/physical_yamls/invalid_yaml.yaml +0 -8
- cognite_neat-0.123.26/tests/data/_schema/physical_yamls/multiple_indices_on_property.yaml +0 -27
- cognite_neat-0.123.26/tests/data/_schema/physical_yamls/reverse_direct_relation_missing_target.expected_issues.yaml +0 -10
- cognite_neat-0.123.26/tests/data/_schema/physical_yamls/reverse_direct_relation_missing_target.yaml +0 -59
- cognite_neat-0.123.26/tests/tests_end_to_end/test_rules_flow/test_cdm_extension_verification.yaml +0 -1277
- cognite_neat-0.123.26/tests/tests_end_to_end/test_rules_flow/test_excel_importer_to_yaml.yml +0 -665
- cognite_neat-0.123.26/tests/tests_end_to_end/test_rules_flow/test_excel_importer_to_yaml_new_endpoint.yml +0 -665
- cognite_neat-0.123.26/tests/tests_end_to_end/test_rules_flow/test_ontology_importer_to_yaml.yml +0 -212
- cognite_neat-0.123.26/tests/tests_end_to_end/test_rules_flow/test_to_extension_transformer.yml +0 -3597
- cognite_neat-0.123.26/tests/tests_end_to_end/test_rules_flow.py +0 -99
- cognite_neat-0.123.26/tests/tests_integration/conftest.py +0 -31
- cognite_neat-0.123.26/tests/tests_integration/test_api/test_conversion.py +0 -40
- cognite_neat-0.123.26/tests/tests_integration/test_api/test_validate_rules.py +0 -42
- cognite_neat-0.123.26/tests/tests_integration/test_client_available.py +0 -8
- cognite_neat-0.123.26/tests/tests_integration/test_graph/test_loaders/test_dms_loader.py +0 -108
- cognite_neat-0.123.26/tests/tests_integration/test_neat_client/test_cdf_loaders.py +0 -213
- cognite_neat-0.123.26/tests/tests_integration/test_neat_client/test_statistics.py +0 -32
- cognite_neat-0.123.26/tests/tests_integration/test_rules/test_exporters/test_dms_exporters.py +0 -231
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_create_enterprise.py +0 -29
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_data_model_prepare_fix/test_prefix_dms_rules_entities.yml +0 -343
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_data_model_prepare_fix/test_prefix_info_rules_entities.yml +0 -383
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_data_model_prepare_fix/test_standardize_space_and_version.yml +0 -168
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_data_model_prepare_fix.py +0 -85
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_data_model_to/test_raw_filter.yml +0 -57
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_data_model_to.py +0 -182
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_graph_flow/test_aml_to_dms.yml +0 -438
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_graph_flow/test_create_extension_template.yml +0 -530
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_graph_flow/test_dexpi_to_dms.yml +0 -2854
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_graph_flow/test_snapshot_workflow_ids_to_python.yml +0 -1836
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_graph_flow/test_snapshot_workflow_to_python.yml +0 -3337
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_graph_flow/test_uplift_workflow_to_python.yml +0 -4223
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_graph_flow.py +0 -348
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_read/test_read_cdm.yml +0 -1871
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_read/test_read_model_referencing_core.yml +0 -68
- cognite_neat-0.123.26/tests/tests_integration/test_session/test_read.py +0 -100
- cognite_neat-0.123.26/tests/tests_integration/test_utils/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_integration/test_utils/test_reader.py +0 -52
- cognite_neat-0.123.26/tests/tests_unit/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_graph/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_asset_extractor.py +0 -49
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_dms_extractor.py +0 -118
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_dms_graph_extractor.py +0 -64
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_events_extractor.py +0 -20
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_files_extractor.py +0 -18
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_labels_extractor.py +0 -18
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_raw_extractor.py +0 -27
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_relationship_extractor.py +0 -22
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_sequences_extractor.py +0 -109
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_extractors/test_timeseries_extractor.py +0 -20
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_graph_read.py +0 -22
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_loaders/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_loaders/test_dms_loader.py +0 -223
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_loaders/test_rdf2dms.py +0 -107
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_loaders/test_rdf_to_instance_space.py +0 -133
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_provenance.py +0 -8
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_asset_depth_transformer.py +0 -65
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_asset_event_connector_transformer.py +0 -56
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_asset_file_connector_transformer.py +0 -55
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_asset_relationship_connector_transformer.py +0 -63
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_asset_sequence_connector_transformer.py +0 -55
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_asset_ts_connector_transformer.py +0 -53
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_attach_property_from_target2source.py +0 -369
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_connection_to_literal.py +0 -37
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_make_connection_on_exact_match.py +0 -33
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_prune_graph.py +0 -87
- cognite_neat-0.123.26/tests/tests_unit/test_graph/test_transformers/test_split_multi_value_property_transformer.py +0 -17
- cognite_neat-0.123.26/tests/tests_unit/test_issues/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_issues/test_formatters.py +0 -42
- cognite_neat-0.123.26/tests/tests_unit/test_issues/test_issue_behavior.py +0 -57
- cognite_neat-0.123.26/tests/tests_unit/test_issues/test_issues_metatests.py +0 -144
- cognite_neat-0.123.26/tests/tests_unit/test_neat_client/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_neat_client/test_instances.py +0 -56
- cognite_neat-0.123.26/tests/tests_unit/test_neat_client/test_loaders.py +0 -144
- cognite_neat-0.123.26/tests/tests_unit/test_neat_client/test_schema.py +0 -28
- cognite_neat-0.123.26/tests/tests_unit/test_neat_package_metadata.py +0 -131
- cognite_neat-0.123.26/tests/tests_unit/test_plugins.py +0 -177
- cognite_neat-0.123.26/tests/tests_unit/test_rules/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_analysis.py +0 -73
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_exporters/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_exporters/test_exporters_meta.py +0 -36
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_exporters/test_rules2dms.py +0 -112
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_exporters/test_rules2excel.py +0 -125
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_exporters/test_rules2ontology.py +0 -28
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_exporters/test_rules2yaml.py +0 -25
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_importers/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_importers/constants.py +0 -4
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_importers/test_dms_importer.py +0 -356
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_importers/test_excel_importer.py +0 -269
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_importers/test_graph_data_model_importer.py +0 -126
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_importers/test_inference_importer.py +0 -191
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_importers/test_owl_importer.py +0 -86
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_importers/test_subinference_importer.py +0 -33
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_asset_rules.py +0 -207
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_base_rules.py +0 -42
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_conceptual_model.py +0 -614
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_data_types.py +0 -121
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_dms_schema.py +0 -494
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_entities.py +0 -317
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_input_rules.py +0 -104
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_physical_data_model.py +0 -1825
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/test_wrapped_entities.py +0 -176
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_models/utils.py +0 -12
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_transformers/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_transformers/test_converters.py +0 -190
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_transformers/test_mapping.py +0 -69
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_transformers/test_transformer_meta.py +0 -74
- cognite_neat-0.123.26/tests/tests_unit/test_rules/test_transformers/test_union_conceptual.py +0 -261
- cognite_neat-0.123.26/tests/tests_unit/test_session/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_session/test_flows.py +0 -73
- cognite_neat-0.123.26/tests/tests_unit/test_session/test_meta.py +0 -41
- cognite_neat-0.123.26/tests/tests_unit/test_session/test_plugin.py +0 -19
- cognite_neat-0.123.26/tests/tests_unit/test_session/test_read.py +0 -97
- cognite_neat-0.123.26/tests/tests_unit/test_session/test_to_yaml.py +0 -25
- cognite_neat-0.123.26/tests/tests_unit/test_store/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_store/test_select_queries.py +0 -25
- cognite_neat-0.123.26/tests/tests_unit/test_store/tests_rules_store/test_import_export.yml +0 -341
- cognite_neat-0.123.26/tests/tests_unit/test_store/tests_rules_store.py +0 -88
- cognite_neat-0.123.26/tests/tests_unit/test_utils/__init__.py +0 -0
- cognite_neat-0.123.26/tests/tests_unit/test_utils/test_auxiliary.py +0 -69
- cognite_neat-0.123.26/tests/tests_unit/test_utils/test_cdf_classes.py +0 -56
- cognite_neat-0.123.26/tests/tests_unit/test_utils/test_rdf.py +0 -92
- cognite_neat-0.123.26/tests/tests_unit/test_utils/test_reader.py +0 -61
- cognite_neat-0.123.26/tests/tests_unit/test_utils/test_tarjan.py +0 -105
- cognite_neat-0.123.26/tests/tests_unit/test_utils/test_text.py +0 -51
- cognite_neat-0.123.26/tests/tests_unit/test_utils/test_utils.py +0 -85
- cognite_neat-0.123.26/tests/utils.py +0 -187
- cognite_neat-0.123.26/uv.lock +0 -3964
- {cognite_neat-0.123.26/cognite/neat/core → cognite_neat-1.0.9/cognite/neat/_data_model}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/core/_client/_api → cognite_neat-1.0.9/cognite/neat/_data_model/deployer}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/core/_client/data_classes → cognite_neat-1.0.9/cognite/neat/_data_model/exporters/_table_exporter}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/core/_data_model → cognite_neat-1.0.9/cognite/neat/_data_model/importers/_table_importer}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/core/_instances → cognite_neat-1.0.9/cognite/neat/_data_model/models}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/core/_instances/extractors/_classic_cdf → cognite_neat-1.0.9/cognite/neat/_data_model/models/conceptual}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/core/_utils → cognite_neat-1.0.9/cognite/neat/_data_model/validation}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/plugins/data_model → cognite_neat-1.0.9/cognite/neat/_session/_html}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/session/_session → cognite_neat-1.0.9/cognite/neat/_session/_result/_deployment}/__init__.py +0 -0
- {cognite_neat-0.123.26/tests → cognite_neat-1.0.9/cognite/neat/_session/_result/_deployment/_physical}/__init__.py +0 -0
- {cognite_neat-0.123.26/tests/tests_end_to_end → cognite_neat-1.0.9/cognite/neat/_session/_usage_analytics}/__init__.py +0 -0
- {cognite_neat-0.123.26/tests/tests_integration → cognite_neat-1.0.9/cognite/neat/_utils}/__init__.py +0 -0
- {cognite_neat-0.123.26/tests/tests_integration/test_api → cognite_neat-1.0.9/cognite/neat/_v0}/__init__.py +0 -0
- {cognite_neat-0.123.26/tests/tests_integration/test_graph → cognite_neat-1.0.9/cognite/neat/_v0/core}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_client/__init__.py +0 -0
- {cognite_neat-0.123.26/tests/tests_integration/test_graph/test_loaders → cognite_neat-1.0.9/cognite/neat/_v0/core/_client/_api}/__init__.py +0 -0
- {cognite_neat-0.123.26/tests/tests_integration/test_neat_client → cognite_neat-1.0.9/cognite/neat/_v0/core/_client/data_classes}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_client/data_classes/data_modeling.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_client/data_classes/neat_sequence.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_client/data_classes/statistics.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_config.py +0 -0
- {cognite_neat-0.123.26/tests/tests_integration/test_rules → cognite_neat-1.0.9/cognite/neat/_v0/core/_data_model}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/analysis/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/catalog/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/catalog/classic_model.xlsx +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/catalog/conceptual-imf-data-model.xlsx +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/catalog/hello_world_pump.xlsx +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/importers/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/importers/_rdf/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/models/_base_unverified.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/models/conceptual/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/models/entities/_constants.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/models/entities/_wrapped.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/models/mapping/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/models/mapping/_classic2core.yaml +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_data_model/transformers/__init__.py +0 -0
- {cognite_neat-0.123.26/tests/tests_integration/test_rules/test_exporters → cognite_neat-1.0.9/cognite/neat/_v0/core/_instances}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/_shared.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/_tracking/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/examples/Knowledge-Graph-Nordic44-dirty.xml +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/examples/Knowledge-Graph-Nordic44.xml +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/examples/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/examples/skos-capturing-sheet-wind-topics.xlsx +0 -0
- {cognite_neat-0.123.26/tests/tests_integration/test_rules/test_importers → cognite_neat-1.0.9/cognite/neat/_v0/core/_instances/extractors/_classic_cdf}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/extractors/_classic_cdf/_assets.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/extractors/_classic_cdf/_data_sets.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/extractors/_classic_cdf/_events.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/extractors/_classic_cdf/_files.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/extractors/_classic_cdf/_labels.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/extractors/_classic_cdf/_timeseries.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/loaders/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/queries/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/queries/_base.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/queries/_queries.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_instances/transformers/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_issues/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_issues/formatters.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_shared.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_store/__init__.py +0 -0
- {cognite_neat-0.123.26/tests/tests_integration/test_session → cognite_neat-1.0.9/cognite/neat/_v0/core/_utils}/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_utils/io_.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_utils/reader/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_utils/tarjan.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_utils/time_.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/core/_utils/xml_.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/session → cognite_neat-1.0.9/cognite/neat/_v0}/engine/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/session → cognite_neat-1.0.9/cognite/neat/_v0}/engine/_import.py +0 -0
- {cognite_neat-0.123.26/cognite/neat/session → cognite_neat-1.0.9/cognite/neat/_v0}/engine/_interface.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/session/__init__.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/session/_experimental.py +0 -0
- {cognite_neat-0.123.26/cognite/neat → cognite_neat-1.0.9/cognite/neat/_v0}/session/_state/README.md +0 -0
- {cognite_neat-0.123.26 → cognite_neat-1.0.9}/cognite/neat/py.typed +0 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: cognite-neat
|
|
3
|
+
Version: 1.0.9
|
|
4
|
+
Summary: Knowledge graph transformation
|
|
5
|
+
Author: Nikola Vasiljevic, Anders Albert
|
|
6
|
+
Author-email: Nikola Vasiljevic <nikola.vasiljevic@cognite.com>, Anders Albert <anders.albert@cognite.com>
|
|
7
|
+
License-Expression: Apache-2.0
|
|
8
|
+
Requires-Dist: pandas>=1.5.3,<3.0.0
|
|
9
|
+
Requires-Dist: cognite-sdk>=7.83.0,<8.0.0
|
|
10
|
+
Requires-Dist: rdflib>=7.0.0,<8.0.0
|
|
11
|
+
Requires-Dist: httpx>=0.28.1
|
|
12
|
+
Requires-Dist: pydantic>=2.0.0,<3.0.0
|
|
13
|
+
Requires-Dist: pyyaml>=6.0.1,<7.0.0
|
|
14
|
+
Requires-Dist: requests>=2.28.1,<3.0.0
|
|
15
|
+
Requires-Dist: urllib3>=1.26.15,<3.0.0
|
|
16
|
+
Requires-Dist: openpyxl>=3.0.10,<4.0.0
|
|
17
|
+
Requires-Dist: networkx>=3.4.2,<4.0.0
|
|
18
|
+
Requires-Dist: mixpanel>=4.10.1,<5.0.0
|
|
19
|
+
Requires-Dist: packaging>=22.0
|
|
20
|
+
Requires-Dist: jsonpath-python>=1.0.6,<2.0.0
|
|
21
|
+
Requires-Dist: elementpath>=4.0.0,<5.0.0
|
|
22
|
+
Requires-Dist: pyvis>=0.3.2,<1.0.0
|
|
23
|
+
Requires-Dist: rich[jupyter]>=13.7.1,<14.0.0
|
|
24
|
+
Requires-Dist: exceptiongroup>=1.1.3,<2.0.0 ; python_full_version < '3.11'
|
|
25
|
+
Requires-Dist: backports-strenum>=1.2,<2.0.0 ; python_full_version < '3.11'
|
|
26
|
+
Requires-Dist: typing-extensions>=4.8.0,<5.0.0 ; python_full_version < '3.11'
|
|
27
|
+
Requires-Dist: tomli>=2.0.1,<3.0.0 ; python_full_version < '3.11'
|
|
28
|
+
Requires-Dist: mkdocs>=1.4.0,<2.0.0 ; extra == 'docs'
|
|
29
|
+
Requires-Dist: mkdocs-jupyter>=0.25.1,<1.0.0 ; extra == 'docs'
|
|
30
|
+
Requires-Dist: mkdocs-material-extensions>=1.3.1,<2.0.0 ; extra == 'docs'
|
|
31
|
+
Requires-Dist: mkdocs-git-revision-date-localized-plugin ; extra == 'docs'
|
|
32
|
+
Requires-Dist: mkdocs-git-authors-plugin>=0.9.4,<1.0.0 ; extra == 'docs'
|
|
33
|
+
Requires-Dist: mkdocs-gitbook>=0.0.1,<1.0.0 ; extra == 'docs'
|
|
34
|
+
Requires-Dist: mkdocs-glightbox>=0.4.0,<1.0.0 ; extra == 'docs'
|
|
35
|
+
Requires-Dist: pymdown-extensions>=10.14.3,<11.0.0 ; extra == 'docs'
|
|
36
|
+
Requires-Dist: mkdocstrings[python]>=0.25.2,<1.0.0 ; extra == 'docs'
|
|
37
|
+
Requires-Dist: mistune==3.0.2 ; extra == 'docs'
|
|
38
|
+
Requires-Dist: mkdocs-autorefs>=0.5.0,<1.0.0 ; extra == 'docs'
|
|
39
|
+
Requires-Dist: gspread>=5.0.0,<6.0.0 ; extra == 'google'
|
|
40
|
+
Requires-Dist: google-api-python-client>=2.70.0,<3.0.0 ; extra == 'google'
|
|
41
|
+
Requires-Dist: google-auth-oauthlib>=1.0.0,<2.0.0 ; extra == 'google'
|
|
42
|
+
Requires-Dist: lxml>=5.3.0,<6.0.0 ; extra == 'lxml'
|
|
43
|
+
Requires-Dist: oxrdflib>=0.4.0,<0.5.0 ; extra == 'oxi'
|
|
44
|
+
Requires-Dist: pyoxigraph>=0.4.3,<0.5.0 ; extra == 'oxi'
|
|
45
|
+
Requires-Python: >=3.10
|
|
46
|
+
Project-URL: Changelog, https://github.com/cognitedata/neat/releases
|
|
47
|
+
Project-URL: Documentation, https://cognite-neat.readthedocs-hosted.com/
|
|
48
|
+
Project-URL: GitHub, https://github.com/cognitedata/neat
|
|
49
|
+
Project-URL: Homepage, https://cognite-neat.readthedocs-hosted.com/
|
|
50
|
+
Provides-Extra: docs
|
|
51
|
+
Provides-Extra: google
|
|
52
|
+
Provides-Extra: lxml
|
|
53
|
+
Provides-Extra: oxi
|
|
54
|
+
Description-Content-Type: text/markdown
|
|
55
|
+
|
|
56
|
+
# kNowlEdge grAph Transformer (NEAT)
|
|
57
|
+
|
|
58
|
+
[](https://github.com/cognitedata/neat/actions/workflows/release.yaml)
|
|
59
|
+
[](https://cognite-neat.readthedocs-hosted.com/en/latest/?badge=latest)
|
|
60
|
+
[](https://github.com/cognitedata/neat)
|
|
61
|
+
[](https://pypi.org/project/cognite-neat/)
|
|
62
|
+
[](https://pypistats.org/packages/cognite-neat)
|
|
63
|
+
[](https://github.com/cognitedata/neat/blob/master/LICENSE)
|
|
64
|
+
[](https://github.com/ambv/black)
|
|
65
|
+
[](https://github.com/astral-sh/ruff)
|
|
66
|
+
[](http://mypy-lang.org)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
There was no easy way to make knowledge graphs, especially data models, and onboard them to
|
|
71
|
+
[Cognite Data Fusion](https://www.cognite.com/en/product/cognite_data_fusion_industrial_dataops_platform), so we have built NEAT!
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
NEAT is great for data model development, validation and deployment. It comes with an evergrowing library of validators,
|
|
75
|
+
which will assure that your data model adheres to the best practices and that is performant. Unlike other solutions,
|
|
76
|
+
which require you to be a technical wizard or modeling expert, NEAT provides you a guiding data modeling experience.
|
|
77
|
+
|
|
78
|
+
We offer various interfaces on how you can develop your data model, where majority of our users prefer
|
|
79
|
+
a combination of Jupyter Notebooks, leveraging NEAT features through so called [NeatSession](https://cognite-neat.readthedocs-hosted.com/en/latest/reference/NeatSession/session.html), with [a Spreadsheet data model template](https://cognite-neat.readthedocs-hosted.com/en/latest/excel_data_modeling/data_model.html).
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
Only Data modeling? There was more before!?
|
|
83
|
+
True, NEAT v0.x (legacy) offered a complete knowledge graph
|
|
84
|
+
tooling. Do not worry though, all the legacy features are still available and will be gradually
|
|
85
|
+
ported to NEAT v1.x according to the [roadmap](https://cognite-neat.readthedocs-hosted.com/en/latest/roadmap.html).
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
## Usage
|
|
89
|
+
The user interface for `NEAT` features is through `NeatSession`, which is typically instantiated in a notebook-based environment due to simplified interactivity with `NEAT`
|
|
90
|
+
and navigation of the session content. Once you have set up your notebook environment, and installed neat via:
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
pip install cognite-neat
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
you start by creating a `CogniteClient` and instantiate a `NeatSession` object:
|
|
97
|
+
|
|
98
|
+
```python
|
|
99
|
+
from cognite.neat import NeatSession, get_cognite_client
|
|
100
|
+
|
|
101
|
+
client = get_cognite_client(".env")
|
|
102
|
+
|
|
103
|
+
neat = NeatSession(client)
|
|
104
|
+
|
|
105
|
+
neat.physical_data_model.read.cdf("cdf_cdm", "CogniteCore", "v1")
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
## Documentation
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
For more information, see the [documentation](https://cognite-neat.readthedocs-hosted.com/en/latest/)
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# kNowlEdge grAph Transformer (NEAT)
|
|
2
|
+
|
|
3
|
+
[](https://github.com/cognitedata/neat/actions/workflows/release.yaml)
|
|
4
|
+
[](https://cognite-neat.readthedocs-hosted.com/en/latest/?badge=latest)
|
|
5
|
+
[](https://github.com/cognitedata/neat)
|
|
6
|
+
[](https://pypi.org/project/cognite-neat/)
|
|
7
|
+
[](https://pypistats.org/packages/cognite-neat)
|
|
8
|
+
[](https://github.com/cognitedata/neat/blob/master/LICENSE)
|
|
9
|
+
[](https://github.com/ambv/black)
|
|
10
|
+
[](https://github.com/astral-sh/ruff)
|
|
11
|
+
[](http://mypy-lang.org)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
There was no easy way to make knowledge graphs, especially data models, and onboard them to
|
|
16
|
+
[Cognite Data Fusion](https://www.cognite.com/en/product/cognite_data_fusion_industrial_dataops_platform), so we have built NEAT!
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
NEAT is great for data model development, validation and deployment. It comes with an evergrowing library of validators,
|
|
20
|
+
which will assure that your data model adheres to the best practices and that is performant. Unlike other solutions,
|
|
21
|
+
which require you to be a technical wizard or modeling expert, NEAT provides you a guiding data modeling experience.
|
|
22
|
+
|
|
23
|
+
We offer various interfaces on how you can develop your data model, where majority of our users prefer
|
|
24
|
+
a combination of Jupyter Notebooks, leveraging NEAT features through so called [NeatSession](https://cognite-neat.readthedocs-hosted.com/en/latest/reference/NeatSession/session.html), with [a Spreadsheet data model template](https://cognite-neat.readthedocs-hosted.com/en/latest/excel_data_modeling/data_model.html).
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
Only Data modeling? There was more before!?
|
|
28
|
+
True, NEAT v0.x (legacy) offered a complete knowledge graph
|
|
29
|
+
tooling. Do not worry though, all the legacy features are still available and will be gradually
|
|
30
|
+
ported to NEAT v1.x according to the [roadmap](https://cognite-neat.readthedocs-hosted.com/en/latest/roadmap.html).
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
## Usage
|
|
34
|
+
The user interface for `NEAT` features is through `NeatSession`, which is typically instantiated in a notebook-based environment due to simplified interactivity with `NEAT`
|
|
35
|
+
and navigation of the session content. Once you have set up your notebook environment, and installed neat via:
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
pip install cognite-neat
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
you start by creating a `CogniteClient` and instantiate a `NeatSession` object:
|
|
42
|
+
|
|
43
|
+
```python
|
|
44
|
+
from cognite.neat import NeatSession, get_cognite_client
|
|
45
|
+
|
|
46
|
+
client = get_cognite_client(".env")
|
|
47
|
+
|
|
48
|
+
neat = NeatSession(client)
|
|
49
|
+
|
|
50
|
+
neat.physical_data_model.read.cdf("cdf_cdm", "CogniteCore", "v1")
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Documentation
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
For more information, see the [documentation](https://cognite-neat.readthedocs-hosted.com/en/latest/)
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
from cognite.neat._client.config import NeatClientConfig
|
|
2
|
+
from cognite.neat._utils.http_client import HTTPClient
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class NeatAPI:
|
|
6
|
+
def __init__(self, neat_config: NeatClientConfig, http_client: HTTPClient) -> None:
|
|
7
|
+
self._config = neat_config
|
|
8
|
+
self._http_client = http_client
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from cognite.client import ClientConfig, CogniteClient
|
|
2
|
+
|
|
3
|
+
from cognite.neat._utils.http_client import HTTPClient
|
|
4
|
+
|
|
5
|
+
from .config import NeatClientConfig
|
|
6
|
+
from .containers_api import ContainersAPI
|
|
7
|
+
from .data_model_api import DataModelsAPI
|
|
8
|
+
from .spaces_api import SpacesAPI
|
|
9
|
+
from .statistics_api import StatisticsAPI
|
|
10
|
+
from .views_api import ViewsAPI
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class NeatClient:
|
|
14
|
+
def __init__(self, cognite_client_or_config: CogniteClient | ClientConfig) -> None:
|
|
15
|
+
self.config = NeatClientConfig(cognite_client_or_config)
|
|
16
|
+
self.http_client = HTTPClient(self.config)
|
|
17
|
+
self.data_models = DataModelsAPI(self.config, self.http_client)
|
|
18
|
+
self.views = ViewsAPI(self.config, self.http_client)
|
|
19
|
+
self.containers = ContainersAPI(self.config, self.http_client)
|
|
20
|
+
self.spaces = SpacesAPI(self.config, self.http_client)
|
|
21
|
+
self.statistics = StatisticsAPI(self.config, self.http_client)
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
from cognite.client import ClientConfig, CogniteClient
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class NeatClientConfig(ClientConfig):
|
|
5
|
+
def __init__(self, cognite_client_or_config: CogniteClient | ClientConfig):
|
|
6
|
+
config = (
|
|
7
|
+
cognite_client_or_config.config
|
|
8
|
+
if isinstance(cognite_client_or_config, CogniteClient)
|
|
9
|
+
else cognite_client_or_config
|
|
10
|
+
)
|
|
11
|
+
super().__init__(
|
|
12
|
+
client_name=config.client_name,
|
|
13
|
+
project=config.project,
|
|
14
|
+
credentials=config.credentials,
|
|
15
|
+
api_subversion=config.api_subversion,
|
|
16
|
+
base_url=config.base_url,
|
|
17
|
+
max_workers=config.max_workers,
|
|
18
|
+
headers=config.headers,
|
|
19
|
+
timeout=config.timeout,
|
|
20
|
+
file_transfer_timeout=config.file_transfer_timeout,
|
|
21
|
+
debug=config.debug,
|
|
22
|
+
)
|
|
23
|
+
|
|
24
|
+
def create_api_url(self, endpoint: str) -> str:
|
|
25
|
+
"""Create a full API URL for the given endpoint.
|
|
26
|
+
|
|
27
|
+
Args:
|
|
28
|
+
endpoint (str): The API endpoint to append to the base URL.
|
|
29
|
+
|
|
30
|
+
Returns:
|
|
31
|
+
str: The full API URL.
|
|
32
|
+
|
|
33
|
+
Examples:
|
|
34
|
+
>>> config = NeatClientConfig(cluster="bluefield", project="my_project", ...)
|
|
35
|
+
>>> config.create_api_url("/models/instances")
|
|
36
|
+
"https://bluefield.cognitedata.com/api/v1/my_project/models/instances"
|
|
37
|
+
"""
|
|
38
|
+
if not endpoint.startswith("/"):
|
|
39
|
+
endpoint = f"/{endpoint}"
|
|
40
|
+
return f"{self.base_url}/api/v1/projects/{self.project}{endpoint}"
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from collections.abc import Sequence
|
|
4
|
+
|
|
5
|
+
from cognite.neat._data_model.models.dms import ContainerReference, ContainerRequest, ContainerResponse, DataModelBody
|
|
6
|
+
from cognite.neat._utils.http_client import ItemIDBody, ItemsRequest, ParametersRequest
|
|
7
|
+
from cognite.neat._utils.useful_types import PrimitiveType
|
|
8
|
+
|
|
9
|
+
from .api import NeatAPI
|
|
10
|
+
from .data_classes import PagedResponse
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class ContainersAPI(NeatAPI):
|
|
14
|
+
ENDPOINT = "/models/containers"
|
|
15
|
+
LIST_REQUEST_LIMIT = 1000
|
|
16
|
+
|
|
17
|
+
def apply(self, items: Sequence[ContainerRequest]) -> list[ContainerResponse]:
|
|
18
|
+
"""Apply (create or update) containers in CDF.
|
|
19
|
+
|
|
20
|
+
Args:
|
|
21
|
+
items: List of ContainerRequest objects to apply.
|
|
22
|
+
Returns:
|
|
23
|
+
List of ContainerResponse objects.
|
|
24
|
+
"""
|
|
25
|
+
if not items:
|
|
26
|
+
return []
|
|
27
|
+
if len(items) > 100:
|
|
28
|
+
raise ValueError("Cannot apply more than 100 containers at once.")
|
|
29
|
+
result = self._http_client.request_with_retries(
|
|
30
|
+
ItemsRequest(
|
|
31
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT),
|
|
32
|
+
method="POST",
|
|
33
|
+
body=DataModelBody(items=items),
|
|
34
|
+
)
|
|
35
|
+
)
|
|
36
|
+
result.raise_for_status()
|
|
37
|
+
result = PagedResponse[ContainerResponse].model_validate_json(result.success_response.body)
|
|
38
|
+
return result.items
|
|
39
|
+
|
|
40
|
+
def retrieve(
|
|
41
|
+
self,
|
|
42
|
+
items: list[ContainerReference],
|
|
43
|
+
) -> list[ContainerResponse]:
|
|
44
|
+
"""Retrieve containers by their identifiers.
|
|
45
|
+
|
|
46
|
+
Args:
|
|
47
|
+
items: List of (space, external_id) tuples identifying the containers to retrieve.
|
|
48
|
+
|
|
49
|
+
Returns:
|
|
50
|
+
List of ContainerResponse objects.
|
|
51
|
+
"""
|
|
52
|
+
if not items:
|
|
53
|
+
return []
|
|
54
|
+
if len(items) > 1000:
|
|
55
|
+
raise ValueError("Cannot retrieve more than 1000 containers at once.")
|
|
56
|
+
|
|
57
|
+
result = self._http_client.request_with_retries(
|
|
58
|
+
ItemsRequest(
|
|
59
|
+
endpoint_url=self._config.create_api_url(f"{self.ENDPOINT}/byids"),
|
|
60
|
+
method="POST",
|
|
61
|
+
body=ItemIDBody(items=items),
|
|
62
|
+
)
|
|
63
|
+
)
|
|
64
|
+
result.raise_for_status()
|
|
65
|
+
result = PagedResponse[ContainerResponse].model_validate_json(result.success_response.body)
|
|
66
|
+
return result.items
|
|
67
|
+
|
|
68
|
+
def delete(self, items: list[ContainerReference]) -> list[ContainerReference]:
|
|
69
|
+
"""Delete containers by their identifiers.
|
|
70
|
+
|
|
71
|
+
Args:
|
|
72
|
+
items: List of ContainerReference objects identifying the containers to delete.
|
|
73
|
+
|
|
74
|
+
Returns:
|
|
75
|
+
List of ContainerReference objects representing the deleted containers.
|
|
76
|
+
"""
|
|
77
|
+
if not items:
|
|
78
|
+
return []
|
|
79
|
+
if len(items) > 100:
|
|
80
|
+
raise ValueError("Cannot delete more than 100 containers at once.")
|
|
81
|
+
|
|
82
|
+
result = self._http_client.request_with_retries(
|
|
83
|
+
ItemsRequest(
|
|
84
|
+
endpoint_url=self._config.create_api_url(f"{self.ENDPOINT}/delete"),
|
|
85
|
+
method="POST",
|
|
86
|
+
body=ItemIDBody(items=items),
|
|
87
|
+
)
|
|
88
|
+
)
|
|
89
|
+
result.raise_for_status()
|
|
90
|
+
result = PagedResponse[ContainerReference].model_validate_json(result.success_response.body)
|
|
91
|
+
return result.items
|
|
92
|
+
|
|
93
|
+
def list(
|
|
94
|
+
self,
|
|
95
|
+
space: str | None = None,
|
|
96
|
+
include_global: bool = False,
|
|
97
|
+
limit: int | None = 10,
|
|
98
|
+
) -> list[ContainerResponse]:
|
|
99
|
+
"""List containers in CDF Project.
|
|
100
|
+
|
|
101
|
+
Args:
|
|
102
|
+
space: If specified, only containers in this space are returned.
|
|
103
|
+
include_global: If True, include global containers.
|
|
104
|
+
limit: Maximum number of containers to return. If None, return all containers.
|
|
105
|
+
|
|
106
|
+
Returns:
|
|
107
|
+
List of ContainerResponse objects.
|
|
108
|
+
"""
|
|
109
|
+
if limit is not None and limit < 0:
|
|
110
|
+
raise ValueError("Limit must be non-negative.")
|
|
111
|
+
elif limit is not None and limit == 0:
|
|
112
|
+
return []
|
|
113
|
+
parameters: dict[str, PrimitiveType] = {"includeGlobal": include_global}
|
|
114
|
+
if space is not None:
|
|
115
|
+
parameters["space"] = space
|
|
116
|
+
cursor: str | None = None
|
|
117
|
+
container_responses: list[ContainerResponse] = []
|
|
118
|
+
while True:
|
|
119
|
+
if cursor is not None:
|
|
120
|
+
parameters["cursor"] = cursor
|
|
121
|
+
if limit is None:
|
|
122
|
+
parameters["limit"] = self.LIST_REQUEST_LIMIT
|
|
123
|
+
else:
|
|
124
|
+
parameters["limit"] = min(self.LIST_REQUEST_LIMIT, limit - len(container_responses))
|
|
125
|
+
result = self._http_client.request_with_retries(
|
|
126
|
+
ParametersRequest(
|
|
127
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT),
|
|
128
|
+
method="GET",
|
|
129
|
+
parameters=parameters,
|
|
130
|
+
)
|
|
131
|
+
)
|
|
132
|
+
result.raise_for_status()
|
|
133
|
+
result = PagedResponse[ContainerResponse].model_validate_json(result.success_response.body)
|
|
134
|
+
container_responses.extend(result.items)
|
|
135
|
+
cursor = result.next_cursor
|
|
136
|
+
if cursor is None or (limit is not None and len(container_responses) >= limit):
|
|
137
|
+
break
|
|
138
|
+
return container_responses
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
from typing import Generic, TypeVar
|
|
2
|
+
|
|
3
|
+
from pydantic import BaseModel, Field
|
|
4
|
+
|
|
5
|
+
T = TypeVar("T", bound=BaseModel)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class PagedResponse(BaseModel, Generic[T]):
|
|
9
|
+
items: list[T]
|
|
10
|
+
next_cursor: str | None = Field(None, alias="nextCursor")
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class ResourceLimit(BaseModel):
|
|
14
|
+
"""Model for resources with count and limit."""
|
|
15
|
+
|
|
16
|
+
count: int
|
|
17
|
+
limit: int
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class InstancesDetail(BaseModel, populate_by_name=True):
|
|
21
|
+
"""Model for instances with detailed metrics."""
|
|
22
|
+
|
|
23
|
+
edges: int
|
|
24
|
+
soft_deleted_edges: int = Field(alias="softDeletedEdges")
|
|
25
|
+
nodes: int
|
|
26
|
+
soft_deleted_nodes: int = Field(alias="softDeletedNodes")
|
|
27
|
+
instances: int
|
|
28
|
+
instances_limit: int = Field(alias="instancesLimit")
|
|
29
|
+
soft_deleted_instances: int = Field(alias="softDeletedInstances")
|
|
30
|
+
soft_deleted_instances_limit: int = Field(alias="softDeletedInstancesLimit")
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
class StatisticsResponse(BaseModel, populate_by_name=True):
|
|
34
|
+
"""Main API response model."""
|
|
35
|
+
|
|
36
|
+
spaces: ResourceLimit
|
|
37
|
+
containers: ResourceLimit
|
|
38
|
+
views: ResourceLimit
|
|
39
|
+
data_models: ResourceLimit = Field(alias="dataModels")
|
|
40
|
+
container_properties: ResourceLimit = Field(alias="containerProperties")
|
|
41
|
+
instances: InstancesDetail
|
|
42
|
+
concurrent_read_limit: int = Field(alias="concurrentReadLimit")
|
|
43
|
+
concurrent_write_limit: int = Field(alias="concurrentWriteLimit")
|
|
44
|
+
concurrent_delete_limit: int = Field(alias="concurrentDeleteLimit")
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
from collections.abc import Sequence
|
|
2
|
+
|
|
3
|
+
from cognite.neat._data_model.models.dms import DataModelBody, DataModelReference, DataModelRequest, DataModelResponse
|
|
4
|
+
from cognite.neat._utils.http_client import ItemIDBody, ItemsRequest, ParametersRequest
|
|
5
|
+
from cognite.neat._utils.useful_types import PrimitiveType
|
|
6
|
+
|
|
7
|
+
from .api import NeatAPI
|
|
8
|
+
from .data_classes import PagedResponse
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class DataModelsAPI(NeatAPI):
|
|
12
|
+
ENDPOINT = "/models/datamodels"
|
|
13
|
+
|
|
14
|
+
def apply(self, data_models: Sequence[DataModelRequest]) -> list[DataModelResponse]:
|
|
15
|
+
"""Apply (create or update) data models in CDF.
|
|
16
|
+
|
|
17
|
+
Args:
|
|
18
|
+
data_models: List of DataModelRequest objects to apply.
|
|
19
|
+
Returns:
|
|
20
|
+
List of DataModelResponse objects.
|
|
21
|
+
"""
|
|
22
|
+
if not data_models:
|
|
23
|
+
return []
|
|
24
|
+
if len(data_models) > 100:
|
|
25
|
+
raise ValueError("Cannot apply more than 100 data models at once.")
|
|
26
|
+
|
|
27
|
+
result = self._http_client.request_with_retries(
|
|
28
|
+
ItemsRequest(
|
|
29
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT),
|
|
30
|
+
method="POST",
|
|
31
|
+
body=DataModelBody(items=data_models),
|
|
32
|
+
)
|
|
33
|
+
)
|
|
34
|
+
result.raise_for_status()
|
|
35
|
+
result = PagedResponse[DataModelResponse].model_validate_json(result.success_response.body)
|
|
36
|
+
return result.items
|
|
37
|
+
|
|
38
|
+
def retrieve(
|
|
39
|
+
self,
|
|
40
|
+
items: list[DataModelReference],
|
|
41
|
+
) -> list[DataModelResponse]:
|
|
42
|
+
"""Retrieve data models by their identifiers.
|
|
43
|
+
|
|
44
|
+
Args:
|
|
45
|
+
items: List of data models references identifying the data models to retrieve.
|
|
46
|
+
Returns:
|
|
47
|
+
List of DataModelResponse objects.
|
|
48
|
+
"""
|
|
49
|
+
if not items:
|
|
50
|
+
return []
|
|
51
|
+
if len(items) > 100:
|
|
52
|
+
raise ValueError("Cannot retrieve more than 1000 containers at once.")
|
|
53
|
+
|
|
54
|
+
result = self._http_client.request_with_retries(
|
|
55
|
+
ItemsRequest(
|
|
56
|
+
endpoint_url=self._config.create_api_url(f"{self.ENDPOINT}/byids"),
|
|
57
|
+
method="POST",
|
|
58
|
+
body=ItemIDBody(items=items),
|
|
59
|
+
)
|
|
60
|
+
)
|
|
61
|
+
result.raise_for_status()
|
|
62
|
+
result = PagedResponse[DataModelResponse].model_validate_json(result.success_response.body)
|
|
63
|
+
return result.items
|
|
64
|
+
|
|
65
|
+
def delete(self, items: list[DataModelReference]) -> list[DataModelReference]:
|
|
66
|
+
"""Delete data models by their identifiers.
|
|
67
|
+
|
|
68
|
+
Args:
|
|
69
|
+
items: List of data model references identifying the data models to delete.
|
|
70
|
+
Returns:
|
|
71
|
+
List of DataModelReference objects representing the deleted data models.
|
|
72
|
+
"""
|
|
73
|
+
if not items:
|
|
74
|
+
return []
|
|
75
|
+
if len(items) > 100:
|
|
76
|
+
raise ValueError("Cannot delete more than 100 data models at once.")
|
|
77
|
+
|
|
78
|
+
result = self._http_client.request_with_retries(
|
|
79
|
+
ItemsRequest(
|
|
80
|
+
endpoint_url=self._config.create_api_url(f"{self.ENDPOINT}/delete"),
|
|
81
|
+
method="POST",
|
|
82
|
+
body=ItemIDBody(items=items),
|
|
83
|
+
)
|
|
84
|
+
)
|
|
85
|
+
result.raise_for_status()
|
|
86
|
+
result = PagedResponse[DataModelReference].model_validate_json(result.success_response.body)
|
|
87
|
+
return result.items
|
|
88
|
+
|
|
89
|
+
def list(
|
|
90
|
+
self,
|
|
91
|
+
space: str | None = None,
|
|
92
|
+
all_versions: bool = False,
|
|
93
|
+
include_global: bool = False,
|
|
94
|
+
limit: int = 10,
|
|
95
|
+
) -> list[DataModelResponse]:
|
|
96
|
+
"""List data models in CDF Project."""
|
|
97
|
+
if limit > 1000:
|
|
98
|
+
raise ValueError("Pagination is not (yet) supported for listing data models. The maximum limit is 1000.")
|
|
99
|
+
parameters: dict[str, PrimitiveType] = {
|
|
100
|
+
"allVersions": all_versions,
|
|
101
|
+
"includeGlobal": include_global,
|
|
102
|
+
"limit": limit,
|
|
103
|
+
}
|
|
104
|
+
if space is not None:
|
|
105
|
+
parameters["space"] = space
|
|
106
|
+
result = self._http_client.request_with_retries(
|
|
107
|
+
ParametersRequest(
|
|
108
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT),
|
|
109
|
+
method="GET",
|
|
110
|
+
parameters=parameters,
|
|
111
|
+
)
|
|
112
|
+
)
|
|
113
|
+
result.raise_for_status()
|
|
114
|
+
result = PagedResponse[DataModelResponse].model_validate_json(result.success_response.body)
|
|
115
|
+
return result.items
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from cognite.neat._data_model.models.dms import DataModelBody, SpaceRequest, SpaceResponse
|
|
4
|
+
from cognite.neat._data_model.models.dms._references import SpaceReference
|
|
5
|
+
from cognite.neat._utils.http_client import ItemIDBody, ItemsRequest, ParametersRequest
|
|
6
|
+
from cognite.neat._utils.useful_types import PrimitiveType
|
|
7
|
+
|
|
8
|
+
from .api import NeatAPI
|
|
9
|
+
from .data_classes import PagedResponse
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class SpacesAPI(NeatAPI):
|
|
13
|
+
ENDPOINT = "/models/spaces"
|
|
14
|
+
|
|
15
|
+
def apply(self, spaces: list[SpaceRequest]) -> list[SpaceResponse]:
|
|
16
|
+
"""Apply (create or update) spaces in CDF.
|
|
17
|
+
|
|
18
|
+
Args:
|
|
19
|
+
spaces: List of SpaceRequest objects to apply.
|
|
20
|
+
Returns:
|
|
21
|
+
List of SpaceResponse objects.
|
|
22
|
+
"""
|
|
23
|
+
if not spaces:
|
|
24
|
+
return []
|
|
25
|
+
if len(spaces) > 100:
|
|
26
|
+
raise ValueError("Cannot apply more than 100 spaces at once.")
|
|
27
|
+
result = self._http_client.request_with_retries(
|
|
28
|
+
ItemsRequest(
|
|
29
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT),
|
|
30
|
+
method="POST",
|
|
31
|
+
body=DataModelBody(items=spaces),
|
|
32
|
+
)
|
|
33
|
+
)
|
|
34
|
+
result.raise_for_status()
|
|
35
|
+
result = PagedResponse[SpaceResponse].model_validate_json(result.success_response.body)
|
|
36
|
+
return result.items
|
|
37
|
+
|
|
38
|
+
def retrieve(self, spaces: list[SpaceReference]) -> list[SpaceResponse]:
|
|
39
|
+
"""Retrieve spaces by their identifiers.
|
|
40
|
+
|
|
41
|
+
Args:
|
|
42
|
+
spaces: List of space identifiers to retrieve.
|
|
43
|
+
|
|
44
|
+
Returns:
|
|
45
|
+
List of SpaceResponse objects.
|
|
46
|
+
"""
|
|
47
|
+
if not spaces:
|
|
48
|
+
return []
|
|
49
|
+
if len(spaces) > 1000:
|
|
50
|
+
raise ValueError("Cannot retrieve more than 1000 spaces at once.")
|
|
51
|
+
|
|
52
|
+
result = self._http_client.request_with_retries(
|
|
53
|
+
ItemsRequest(
|
|
54
|
+
endpoint_url=self._config.create_api_url(f"{self.ENDPOINT}/byids"),
|
|
55
|
+
method="POST",
|
|
56
|
+
body=ItemIDBody(items=spaces),
|
|
57
|
+
)
|
|
58
|
+
)
|
|
59
|
+
result.raise_for_status()
|
|
60
|
+
result = PagedResponse[SpaceResponse].model_validate_json(result.success_response.body)
|
|
61
|
+
return result.items
|
|
62
|
+
|
|
63
|
+
def delete(self, spaces: list[SpaceReference]) -> list[SpaceReference]:
|
|
64
|
+
"""Delete spaces by their identifiers.
|
|
65
|
+
|
|
66
|
+
Args:
|
|
67
|
+
spaces: List of space identifiers to delete.
|
|
68
|
+
Returns:
|
|
69
|
+
List of SpaceReference objects representing the deleted spaces.
|
|
70
|
+
"""
|
|
71
|
+
if not spaces:
|
|
72
|
+
return []
|
|
73
|
+
if len(spaces) > 100:
|
|
74
|
+
raise ValueError("Cannot delete more than 100 spaces at once.")
|
|
75
|
+
result = self._http_client.request_with_retries(
|
|
76
|
+
ItemsRequest(
|
|
77
|
+
endpoint_url=self._config.create_api_url(f"{self.ENDPOINT}/delete"),
|
|
78
|
+
method="POST",
|
|
79
|
+
body=ItemIDBody(items=spaces),
|
|
80
|
+
)
|
|
81
|
+
)
|
|
82
|
+
result.raise_for_status()
|
|
83
|
+
result = PagedResponse[SpaceReference].model_validate_json(result.success_response.body)
|
|
84
|
+
return result.items
|
|
85
|
+
|
|
86
|
+
def list(
|
|
87
|
+
self,
|
|
88
|
+
include_global: bool = False,
|
|
89
|
+
limit: int = 10,
|
|
90
|
+
) -> list[SpaceResponse]:
|
|
91
|
+
"""List spaces in CDF Project.
|
|
92
|
+
|
|
93
|
+
Args:
|
|
94
|
+
include_global: If True, include global spaces.
|
|
95
|
+
limit: Maximum number of spaces to return. Max is 1000.
|
|
96
|
+
|
|
97
|
+
Returns:
|
|
98
|
+
List of SpaceResponse objects.
|
|
99
|
+
"""
|
|
100
|
+
if limit > 1000:
|
|
101
|
+
raise ValueError("Pagination is not (yet) supported for listing spaces. The maximum limit is 1000.")
|
|
102
|
+
parameters: dict[str, PrimitiveType] = {
|
|
103
|
+
"includeGlobal": include_global,
|
|
104
|
+
"limit": limit,
|
|
105
|
+
}
|
|
106
|
+
result = self._http_client.request_with_retries(
|
|
107
|
+
ParametersRequest(
|
|
108
|
+
endpoint_url=self._config.create_api_url(self.ENDPOINT),
|
|
109
|
+
method="GET",
|
|
110
|
+
parameters=parameters,
|
|
111
|
+
)
|
|
112
|
+
)
|
|
113
|
+
result.raise_for_status()
|
|
114
|
+
result = PagedResponse[SpaceResponse].model_validate_json(result.success_response.body)
|
|
115
|
+
return result.items
|