cognite-neat 0.121.1__tar.gz → 0.121.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of cognite-neat might be problematic. Click here for more details.

Files changed (628) hide show
  1. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/PKG-INFO +1 -1
  2. cognite_neat-0.121.2/cognite/neat/_version.py +2 -0
  3. cognite_neat-0.121.2/cognite/neat/core/_client/_api/statistics.py +91 -0
  4. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/_api_client.py +2 -0
  5. cognite_neat-0.121.2/cognite/neat/core/_client/data_classes/statistics.py +125 -0
  6. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/testing.py +4 -0
  7. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_constants.py +6 -7
  8. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/_constants.py +23 -16
  9. cognite_neat-0.121.2/cognite/neat/core/_data_model/_shared.py +59 -0
  10. cognite_neat-0.121.2/cognite/neat/core/_data_model/analysis/__init__.py +3 -0
  11. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/analysis/_base.py +186 -183
  12. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/catalog/__init__.py +1 -1
  13. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/exporters/__init__.py +5 -5
  14. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/exporters/_base.py +10 -8
  15. cognite_neat-0.121.1/cognite/neat/core/_data_model/exporters/_rules2dms.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/exporters/_data_model2dms.py +22 -18
  16. cognite_neat-0.121.1/cognite/neat/core/_data_model/exporters/_rules2excel.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/exporters/_data_model2excel.py +51 -51
  17. cognite_neat-0.121.1/cognite/neat/core/_data_model/exporters/_rules2instance_template.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/exporters/_data_model2instance_template.py +4 -4
  18. cognite_neat-0.121.1/cognite/neat/core/_data_model/exporters/_rules2ontology.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/exporters/_data_model2ontology.py +50 -50
  19. cognite_neat-0.121.1/cognite/neat/core/_data_model/exporters/_rules2yaml.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/exporters/_data_model2yaml.py +21 -18
  20. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/importers/__init__.py +6 -6
  21. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/importers/_base.py +8 -6
  22. cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_base_file_reader.py +56 -0
  23. cognite_neat-0.121.1/cognite/neat/core/_data_model/importers/_yaml2rules.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_dict2data_model.py +40 -20
  24. cognite_neat-0.121.1/cognite/neat/core/_data_model/importers/_dms2rules.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_dms2data_model.py +58 -49
  25. {cognite_neat-0.121.1/cognite/neat/core/_data_model/importers/_dtdl2rules → cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_dtdl2data_model}/dtdl_converter.py +22 -22
  26. {cognite_neat-0.121.1/cognite/neat/core/_data_model/importers/_dtdl2rules → cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_dtdl2data_model}/dtdl_importer.py +7 -7
  27. {cognite_neat-0.121.1/cognite/neat/core/_data_model/importers/_dtdl2rules → cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_dtdl2data_model}/spec.py +3 -3
  28. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/importers/_rdf/_base.py +9 -9
  29. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/importers/_rdf/_imf2rules.py +15 -15
  30. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/importers/_rdf/_inference2rules.py +36 -36
  31. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/importers/_rdf/_owl2rules.py +12 -12
  32. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/importers/_rdf/_shared.py +25 -25
  33. cognite_neat-0.121.1/cognite/neat/core/_data_model/importers/_spreadsheet2rules.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_spreadsheet2data_model.py +72 -12
  34. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/__init__.py +8 -8
  35. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/_base_unverified.py +1 -1
  36. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/_base_verified.py +3 -3
  37. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/_types.py +6 -6
  38. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/conceptual/__init__.py +6 -6
  39. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/conceptual/_unverified.py +20 -20
  40. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/conceptual/_validation.py +87 -77
  41. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/conceptual/_verified.py +53 -51
  42. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/data_types.py +2 -2
  43. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/entities/__init__.py +8 -8
  44. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/entities/_loaders.py +11 -10
  45. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/entities/_multi_value.py +5 -5
  46. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/entities/_single_value.py +44 -38
  47. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/entities/_types.py +9 -3
  48. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/entities/_wrapped.py +3 -3
  49. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/mapping/_classic2core.py +12 -9
  50. cognite_neat-0.121.2/cognite/neat/core/_data_model/models/physical/__init__.py +40 -0
  51. {cognite_neat-0.121.1/cognite/neat/core/_data_model/models/dms → cognite_neat-0.121.2/cognite/neat/core/_data_model/models/physical}/_exporter.py +71 -52
  52. cognite_neat-0.121.1/cognite/neat/core/_data_model/models/dms/_rules_input.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/models/physical/_unverified.py +48 -39
  53. {cognite_neat-0.121.1/cognite/neat/core/_data_model/models/dms → cognite_neat-0.121.2/cognite/neat/core/_data_model/models/physical}/_validation.py +13 -11
  54. cognite_neat-0.121.1/cognite/neat/core/_data_model/models/dms/_rules.py → cognite_neat-0.121.2/cognite/neat/core/_data_model/models/physical/_verified.py +68 -60
  55. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/transformers/__init__.py +27 -23
  56. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/transformers/_base.py +26 -19
  57. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/transformers/_converters.py +703 -618
  58. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/transformers/_mapping.py +74 -55
  59. cognite_neat-0.121.2/cognite/neat/core/_data_model/transformers/_verification.py +120 -0
  60. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_base.py +1 -1
  61. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_classic.py +8 -8
  62. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_dms_graph.py +42 -34
  63. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_mock_graph_generator.py +98 -95
  64. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/loaders/_base.py +2 -2
  65. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/loaders/_rdf2dms.py +6 -6
  66. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/transformers/_base.py +7 -4
  67. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/transformers/_value_type.py +2 -6
  68. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/_base.py +4 -4
  69. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/errors/__init__.py +2 -2
  70. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/errors/_wrapper.py +2 -2
  71. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/warnings/_models.py +4 -4
  72. cognite_neat-0.121.2/cognite/neat/core/_store/__init__.py +4 -0
  73. cognite_neat-0.121.1/cognite/neat/core/_store/_rules_store.py → cognite_neat-0.121.2/cognite/neat/core/_store/_data_model.py +119 -112
  74. cognite_neat-0.121.1/cognite/neat/core/_store/_graph_store.py → cognite_neat-0.121.2/cognite/neat/core/_store/_instance.py +3 -4
  75. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_store/_provenance.py +2 -2
  76. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_store/exceptions.py +2 -2
  77. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/rdf_.py +14 -0
  78. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/text.py +1 -1
  79. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_base.py +22 -20
  80. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_drop.py +2 -2
  81. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_inspect.py +5 -5
  82. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_mapping.py +8 -6
  83. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_read.py +2 -2
  84. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_set.py +3 -3
  85. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_show.py +11 -11
  86. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_state.py +13 -13
  87. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_subset.py +12 -9
  88. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_template.py +13 -13
  89. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_to.py +17 -17
  90. cognite_neat-0.121.2/last_changelog_entry.md +8 -0
  91. cognite_neat-0.121.2/last_git_message.txt +25 -0
  92. cognite_neat-0.121.2/last_version.txt +1 -0
  93. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/pyproject.toml +1 -1
  94. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/create_classic_core_mapping_yaml.py +3 -3
  95. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/docs_generate_reference.py +2 -2
  96. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/manual_test_dms_importer.py +5 -5
  97. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/conftest.py +24 -19
  98. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_graph/car.py +25 -19
  99. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/conversion/single_concept.conceptual.yaml +4 -4
  100. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/conversion/single_concept.physical.yaml +4 -4
  101. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/windturbine.py +27 -27
  102. cognite_neat-0.121.2/tests/data/_schema/physical/car_dms_rules.xlsx +0 -0
  103. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_end_to_end/test_rules_flow/test_excel_importer_to_yaml.yml +161 -161
  104. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_api/test_conversion.py +11 -9
  105. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_api/test_validate_rules.py +4 -4
  106. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_graph/test_loaders/test_dms_loader.py +22 -15
  107. cognite_neat-0.121.2/tests/tests_integration/test_neat_client/test_statistics.py +32 -0
  108. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_rules/test_exporters/test_dms_exporters.py +36 -32
  109. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_data_model_prepare_fix/test_prefix_info_rules_entities.yml +79 -79
  110. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_data_model_prepare_fix.py +3 -3
  111. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_data_model_to.py +8 -6
  112. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_graph_flow/test_aml_to_dms.yml +97 -97
  113. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_graph_flow/test_create_extension_template.yml +81 -81
  114. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_graph_flow/test_dexpi_to_dms.yml +649 -649
  115. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_graph_flow/test_snapshot_workflow_ids_to_python.yml +157 -157
  116. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_graph_flow/test_snapshot_workflow_to_python.yml +312 -312
  117. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_graph_flow/test_uplift_workflow_to_python.yml +339 -339
  118. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_graph_flow.py +7 -7
  119. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_asset_extractor.py +3 -3
  120. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_dms_graph_extractor.py +4 -4
  121. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_graph_read.py +2 -2
  122. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_loaders/test_dms_loader.py +43 -35
  123. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_loaders/test_rdf2dms.py +13 -9
  124. cognite_neat-0.121.2/tests/tests_unit/test_graph/test_provenance.py +8 -0
  125. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_asset_depth_transformer.py +4 -4
  126. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_asset_event_connector_transformer.py +3 -3
  127. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_asset_file_connector_transformer.py +3 -3
  128. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_asset_relationship_connector_transformer.py +3 -3
  129. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_asset_sequence_connector_transformer.py +3 -3
  130. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_asset_ts_connector_transformer.py +3 -3
  131. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_attach_property_from_target2source.py +3 -3
  132. cognite_neat-0.121.2/tests/tests_unit/test_graph/test_transformers/test_connection_to_literal.py +37 -0
  133. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_prune_graph.py +2 -2
  134. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_split_multi_value_property_transformer.py +5 -5
  135. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_analysis.py +18 -18
  136. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_exporters/test_exporters_meta.py +2 -2
  137. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_exporters/test_rules2dms.py +10 -7
  138. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_exporters/test_rules2excel.py +9 -9
  139. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_exporters/test_rules2ontology.py +1 -1
  140. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_exporters/test_rules2yaml.py +7 -7
  141. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/test_dms_importer.py +22 -19
  142. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/test_dtdl_importer.py +12 -9
  143. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/test_excel_importer.py +22 -16
  144. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/test_imf_importer.py +4 -4
  145. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/test_inference_importer.py +22 -22
  146. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/test_owl_importer.py +12 -12
  147. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/test_subinference_importer.py +1 -1
  148. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/test_asset_rules.py +16 -16
  149. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/test_base_rules.py +6 -6
  150. cognite_neat-0.121.1/tests/tests_unit/test_rules/test_models/test_information_rules.py → cognite_neat-0.121.2/tests/tests_unit/test_rules/test_models/test_conceptual_model.py +75 -66
  151. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/test_data_types.py +4 -4
  152. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/test_dms_schema.py +2 -2
  153. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/test_entities.py +12 -12
  154. cognite_neat-0.121.1/tests/tests_unit/test_rules/test_models/test_dms_rules.py → cognite_neat-0.121.2/tests/tests_unit/test_rules/test_models/test_physical_data_model.py +254 -242
  155. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/test_wrapped_entities.py +3 -3
  156. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_transformers/test_converters.py +58 -55
  157. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_transformers/test_mapping.py +20 -20
  158. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_transformers/test_transformer_meta.py +18 -15
  159. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_session/test_to_yaml.py +5 -5
  160. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_store/tests_rules_store.py +12 -12
  161. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_utils/test_auxiliary.py +2 -2
  162. cognite_neat-0.121.2/tests/tests_unit/test_utils/test_rdf.py +30 -0
  163. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/utils.py +8 -8
  164. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/uv.lock +1 -1
  165. cognite_neat-0.121.1/cognite/neat/_version.py +0 -2
  166. cognite_neat-0.121.1/cognite/neat/core/_data_model/_shared.py +0 -43
  167. cognite_neat-0.121.1/cognite/neat/core/_data_model/analysis/__init__.py +0 -3
  168. cognite_neat-0.121.1/cognite/neat/core/_data_model/exporters/_validation.py +0 -14
  169. cognite_neat-0.121.1/cognite/neat/core/_data_model/models/dms/__init__.py +0 -32
  170. cognite_neat-0.121.1/cognite/neat/core/_data_model/transformers/_verification.py +0 -111
  171. cognite_neat-0.121.1/cognite/neat/core/_store/__init__.py +0 -4
  172. cognite_neat-0.121.1/last_changelog_entry.md +0 -7
  173. cognite_neat-0.121.1/last_git_message.txt +0 -23
  174. cognite_neat-0.121.1/last_version.txt +0 -1
  175. cognite_neat-0.121.1/tests/data/_schema/physical/car_dms_rules.xlsx +0 -0
  176. cognite_neat-0.121.1/tests/tests_unit/test_graph/test_provenance.py +0 -8
  177. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.coveragerc +0 -0
  178. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.github/CODEOWNERS +0 -0
  179. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.github/ISSUE_TEMPLATE/bug-report.md +0 -0
  180. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.github/ISSUE_TEMPLATE/feature-request.md +0 -0
  181. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.github/pull_request_template.md +0 -0
  182. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.github/renovate.json +0 -0
  183. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.github/workflows/code-quality.yaml +0 -0
  184. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.github/workflows/release.yaml +0 -0
  185. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.gitignore +0 -0
  186. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.pre-commit-config.yaml +0 -0
  187. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/.readthedocs.yaml +0 -0
  188. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/CODE_OF_CONDUCT.md +0 -0
  189. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/CONTRIBUTING.md +0 -0
  190. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/LICENSE +0 -0
  191. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/README.md +0 -0
  192. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cdf.toml +0 -0
  193. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/codecov.yml +0 -0
  194. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/__init__.py +0 -0
  195. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/__init__.py +0 -0
  196. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/__init__.py +0 -0
  197. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/_api/__init__.py +0 -0
  198. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/_api/data_modeling_loaders.py +0 -0
  199. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/_api/neat_instances.py +0 -0
  200. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/_api/schema.py +0 -0
  201. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/data_classes/__init__.py +0 -0
  202. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/data_classes/data_modeling.py +0 -0
  203. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/data_classes/neat_sequence.py +0 -0
  204. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_client/data_classes/schema.py +0 -0
  205. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_config.py +0 -0
  206. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/__init__.py +0 -0
  207. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/catalog/classic_model.xlsx +0 -0
  208. /cognite_neat-0.121.1/cognite/neat/core/_data_model/catalog/info-rules-imf.xlsx → /cognite_neat-0.121.2/cognite/neat/core/_data_model/catalog/conceptual-imf-data-model.xlsx +0 -0
  209. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/catalog/hello_world_pump.xlsx +0 -0
  210. {cognite_neat-0.121.1/cognite/neat/core/_data_model/importers/_dtdl2rules → cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_dtdl2data_model}/__init__.py +0 -0
  211. {cognite_neat-0.121.1/cognite/neat/core/_data_model/importers/_dtdl2rules → cognite_neat-0.121.2/cognite/neat/core/_data_model/importers/_dtdl2data_model}/_unit_lookup.py +0 -0
  212. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/importers/_rdf/__init__.py +0 -0
  213. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/entities/_constants.py +0 -0
  214. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/mapping/__init__.py +0 -0
  215. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_data_model/models/mapping/_classic2core.yaml +0 -0
  216. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/__init__.py +0 -0
  217. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/_shared.py +0 -0
  218. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/_tracking/__init__.py +0 -0
  219. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/_tracking/base.py +0 -0
  220. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/_tracking/log.py +0 -0
  221. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/examples/Knowledge-Graph-Nordic44-dirty.xml +0 -0
  222. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/examples/Knowledge-Graph-Nordic44.xml +0 -0
  223. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/examples/__init__.py +0 -0
  224. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/examples/skos-capturing-sheet-wind-topics.xlsx +0 -0
  225. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/__init__.py +0 -0
  226. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/__init__.py +0 -0
  227. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_assets.py +0 -0
  228. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_base.py +0 -0
  229. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_data_sets.py +0 -0
  230. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_events.py +0 -0
  231. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_files.py +0 -0
  232. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_labels.py +0 -0
  233. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_relationships.py +0 -0
  234. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_sequences.py +0 -0
  235. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_classic_cdf/_timeseries.py +0 -0
  236. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_dict.py +0 -0
  237. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_dms.py +0 -0
  238. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_raw.py +0 -0
  239. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/extractors/_rdf_file.py +0 -0
  240. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/loaders/__init__.py +0 -0
  241. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/queries/__init__.py +0 -0
  242. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/queries/_base.py +0 -0
  243. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/queries/_queries.py +0 -0
  244. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/queries/_select.py +0 -0
  245. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/queries/_update.py +0 -0
  246. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/transformers/__init__.py +0 -0
  247. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/transformers/_classic_cdf.py +0 -0
  248. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/transformers/_prune_graph.py +0 -0
  249. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_instances/transformers/_rdfpath.py +0 -0
  250. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/__init__.py +0 -0
  251. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/_contextmanagers.py +0 -0
  252. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/_factory.py +0 -0
  253. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/errors/_external.py +0 -0
  254. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/errors/_general.py +0 -0
  255. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/errors/_properties.py +0 -0
  256. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/errors/_resources.py +0 -0
  257. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/formatters.py +0 -0
  258. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/warnings/__init__.py +0 -0
  259. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/warnings/_external.py +0 -0
  260. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/warnings/_general.py +0 -0
  261. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/warnings/_properties.py +0 -0
  262. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/warnings/_resources.py +0 -0
  263. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_issues/warnings/user_modeling.py +0 -0
  264. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_shared.py +0 -0
  265. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/__init__.py +0 -0
  266. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/auth.py +0 -0
  267. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/auxiliary.py +0 -0
  268. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/collection_.py +0 -0
  269. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/graph_transformations_report.py +0 -0
  270. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/io_.py +0 -0
  271. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/reader/__init__.py +0 -0
  272. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/reader/_base.py +0 -0
  273. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/spreadsheet.py +0 -0
  274. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/time_.py +0 -0
  275. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/upload.py +0 -0
  276. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/core/_utils/xml_.py +0 -0
  277. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/py.typed +0 -0
  278. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/__init__.py +0 -0
  279. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_collector.py +0 -0
  280. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_experimental.py +0 -0
  281. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_explore.py +0 -0
  282. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_fix.py +0 -0
  283. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_prepare.py +0 -0
  284. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_state/README.md +0 -0
  285. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/_wizard.py +0 -0
  286. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/engine/__init__.py +0 -0
  287. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/engine/_import.py +0 -0
  288. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/engine/_interface.py +0 -0
  289. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/engine/_load.py +0 -0
  290. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/cognite/neat/session/exceptions.py +0 -0
  291. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/dev.py +0 -0
  292. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/DataModelCDF.PNG +0 -0
  293. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/DataModelInstancesCDF.PNG +0 -0
  294. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/DataModelInstancesVizCDF.PNG +0 -0
  295. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/aml-dm-cdf.png +0 -0
  296. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/aml-dm.png +0 -0
  297. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/aml-instances-cdf.png +0 -0
  298. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/aml-instances-full.png +0 -0
  299. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations.png +0 -0
  300. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_dms.png +0 -0
  301. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_dms_typed.png +0 -0
  302. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_populated.png +0 -0
  303. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_populated_with_typed.png +0 -0
  304. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/authorship.png +0 -0
  305. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/base-components.png +0 -0
  306. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/bid_capacity_data_model.png +0 -0
  307. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/change_validate_step.png +0 -0
  308. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/connecting_metadata_dm.png +0 -0
  309. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/connecting_metadata_populated.png +0 -0
  310. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/connecting_metadata_published_dm.png +0 -0
  311. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/container_spec.png +0 -0
  312. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/core_extension.png +0 -0
  313. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/core_extension_excel.png +0 -0
  314. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/core_extension_no_connection.png +0 -0
  315. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/core_extension_with_properties.png +0 -0
  316. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/data-exploration.gif +0 -0
  317. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/data-model-nordic44.png +0 -0
  318. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/data-modeling-flow.png +0 -0
  319. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dexpi-dm-cdf.png +0 -0
  320. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dexpi-dm-viz.png +0 -0
  321. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dexpi-graph-viz.png +0 -0
  322. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dexpi-instance-cdf.png +0 -0
  323. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dexpi-transformed-graph-viz.png +0 -0
  324. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dm-classes.png +0 -0
  325. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dm-object-shapes.png +0 -0
  326. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dm-prefixes.png +0 -0
  327. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dm-source-to-solution-mapping.png +0 -0
  328. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dm2cdf-asset.png +0 -0
  329. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/dm2cdf-mapping.png +0 -0
  330. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/execution-history.gif +0 -0
  331. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/export_dms_config.png +0 -0
  332. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/export_dms_executed.png +0 -0
  333. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/export_dms_workflow.png +0 -0
  334. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/features.png +0 -0
  335. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/graph-etl-flow.png +0 -0
  336. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/high-level-io.png +0 -0
  337. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/instances-nordic44.png +0 -0
  338. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/instances-sheet.png +0 -0
  339. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/key-aspects-of-neat.png +0 -0
  340. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/knowledge-graph-viz-filtering.gif +0 -0
  341. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/knowledge-graph-viz.gif +0 -0
  342. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/life_cycle_analitic_solution_export_dms.png +0 -0
  343. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/life_cycle_converter_model_analytic_solution_model.png +0 -0
  344. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/life_cycle_download_reference_model_analytic_soluteion_model.png +0 -0
  345. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/life_cycle_download_reference_model_analytic_solution_model_export.png +0 -0
  346. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/logo.png +0 -0
  347. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/metadata-sheet.png +0 -0
  348. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/multi-hop.png +0 -0
  349. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/neat-high-level.png +0 -0
  350. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/neat-two_flows.png +0 -0
  351. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/neat_shift_tab.png +0 -0
  352. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/neat_tab.png +0 -0
  353. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/prefixes-sheet.png +0 -0
  354. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/pump_hello_world_published.png +0 -0
  355. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/rdf-in-nutshell.png +0 -0
  356. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/rdf2cdf-graph-change.jpg +0 -0
  357. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/rdf2cdf-graph-resurrect.jpg +0 -0
  358. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/rdf2cdf-graph.jpg +0 -0
  359. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/rdf2cdf-init-run-step1.jpg +0 -0
  360. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/rdf2cdf-init-run-step2.png +0 -0
  361. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/rdf2cdf-init-run.jpg +0 -0
  362. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/rdf2cdf-post-init.jpg +0 -0
  363. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/run_workflow.png +0 -0
  364. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/sheet2cdf-asset-hierarchy.png +0 -0
  365. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/sheet2cdf-running-workflow.gif +0 -0
  366. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/sheet2cdf-transformation-rules-ui.png +0 -0
  367. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/sheet2cdf-upload-rules.gif +0 -0
  368. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/sheet2cdf-workflow-steps.png +0 -0
  369. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/sheet2cdf-workflow.gif +0 -0
  370. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/sheet2cdf-workflow.png +0 -0
  371. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/step-configurables.png +0 -0
  372. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/step-metrics.png +0 -0
  373. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/tutorial-notebooks-part-2_graph-capturing-sheet.gif +0 -0
  374. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/validate_workflow.png +0 -0
  375. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/wf-ephemeral-mode.png +0 -0
  376. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/wf-overview.gif +0 -0
  377. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/wf-persistent-blocking-mode.png +0 -0
  378. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/wf-persistent-non-blocking.png +0 -0
  379. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/wf-start-mode-ui.png +0 -0
  380. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/wind_farm_classic_knowledge_graph.png +0 -0
  381. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/wind_farm_data_product_instances.png +0 -0
  382. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/work-in-progress.png +0 -0
  383. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/workflow-context.jpg +0 -0
  384. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/working_with_metadata_provenance.png +0 -0
  385. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/figs/working_with_metadata_published_dm.png +0 -0
  386. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/cdf-dms-architect-alice.xlsx +0 -0
  387. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/dms-addition-svein-harald.xlsx +0 -0
  388. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/dms-analytics-olav.xlsx +0 -0
  389. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/dms-architect-rules-raw-filter-example.xlsx +0 -0
  390. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/dms-architect-rules-template.xlsx +0 -0
  391. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/dms-rebuild-olav.xlsx +0 -0
  392. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/domain-expert-rules-template.xlsx +0 -0
  393. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/expert-grid-emma.xlsx +0 -0
  394. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/expert-wind-energy-jon.xlsx +0 -0
  395. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/information-addition-svein-harald.xlsx +0 -0
  396. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/information-analytics-olav-ref.xlsx +0 -0
  397. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/information-analytics-olav.xlsx +0 -0
  398. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/information-architect-david.xlsx +0 -0
  399. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/rules/information-architect-rules-template.xlsx +0 -0
  400. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-1-defining-data-model.mp4 +0 -0
  401. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-1-download-rules-template.mp4 +0 -0
  402. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-1-upload-gql-schema-to-cdf.mp4 +0 -0
  403. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-2-graph-capturing-sheet.mp4 +0 -0
  404. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-3-asset-hierarchy.mp4 +0 -0
  405. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-3-decommissioning.mp4 +0 -0
  406. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-3-relationships.mp4 +0 -0
  407. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-3-resurrection.mp4 +0 -0
  408. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/artifacts/videos/tutorial-4-asset-hierarchy.mp4 +0 -0
  409. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/data-modeling-principles.md +0 -0
  410. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/logical/overview.md +0 -0
  411. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/logical/properties.md +0 -0
  412. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/logical/reference.md +0 -0
  413. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/physical/enum.md +0 -0
  414. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/physical/overview.md +0 -0
  415. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/physical/properties.md +0 -0
  416. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/physical/reference.md +0 -0
  417. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/physical/views.md +0 -0
  418. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/rules.md +0 -0
  419. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/excel_data_modeling/units.md +0 -0
  420. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/gettingstarted/installation.md +0 -0
  421. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/gettingstarted/why-neat.md +0 -0
  422. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/index.md +0 -0
  423. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/base.md +0 -0
  424. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/drop.md +0 -0
  425. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/fix.md +0 -0
  426. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/inspect.md +0 -0
  427. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/mapping.md +0 -0
  428. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/prepare.md +0 -0
  429. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/read.md +0 -0
  430. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/set.md +0 -0
  431. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/show.md +0 -0
  432. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/subset.md +0 -0
  433. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/template.md +0 -0
  434. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/NeatSession/to.md +0 -0
  435. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/issues/base.md +0 -0
  436. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/issues/errors.md +0 -0
  437. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/issues/user_model_warnings.md +0 -0
  438. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/issues/warnings.md +0 -0
  439. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/reference/overview.md +0 -0
  440. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/data-modeling/figs/data-modeling-flow.png +0 -0
  441. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/data-modeling/files/wind_farm_prospecting_conceptual_data_model.xlsx +0 -0
  442. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/data-modeling/files/wind_farm_prospecting_conceptual_data_model_expanded.xlsx +0 -0
  443. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/data-modeling/files/wind_farm_prospecting_physical_data_model.xlsx +0 -0
  444. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/data-modeling/from-conceptual-to-physical-via-CDM.ipynb +0 -0
  445. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/data-modeling/http_purl.org_cognite_neat_data-model_verified_logical_wind_energy_WindFarmProspecting_v1.html +0 -0
  446. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/data-modeling/http_purl.org_cognite_neat_data-model_verified_logical_wind_energy_WindFarmProspecting_v1_implements.html +0 -0
  447. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/data-modeling/physical-data-model.xlsx +0 -0
  448. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/docs/tutorials/introduction/introduction.ipynb +0 -0
  449. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/mkdocs.yml +0 -0
  450. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/clean_space.py +0 -0
  451. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/core_classic_mapping.xlsx +0 -0
  452. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/dependency_profiler.py +0 -0
  453. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/docs_generate_unit.py +0 -0
  454. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/generate_steps_md.py +0 -0
  455. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/.gitignore +0 -0
  456. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/README.md +0 -0
  457. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/config.dev.yaml +0 -0
  458. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/neat_integration_runner/README.md +0 -0
  459. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/neat_integration_runner/auth/neat_cicd_testing.group.yaml +0 -0
  460. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/lift_pumps/classic/lift_pump_stations_root.Asset.csv +0 -0
  461. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/lift_pumps/data_sets/hierarchies.DataSet.yaml +0 -0
  462. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/lift_pumps/raw/collections_pump.Table.csv +0 -0
  463. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/lift_pumps/raw/collections_pump.Table.yaml +0 -0
  464. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/Measurement.Asset.yaml +0 -0
  465. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/Measurement.Label.yaml +0 -0
  466. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/MetMast.Asset.yaml +0 -0
  467. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/PowerGeneratingUnit.Label.yaml +0 -0
  468. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/Utsira.Asset.yaml +0 -0
  469. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/WT-01.Asset.yaml +0 -0
  470. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/WT-01_to_MetMast.Relationship.yaml +0 -0
  471. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/WT-02.Asset.yaml +0 -0
  472. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/WT-02_to_MetMast.Relationship.yaml +0 -0
  473. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/WindTurbine.Label.yaml +0 -0
  474. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/metMast.Label.yaml +0 -0
  475. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/planned_WT-01_2022-01-01.Event.yaml +0 -0
  476. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/classic/power_curve_manufacturer1.Sequence.yaml +0 -0
  477. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/data_sets/maintenance.DataSet.yaml +0 -0
  478. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/data_sets/source_ds.DataSet.yaml +0 -0
  479. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/data_sets/usecase_01.DataSet.yaml +0 -0
  480. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/files/WT-01_datasheet.FileMetadata.yaml +0 -0
  481. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/files/WT-01_datasheet.txt +0 -0
  482. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-01_forecast.TimeSeries.yaml +0 -0
  483. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-01_production.TimeSeries.yaml +0 -0
  484. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-02_forecast.TimeSeries.yaml +0 -0
  485. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-02_production.TimeSeries.yaml +0 -0
  486. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/migration.py +0 -0
  487. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/oxi_remote/README.md +0 -0
  488. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/oxi_remote/docker-compose.yaml +0 -0
  489. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/test_lookup_table.csv +0 -0
  490. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/scripts/windfarm_to_toolkit.py +0 -0
  491. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/__init__.py +0 -0
  492. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/config.py +0 -0
  493. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/__init__.py +0 -0
  494. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_graph/IMF_TempTransmitterComplete.ttl +0 -0
  495. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_graph/aml-raw-graph.ttl +0 -0
  496. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_graph/aml_example.aml +0 -0
  497. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_graph/dexpi-raw-graph.ttl +0 -0
  498. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_graph/dexpi_example.xml +0 -0
  499. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_graph/iodd_Piab-piCOMPACT10X-20230509-IODD1.1.xml +0 -0
  500. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_graph/low-quality-graph.ttl +0 -0
  501. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/asset_centric_cdf/assets.yaml +0 -0
  502. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/asset_centric_cdf/events.yaml +0 -0
  503. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/asset_centric_cdf/files.yaml +0 -0
  504. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/asset_centric_cdf/labels.yaml +0 -0
  505. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/asset_centric_cdf/relationships.yaml +0 -0
  506. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/asset_centric_cdf/sequence_rows.yaml +0 -0
  507. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/asset_centric_cdf/sequences.yaml +0 -0
  508. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/asset_centric_cdf/timeseries.yaml +0 -0
  509. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_instances/classic_windfarm.py +0 -0
  510. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/conceptual/broken_concepts.xlsx +0 -0
  511. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/conceptual/info-arch-car-rules.xlsx +0 -0
  512. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/conceptual/info_with_cdm_ref.xlsx +0 -0
  513. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/conceptual/information-unknown-value-type.xlsx +0 -0
  514. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/conceptual/only_concepts.xlsx +0 -0
  515. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/cognite_core_v1.zip +0 -0
  516. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/TemperatureController.zip +0 -0
  517. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/BaseConsumer.json +0 -0
  518. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/BasePlant.json +0 -0
  519. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/BaseReceiver.json +0 -0
  520. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/CityPlant.json +0 -0
  521. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/CoalPlant.json +0 -0
  522. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/DeliverySubStation.json +0 -0
  523. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/DomesticConsumer.json +0 -0
  524. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/FarmConsumer.json +0 -0
  525. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/Floor.json +0 -0
  526. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/GasPlant.json +0 -0
  527. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/GeneratorSubStation.json +0 -0
  528. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/HydroPlant.json +0 -0
  529. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/IndustrialConsumer.json +0 -0
  530. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/IndustrialPlant.json +0 -0
  531. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/NuclearPlant.json +0 -0
  532. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/PowerLine.json +0 -0
  533. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/Room.json +0 -0
  534. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/SolarPlant.json +0 -0
  535. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/Transformer.json +0 -0
  536. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/dtdl/energy-grid/WindPlant.json +0 -0
  537. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/referencing_core/MyDescribable.container.yaml +0 -0
  538. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/referencing_core/MyDescribable.view.yaml +0 -0
  539. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/non_neat/referencing_core/enterprise.datamodel.yaml +0 -0
  540. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/partial-model/complete.xlsx +0 -0
  541. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/partial-model/part1.xlsx +0 -0
  542. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/partial-model/part2.ttl +0 -0
  543. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/partial-model/part3.yaml +0 -0
  544. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/car_dms_rules_deprecated.xlsx +0 -0
  545. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/dm_raw_filter.xlsx +0 -0
  546. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/dm_view_space_different.xlsx +0 -0
  547. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/dms-unknown-value-type.xlsx +0 -0
  548. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/isa_plus_cdm.xlsx +0 -0
  549. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/missing-in-model-value.xlsx +0 -0
  550. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/mixed-up-version.xlsx +0 -0
  551. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/pump_example_duplicated_resources.xlsx +0 -0
  552. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/pump_example_with_missing_cells.xlsx +0 -0
  553. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical/pump_example_with_missing_cells_raise_issues.xlsx +0 -0
  554. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_invalid/inconsistent_container_dms_rules.xlsx +0 -0
  555. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_invalid/invalid_metadata.xlsx +0 -0
  556. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_invalid/invalid_property_dms_rules.xlsx +0 -0
  557. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_invalid/missing_view_container_dms_rules.xlsx +0 -0
  558. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_invalid/too_many_containers_per_view.xlsx +0 -0
  559. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_yamls/invalid_yaml.expected_issues.yaml +0 -0
  560. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_yamls/invalid_yaml.yaml +0 -0
  561. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_yamls/reverse_direct_relation_missing_target.expected_issues.yaml +0 -0
  562. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/data/_schema/physical_yamls/reverse_direct_relation_missing_target.yaml +0 -0
  563. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_end_to_end/__init__.py +0 -0
  564. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_end_to_end/test_rules_flow/test_cdm_extension_verification.yaml +0 -0
  565. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_end_to_end/test_rules_flow/test_ontology_importer_to_yaml.yml +0 -0
  566. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_end_to_end/test_rules_flow/test_to_extension_transformer.yml +0 -0
  567. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_end_to_end/test_rules_flow.py +0 -0
  568. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/__init__.py +0 -0
  569. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/conftest.py +0 -0
  570. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_api/__init__.py +0 -0
  571. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_client_available.py +0 -0
  572. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_graph/__init__.py +0 -0
  573. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_graph/test_loaders/__init__.py +0 -0
  574. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_neat_client/__init__.py +0 -0
  575. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_neat_client/test_cdf_loaders.py +0 -0
  576. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_rules/__init__.py +0 -0
  577. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_rules/test_exporters/__init__.py +0 -0
  578. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_rules/test_importers/__init__.py +0 -0
  579. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/__init__.py +0 -0
  580. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_create_enterprise.py +0 -0
  581. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_data_model_prepare_fix/test_prefix_dms_rules_entities.yml +0 -0
  582. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_data_model_prepare_fix/test_standardize_space_and_version.yml +0 -0
  583. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_data_model_to/test_raw_filter.yml +0 -0
  584. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_read/test_read_model_referencing_core.yml +0 -0
  585. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_session/test_read.py +0 -0
  586. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_utils/__init__.py +0 -0
  587. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_integration/test_utils/test_reader.py +0 -0
  588. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/__init__.py +0 -0
  589. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/__init__.py +0 -0
  590. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/__init__.py +0 -0
  591. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_dms_extractor.py +0 -0
  592. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_events_extractor.py +0 -0
  593. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_files_extractor.py +0 -0
  594. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_labels_extractor.py +0 -0
  595. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_raw_extractor.py +0 -0
  596. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_relationship_extractor.py +0 -0
  597. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_sequences_extractor.py +0 -0
  598. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_extractors/test_timeseries_extractor.py +0 -0
  599. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_loaders/__init__.py +0 -0
  600. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/__init__.py +0 -0
  601. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_graph/test_transformers/test_make_connection_on_exact_match.py +0 -0
  602. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_issues/__init__.py +0 -0
  603. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_issues/test_formatters.py +0 -0
  604. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_issues/test_issue_behavior.py +0 -0
  605. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_issues/test_issues_metatests.py +0 -0
  606. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_neat_client/__init__.py +0 -0
  607. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_neat_client/test_instances.py +0 -0
  608. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_neat_client/test_loaders.py +0 -0
  609. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_neat_client/test_schema.py +0 -0
  610. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_neat_package_metadata.py +0 -0
  611. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/__init__.py +0 -0
  612. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_exporters/__init__.py +0 -0
  613. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/__init__.py +0 -0
  614. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_importers/constants.py +0 -0
  615. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/__init__.py +0 -0
  616. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/test_input_rules.py +0 -0
  617. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_models/utils.py +0 -0
  618. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_rules/test_transformers/__init__.py +0 -0
  619. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_session/__init__.py +0 -0
  620. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_session/test_meta.py +0 -0
  621. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_session/test_read.py +0 -0
  622. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_store/__init__.py +0 -0
  623. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_store/tests_rules_store/test_import_export.yml +0 -0
  624. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_utils/__init__.py +0 -0
  625. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_utils/test_cdf_classes.py +0 -0
  626. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_utils/test_reader.py +0 -0
  627. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_utils/test_text.py +0 -0
  628. {cognite_neat-0.121.1 → cognite_neat-0.121.2}/tests/tests_unit/test_utils/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cognite-neat
3
- Version: 0.121.1
3
+ Version: 0.121.2
4
4
  Summary: Knowledge graph transformation
5
5
  Project-URL: Documentation, https://cognite-neat.readthedocs-hosted.com/
6
6
  Project-URL: Homepage, https://cognite-neat.readthedocs-hosted.com/
@@ -0,0 +1,2 @@
1
+ __version__ = "0.121.2"
2
+ __engine__ = "^2.0.4"
@@ -0,0 +1,91 @@
1
+ import itertools
2
+ from typing import overload
3
+
4
+ from cognite.client._api_client import APIClient
5
+ from cognite.client._cognite_client import CogniteClient
6
+ from cognite.client.config import ClientConfig
7
+ from cognite.client.data_classes.data_modeling.ids import _load_space_identifier
8
+ from cognite.client.utils.useful_types import SequenceNotStr
9
+
10
+ from cognite.neat.core._client.data_classes.statistics import (
11
+ ProjectStatsAndLimits,
12
+ SpaceInstanceCounts,
13
+ SpaceInstanceCountsList,
14
+ )
15
+
16
+
17
+ class StatisticsAPI(APIClient):
18
+ _RESOURCE_PATH = "/models/statistics"
19
+
20
+ def __init__(self, config: ClientConfig, api_version: str | None, cognite_client: CogniteClient) -> None:
21
+ # This is an alpha API, which requires a specific version.
22
+ super().__init__(config, "v1", cognite_client)
23
+ self._RETRIEVE_LIMIT = 100
24
+
25
+ def project(self) -> ProjectStatsAndLimits:
26
+ """`Retrieve project-wide usage data and limits
27
+
28
+ Returns the usage data and limits for a project's data modelling usage, including data model schemas
29
+ and graph instances
30
+
31
+ Returns:
32
+ ProjectStatsAndLimits: The requested statistics and limits
33
+
34
+ Examples:
35
+ Fetch project statistics (and limits) and check the current number of data models vs.
36
+ and how many more can be created:
37
+ >>> from cognite.neat.core._client import NeatClient
38
+ >>> client = NeatClient()
39
+ >>> stats = client.instance_statistics.project()
40
+ >>> num_dm = stats.data_models.current
41
+ >>> num_dm_left = stats.data_models.limit - num_dm
42
+ """
43
+ response_data = self._get(self._RESOURCE_PATH).json()
44
+ if "project" not in response_data:
45
+ response_data["project"] = self._cognite_client._config.project
46
+ return ProjectStatsAndLimits._load(response_data)
47
+
48
+ @overload
49
+ def list(self, space: str) -> SpaceInstanceCounts: ...
50
+
51
+ @overload
52
+ def list(self, space: SequenceNotStr[str] | None = None) -> SpaceInstanceCountsList: ...
53
+
54
+ def list(self, space: str | SequenceNotStr[str] | None = None) -> SpaceInstanceCounts | SpaceInstanceCountsList:
55
+ """`Retrieve usage data and limits per space
56
+
57
+ Args:
58
+ space (str | SequenceNotStr[str] | None): The space or spaces to retrieve statistics for.
59
+ If None, all spaces will be retrieved.
60
+
61
+ Returns:
62
+ SpaceInstanceCounts | SpaceInstanceCountsList: InstanceStatsPerSpace if a single space is given, else
63
+ InstanceStatsList (which is a list of InstanceStatsPerSpace)
64
+
65
+ Examples:
66
+ Fetch statistics for a single space:
67
+ >>> from cognite.neat.core._client import NeatClient
68
+ >>> client = NeatClient()
69
+ >>> res = client.instance_statistics.list("my-space")
70
+ Fetch statistics for multiple spaces:
71
+ >>> res = client.instance_statistics.list(
72
+ ... ["my-space1", "my-space2"]
73
+ ... )
74
+ Fetch statistics for all spaces (ignores the 'space' argument):
75
+ >>> res = client.instance_statistics.list(return_all=True)
76
+ """
77
+ if space is None:
78
+ return SpaceInstanceCountsList._load(self._get(self._RESOURCE_PATH + "/spaces").json()["items"])
79
+
80
+ is_single = isinstance(space, str)
81
+
82
+ ids = _load_space_identifier(space)
83
+ result = SpaceInstanceCountsList._load(
84
+ itertools.chain.from_iterable(
85
+ self._post(self._RESOURCE_PATH + "/spaces/byids", json={"items": chunk.as_dicts()}).json()["items"]
86
+ for chunk in ids.chunked(self._RETRIEVE_LIMIT)
87
+ )
88
+ )
89
+ if is_single:
90
+ return result[0]
91
+ return result
@@ -5,6 +5,7 @@ from cognite.neat.core._utils.auth import _CLIENT_NAME
5
5
  from ._api.data_modeling_loaders import DataModelLoaderAPI
6
6
  from ._api.neat_instances import NeatInstancesAPI
7
7
  from ._api.schema import SchemaAPI
8
+ from ._api.statistics import StatisticsAPI
8
9
 
9
10
 
10
11
  class NeatClient(CogniteClient):
@@ -17,3 +18,4 @@ class NeatClient(CogniteClient):
17
18
  self.loaders = DataModelLoaderAPI(self)
18
19
  self.schema = SchemaAPI(self)
19
20
  self.instances = NeatInstancesAPI(self)
21
+ self.instance_statistics = StatisticsAPI(self._config, self._config.api_subversion, self)
@@ -0,0 +1,125 @@
1
+ from dataclasses import dataclass
2
+ from typing import Any
3
+
4
+ from cognite.client import CogniteClient
5
+ from cognite.client.data_classes._base import CogniteObject, CogniteResource, CogniteResourceList
6
+ from typing_extensions import Self
7
+
8
+
9
+ @dataclass
10
+ class InstanceCounts(CogniteResource):
11
+ nodes: int
12
+ edges: int
13
+ soft_deleted_nodes: int
14
+ soft_deleted_edges: int
15
+
16
+ @classmethod
17
+ def _load(cls, resource: dict[str, Any], cognite_client: CogniteClient | None = None) -> Self:
18
+ return cls(
19
+ nodes=resource["nodes"],
20
+ edges=resource["edges"],
21
+ soft_deleted_nodes=resource["softDeletedNodes"],
22
+ soft_deleted_edges=resource["softDeletedEdges"],
23
+ )
24
+
25
+
26
+ @dataclass
27
+ class SpaceInstanceCounts(InstanceCounts):
28
+ space: str
29
+
30
+ @classmethod
31
+ def _load(cls, resource: dict[str, Any], cognite_client: CogniteClient | None = None) -> Self:
32
+ return cls(
33
+ space=resource["space"],
34
+ nodes=resource["nodes"],
35
+ edges=resource["edges"],
36
+ soft_deleted_nodes=resource["softDeletedNodes"],
37
+ soft_deleted_edges=resource["softDeletedEdges"],
38
+ )
39
+
40
+
41
+ class SpaceInstanceCountsList(CogniteResourceList):
42
+ _RESOURCE = SpaceInstanceCounts
43
+
44
+
45
+ @dataclass
46
+ class CountLimitPair(CogniteObject):
47
+ count: int
48
+ limit: int
49
+
50
+ @classmethod
51
+ def _load(cls, resource: dict[str, Any], cognite_client: CogniteClient | None = None) -> Self:
52
+ return cls(
53
+ count=resource["count"],
54
+ limit=resource["limit"],
55
+ )
56
+
57
+
58
+ @dataclass
59
+ class InstanceCountsLimits(InstanceCounts):
60
+ instances_limit: int
61
+ soft_deleted_instances_limit: int
62
+
63
+ @property
64
+ def instances(self) -> int:
65
+ return self.nodes + self.edges
66
+
67
+ @property
68
+ def soft_deleted_instances(self) -> int:
69
+ return self.soft_deleted_nodes + self.soft_deleted_edges
70
+
71
+ @classmethod
72
+ def _load(cls, resource: dict[str, Any], cognite_client: CogniteClient | None = None) -> Self:
73
+ return cls(
74
+ nodes=resource["nodes"],
75
+ edges=resource["edges"],
76
+ soft_deleted_nodes=resource["softDeletedNodes"],
77
+ soft_deleted_edges=resource["softDeletedEdges"],
78
+ instances_limit=resource["instancesLimit"],
79
+ soft_deleted_instances_limit=resource["softDeletedInstancesLimit"],
80
+ )
81
+
82
+
83
+ @dataclass
84
+ class ProjectStatsAndLimits(CogniteResource):
85
+ project: str
86
+ spaces: CountLimitPair
87
+ containers: CountLimitPair
88
+ views: CountLimitPair
89
+ data_models: CountLimitPair
90
+ container_properties: CountLimitPair
91
+ instances: InstanceCountsLimits
92
+ concurrent_read_limit: int
93
+ concurrent_write_limit: int
94
+ concurrent_delete_limit: int
95
+
96
+ @classmethod
97
+ def _load(cls, data: dict[str, Any], cognite_client: CogniteClient | None = None) -> Self:
98
+ return cls(
99
+ project=data["project"],
100
+ spaces=CountLimitPair._load(data["spaces"]),
101
+ containers=CountLimitPair._load(data["containers"]),
102
+ views=CountLimitPair._load(data["views"]),
103
+ data_models=CountLimitPair._load(data["dataModels"]),
104
+ container_properties=CountLimitPair._load(data["containerProperties"]),
105
+ instances=InstanceCountsLimits._load(data["instances"]),
106
+ concurrent_read_limit=data["concurrentReadLimit"],
107
+ concurrent_write_limit=data["concurrentWriteLimit"],
108
+ concurrent_delete_limit=data["concurrentDeleteLimit"],
109
+ )
110
+
111
+ def dump(self, camel_case: bool = True) -> dict[str, Any]:
112
+ return {
113
+ "project": self.project,
114
+ "spaces": self.spaces.dump(camel_case=camel_case),
115
+ "containers": self.containers.dump(camel_case=camel_case),
116
+ "views": self.views.dump(camel_case=camel_case),
117
+ "dataModels" if camel_case else "data_models": self.data_models.dump(camel_case=camel_case),
118
+ "containerProperties" if camel_case else "container_properties": self.container_properties.dump(
119
+ camel_case=camel_case
120
+ ),
121
+ "instances": self.instances.dump(camel_case=camel_case),
122
+ "concurrentReadLimit" if camel_case else "concurrent_read_limit": self.concurrent_read_limit,
123
+ "concurrentWriteLimit" if camel_case else "concurrent_write_limit": self.concurrent_write_limit,
124
+ "concurrentDeleteLimit" if camel_case else "concurrent_delete_limit": self.concurrent_delete_limit,
125
+ }
@@ -1,6 +1,7 @@
1
1
  from collections.abc import Iterator
2
2
  from contextlib import contextmanager
3
3
  from typing import Any
4
+ from unittest.mock import MagicMock
4
5
 
5
6
  from cognite.client.testing import CogniteClientMock
6
7
 
@@ -9,6 +10,7 @@ from cognite.neat.core._client._api_client import NeatClient
9
10
  from ._api.data_modeling_loaders import DataModelLoaderAPI
10
11
  from ._api.neat_instances import NeatInstancesAPI
11
12
  from ._api.schema import SchemaAPI
13
+ from ._api.statistics import StatisticsAPI
12
14
 
13
15
 
14
16
  class NeatClientMock(CogniteClientMock):
@@ -22,6 +24,8 @@ class NeatClientMock(CogniteClientMock):
22
24
  super().__init__(*args, **kwargs)
23
25
  return
24
26
  super().__init__(*args, **kwargs)
27
+ self.instance_statistics = MagicMock(spec_set=StatisticsAPI)
28
+
25
29
  self.schema = SchemaAPI(self)
26
30
  self.loaders = DataModelLoaderAPI(self)
27
31
  self.instances = NeatInstancesAPI(self)
@@ -12,7 +12,7 @@ from cognite import neat
12
12
  from cognite.neat.core._issues.errors._general import NeatValueError
13
13
 
14
14
  if TYPE_CHECKING:
15
- from cognite.neat.core._data_model.models.dms import DMSProperty
15
+ from cognite.neat.core._data_model.models.physical import PhysicalProperty
16
16
 
17
17
 
18
18
  def _is_in_notebook() -> bool:
@@ -104,9 +104,8 @@ COGNITE_CONCEPTS = (
104
104
 
105
105
  DMS_LISTABLE_PROPERTY_LIMIT = 1000
106
106
 
107
- EXAMPLE_RULES = PACKAGE_DIRECTORY / "_rules" / "examples"
108
- EXAMPLE_GRAPHS = PACKAGE_DIRECTORY / "_graph" / "examples"
109
- EXAMPLE_WORKFLOWS = PACKAGE_DIRECTORY / "_workflows" / "examples"
107
+ EXAMPLE_RULES = PACKAGE_DIRECTORY / "core" / "_data_model" / "examples"
108
+ EXAMPLE_GRAPHS = PACKAGE_DIRECTORY / "core" / "_instances" / "examples"
110
109
 
111
110
  DEFAULT_SPACE_URI = "http://purl.org/cognite/space/{space}#"
112
111
  SPACE_URI_PATTERN = re.compile(r"http://purl.org/cognite/space/(?P<space>[^#]+)#$")
@@ -196,11 +195,11 @@ _ASSET_PATH_PROPERTY = {
196
195
  BASE_MODEL = Literal["CogniteCore"]
197
196
 
198
197
 
199
- def get_asset_read_only_properties_with_connection() -> "list[DMSProperty]":
198
+ def get_asset_read_only_properties_with_connection() -> "list[PhysicalProperty]":
200
199
  """Gets the asset read-only properties with connection, i.e. Root and Path."""
201
- from cognite.neat.core._data_model.models.dms import DMSProperty
200
+ from cognite.neat.core._data_model.models.physical import PhysicalProperty
202
201
 
203
- return [DMSProperty.model_validate(item) for item in (_ASSET_ROOT_PROPERTY, _ASSET_PATH_PROPERTY)]
202
+ return [PhysicalProperty.model_validate(item) for item in (_ASSET_ROOT_PROPERTY, _ASSET_PATH_PROPERTY)]
204
203
 
205
204
 
206
205
  def get_base_concepts(
@@ -15,9 +15,10 @@ class EntityTypes(StrEnum):
15
15
  predicate = "predicate"
16
16
  object = "object"
17
17
  class_ = "class"
18
+ concept = "concept"
18
19
  parent_class = "parent_class"
19
20
  property_ = "property"
20
- dms_property = "dms_property"
21
+ physical_property = "physical_property"
21
22
  conceptual_property = "conceptual_property"
22
23
  object_property = "ObjectProperty"
23
24
  data_property = "DatatypeProperty"
@@ -43,9 +44,11 @@ class EntityTypes(StrEnum):
43
44
  space = "space"
44
45
 
45
46
 
46
- def get_reserved_words(key: Literal["class", "view", "property", "space"]) -> list[str]:
47
+ def get_reserved_words(
48
+ key: Literal["concept", "view", "property", "space"],
49
+ ) -> list[str]:
47
50
  return {
48
- "class": ["Class", "class"],
51
+ "concept": ["Concept", "concept"],
49
52
  "view": [
50
53
  "Query",
51
54
  "Mutation",
@@ -103,10 +106,14 @@ DATA_MODEL_COMPLIANCE_REGEX = r"^[a-zA-Z]([a-zA-Z0-9_]{0,253}[a-zA-Z0-9])?$"
103
106
  VIEW_ID_COMPLIANCE_REGEX = (
104
107
  rf"(?!^({'|'.join(get_reserved_words('view'))})$)" r"(^[a-zA-Z][a-zA-Z0-9_]{0,253}[a-zA-Z0-9]?$)"
105
108
  )
106
- DMS_PROPERTY_ID_COMPLIANCE_REGEX = (
107
- rf"(?!^({'|'.join(get_reserved_words('property'))})$)" r"(^[a-zA-Z][a-zA-Z0-9_]{0,253}[a-zA-Z0-9]?$)"
109
+ PHYSICAL_PROPERTY_ID_COMPLIANCE_REGEX = (
110
+ rf"(?!^({'|'.join(get_reserved_words('property'))})$)"
111
+ r"(^[a-zA-Z][a-zA-Z0-9_]{0,253}[a-zA-Z0-9]?$)"
112
+ )
113
+ CONCEPT_ID_COMPLIANCE_REGEX = (
114
+ rf"(?!^({'|'.join(get_reserved_words('concept'))})$)"
115
+ r"(^[a-zA-Z0-9._-]{0,253}[a-zA-Z0-9]?$)"
108
116
  )
109
- CLASS_ID_COMPLIANCE_REGEX = rf"(?!^({'|'.join(get_reserved_words('class'))})$)" r"(^[a-zA-Z0-9._-]{0,253}[a-zA-Z0-9]?$)"
110
117
 
111
118
  INFORMATION_PROPERTY_ID_COMPLIANCE_REGEX = r"^(\*)|(?!^(Property|property)$)(^[a-zA-Z0-9._-]{0,253}[a-zA-Z0-9]?$)"
112
119
  VERSION_COMPLIANCE_REGEX = r"^[a-zA-Z0-9]([.a-zA-Z0-9_-]{0,41}[a-zA-Z0-9])?$"
@@ -139,15 +146,15 @@ class _Patterns:
139
146
  return re.compile(VIEW_ID_COMPLIANCE_REGEX)
140
147
 
141
148
  @cached_property
142
- def dms_property_id_compliance(self) -> re.Pattern[str]:
143
- return re.compile(DMS_PROPERTY_ID_COMPLIANCE_REGEX)
149
+ def physical_property_id_compliance(self) -> re.Pattern[str]:
150
+ return re.compile(PHYSICAL_PROPERTY_ID_COMPLIANCE_REGEX)
144
151
 
145
152
  @cached_property
146
- def class_id_compliance(self) -> re.Pattern[str]:
147
- return re.compile(CLASS_ID_COMPLIANCE_REGEX)
153
+ def concept_id_compliance(self) -> re.Pattern[str]:
154
+ return re.compile(CONCEPT_ID_COMPLIANCE_REGEX)
148
155
 
149
156
  @cached_property
150
- def information_property_id_compliance(self) -> re.Pattern[str]:
157
+ def conceptual_property_id_compliance(self) -> re.Pattern[str]:
151
158
  return re.compile(INFORMATION_PROPERTY_ID_COMPLIANCE_REGEX)
152
159
 
153
160
  @cached_property
@@ -158,11 +165,11 @@ class _Patterns:
158
165
  self,
159
166
  entity: EntityTypes,
160
167
  ) -> re.Pattern:
161
- if entity == EntityTypes.class_:
162
- return self.class_id_compliance
168
+ if entity == EntityTypes.concept:
169
+ return self.concept_id_compliance
163
170
 
164
171
  elif entity == EntityTypes.conceptual_property:
165
- return self.information_property_id_compliance
172
+ return self.conceptual_property_id_compliance
166
173
 
167
174
  elif entity == EntityTypes.view:
168
175
  return self.view_id_compliance
@@ -171,8 +178,8 @@ class _Patterns:
171
178
  elif entity == EntityTypes.container:
172
179
  return self.view_id_compliance
173
180
 
174
- elif entity == EntityTypes.dms_property:
175
- return self.dms_property_id_compliance
181
+ elif entity == EntityTypes.physical_property:
182
+ return self.physical_property_id_compliance
176
183
 
177
184
  elif entity == EntityTypes.version:
178
185
  return self.version_compliance
@@ -0,0 +1,59 @@
1
+ from dataclasses import dataclass
2
+ from typing import Generic, TypeAlias, TypeVar
3
+
4
+ from cognite.neat.core._data_model.models import (
5
+ ConceptualDataModel,
6
+ PhysicalDataModel,
7
+ )
8
+ from cognite.neat.core._data_model.models.conceptual._unverified import (
9
+ UnverifiedConceptualDataModel,
10
+ )
11
+ from cognite.neat.core._data_model.models.physical._unverified import (
12
+ UnverifiedPhysicalDataModel,
13
+ )
14
+ from cognite.neat.core._utils.spreadsheet import SpreadsheetRead
15
+
16
+ VerifiedDataModel: TypeAlias = ConceptualDataModel | PhysicalDataModel
17
+
18
+ T_VerifiedDataModel = TypeVar("T_VerifiedDataModel", bound=VerifiedDataModel)
19
+ UnverifiedDataModel: TypeAlias = UnverifiedPhysicalDataModel | UnverifiedConceptualDataModel
20
+ T_UnverifiedDataModel = TypeVar("T_UnverifiedDataModel", bound=UnverifiedDataModel)
21
+
22
+
23
+ @dataclass
24
+ class ImportedDataModel(Generic[T_UnverifiedDataModel]):
25
+ """This class is used to store results of data model import from a source prior to
26
+ verification and validation.
27
+
28
+ Attributes:
29
+ unverified_data_model: The unverified data model.
30
+ context: The context of the import, including warnings, errors and any other
31
+ relevant information.
32
+ """
33
+
34
+ unverified_data_model: T_UnverifiedDataModel | None
35
+ context: dict[str, SpreadsheetRead]
36
+
37
+ @classmethod
38
+ def display_type_name(cls) -> str:
39
+ return "UnverifiedModel"
40
+
41
+ @property
42
+ def display_name(self) -> str:
43
+ if self.unverified_data_model is None:
44
+ return "Failed to load data model"
45
+ return self.unverified_data_model.display_name
46
+
47
+
48
+ ImportedUnverifiedDataModel: TypeAlias = (
49
+ ImportedDataModel[UnverifiedPhysicalDataModel] | ImportedDataModel[UnverifiedConceptualDataModel]
50
+ )
51
+ T_ImportedUnverifiedDataModel = TypeVar("T_ImportedUnverifiedDataModel", bound=ImportedUnverifiedDataModel)
52
+
53
+ DataModel: TypeAlias = (
54
+ ConceptualDataModel
55
+ | PhysicalDataModel
56
+ | ImportedDataModel[UnverifiedPhysicalDataModel]
57
+ | ImportedDataModel[UnverifiedConceptualDataModel]
58
+ )
59
+ T_DataModel = TypeVar("T_DataModel", bound=DataModel)
@@ -0,0 +1,3 @@
1
+ from ._base import DataModelAnalysis
2
+
3
+ __all__ = ["DataModelAnalysis"]