cognite-neat 0.123.0__tar.gz → 0.123.1__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 (634) hide show
  1. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/PKG-INFO +1 -1
  2. cognite_neat-0.123.1/cognite/neat/_version.py +2 -0
  3. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/_api/neat_instances.py +30 -0
  4. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_constants.py +10 -1
  5. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/loaders/_rdf2dms.py +8 -0
  6. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/errors/__init__.py +2 -1
  7. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/errors/_general.py +14 -0
  8. cognite_neat-0.123.1/cognite/neat/plugins/__init__.py +3 -0
  9. cognite_neat-0.123.1/cognite/neat/plugins/_issues.py +25 -0
  10. cognite_neat-0.123.1/cognite/neat/plugins/_manager.py +99 -0
  11. cognite_neat-0.123.1/cognite/neat/plugins/data_model/importers/__init__.py +5 -0
  12. cognite_neat-0.123.1/cognite/neat/plugins/data_model/importers/_base.py +27 -0
  13. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/exceptions.py +2 -1
  14. cognite_neat-0.123.1/last_changelog_entry.md +6 -0
  15. cognite_neat-0.123.1/last_git_message.txt +23 -0
  16. cognite_neat-0.123.1/last_version.txt +1 -0
  17. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/pyproject.toml +1 -1
  18. cognite_neat-0.123.1/tests/tests_unit/test_graph/test_loaders/test_rdf2dms.py +107 -0
  19. cognite_neat-0.123.1/tests/tests_unit/test_plugins.py +110 -0
  20. cognite_neat-0.123.1/tests/tests_unit/test_utils/__init__.py +0 -0
  21. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/uv.lock +1 -1
  22. cognite_neat-0.123.0/cognite/neat/_version.py +0 -2
  23. cognite_neat-0.123.0/last_changelog_entry.md +0 -17
  24. cognite_neat-0.123.0/last_git_message.txt +0 -42
  25. cognite_neat-0.123.0/last_version.txt +0 -1
  26. cognite_neat-0.123.0/tests/tests_unit/test_graph/test_loaders/test_rdf2dms.py +0 -57
  27. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.coveragerc +0 -0
  28. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.github/CODEOWNERS +0 -0
  29. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.github/ISSUE_TEMPLATE/bug-report.md +0 -0
  30. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.github/ISSUE_TEMPLATE/feature-request.md +0 -0
  31. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.github/pull_request_template.md +0 -0
  32. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.github/renovate.json +0 -0
  33. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.github/workflows/code-quality.yaml +0 -0
  34. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.github/workflows/release.yaml +0 -0
  35. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.gitignore +0 -0
  36. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.pre-commit-config.yaml +0 -0
  37. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/.readthedocs.yaml +0 -0
  38. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/CODE_OF_CONDUCT.md +0 -0
  39. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/CONTRIBUTING.md +0 -0
  40. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/LICENSE +0 -0
  41. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/README.md +0 -0
  42. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cdf.toml +0 -0
  43. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/codecov.yml +0 -0
  44. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/__init__.py +0 -0
  45. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/__init__.py +0 -0
  46. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/__init__.py +0 -0
  47. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/_api/__init__.py +0 -0
  48. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/_api/data_modeling_loaders.py +0 -0
  49. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/_api/schema.py +0 -0
  50. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/_api/statistics.py +0 -0
  51. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/_api_client.py +0 -0
  52. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/data_classes/__init__.py +0 -0
  53. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/data_classes/data_modeling.py +0 -0
  54. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/data_classes/neat_sequence.py +0 -0
  55. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/data_classes/schema.py +0 -0
  56. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/data_classes/statistics.py +0 -0
  57. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_client/testing.py +0 -0
  58. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_config.py +0 -0
  59. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/__init__.py +0 -0
  60. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/_constants.py +0 -0
  61. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/_shared.py +0 -0
  62. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/analysis/__init__.py +0 -0
  63. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/analysis/_base.py +0 -0
  64. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/catalog/__init__.py +0 -0
  65. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/catalog/classic_model.xlsx +0 -0
  66. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/catalog/conceptual-imf-data-model.xlsx +0 -0
  67. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/catalog/hello_world_pump.xlsx +0 -0
  68. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/exporters/__init__.py +0 -0
  69. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/exporters/_base.py +0 -0
  70. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/exporters/_data_model2dms.py +0 -0
  71. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/exporters/_data_model2excel.py +0 -0
  72. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/exporters/_data_model2instance_template.py +0 -0
  73. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/exporters/_data_model2ontology.py +0 -0
  74. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/exporters/_data_model2yaml.py +0 -0
  75. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/__init__.py +0 -0
  76. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_base.py +0 -0
  77. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_base_file_reader.py +0 -0
  78. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_dict2data_model.py +0 -0
  79. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_dms2data_model.py +0 -0
  80. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_dtdl2data_model/__init__.py +0 -0
  81. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_dtdl2data_model/_unit_lookup.py +0 -0
  82. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_dtdl2data_model/dtdl_converter.py +0 -0
  83. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_dtdl2data_model/dtdl_importer.py +0 -0
  84. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_dtdl2data_model/spec.py +0 -0
  85. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_rdf/__init__.py +0 -0
  86. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_rdf/_base.py +0 -0
  87. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_rdf/_imf2data_model.py +0 -0
  88. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_rdf/_inference2rdata_model.py +0 -0
  89. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_rdf/_owl2data_model.py +0 -0
  90. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_rdf/_shared.py +0 -0
  91. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/importers/_spreadsheet2data_model.py +0 -0
  92. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/__init__.py +0 -0
  93. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/_base_unverified.py +0 -0
  94. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/_base_verified.py +0 -0
  95. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/_types.py +0 -0
  96. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/conceptual/__init__.py +0 -0
  97. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/conceptual/_unverified.py +0 -0
  98. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/conceptual/_validation.py +0 -0
  99. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/conceptual/_verified.py +0 -0
  100. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/data_types.py +0 -0
  101. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/entities/__init__.py +0 -0
  102. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/entities/_constants.py +0 -0
  103. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/entities/_loaders.py +0 -0
  104. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/entities/_multi_value.py +0 -0
  105. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/entities/_single_value.py +0 -0
  106. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/entities/_types.py +0 -0
  107. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/entities/_wrapped.py +0 -0
  108. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/mapping/__init__.py +0 -0
  109. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/mapping/_classic2core.py +0 -0
  110. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/mapping/_classic2core.yaml +0 -0
  111. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/physical/__init__.py +0 -0
  112. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/physical/_exporter.py +0 -0
  113. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/physical/_unverified.py +0 -0
  114. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/physical/_validation.py +0 -0
  115. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/models/physical/_verified.py +0 -0
  116. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/transformers/__init__.py +0 -0
  117. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/transformers/_base.py +0 -0
  118. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/transformers/_converters.py +0 -0
  119. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/transformers/_mapping.py +0 -0
  120. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_data_model/transformers/_verification.py +0 -0
  121. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/__init__.py +0 -0
  122. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/_shared.py +0 -0
  123. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/_tracking/__init__.py +0 -0
  124. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/_tracking/base.py +0 -0
  125. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/_tracking/log.py +0 -0
  126. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/examples/Knowledge-Graph-Nordic44-dirty.xml +0 -0
  127. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/examples/Knowledge-Graph-Nordic44.xml +0 -0
  128. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/examples/__init__.py +0 -0
  129. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/examples/skos-capturing-sheet-wind-topics.xlsx +0 -0
  130. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/__init__.py +0 -0
  131. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_base.py +0 -0
  132. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/__init__.py +0 -0
  133. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_assets.py +0 -0
  134. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_base.py +0 -0
  135. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_classic.py +0 -0
  136. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_data_sets.py +0 -0
  137. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_events.py +0 -0
  138. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_files.py +0 -0
  139. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_labels.py +0 -0
  140. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_relationships.py +0 -0
  141. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_sequences.py +0 -0
  142. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_classic_cdf/_timeseries.py +0 -0
  143. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_dict.py +0 -0
  144. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_dms.py +0 -0
  145. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_dms_graph.py +0 -0
  146. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_mock_graph_generator.py +0 -0
  147. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_raw.py +0 -0
  148. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/extractors/_rdf_file.py +0 -0
  149. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/loaders/__init__.py +0 -0
  150. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/loaders/_base.py +0 -0
  151. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/loaders/_rdf_to_instance_space.py +0 -0
  152. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/queries/__init__.py +0 -0
  153. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/queries/_base.py +0 -0
  154. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/queries/_queries.py +0 -0
  155. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/queries/_select.py +0 -0
  156. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/queries/_update.py +0 -0
  157. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/transformers/__init__.py +0 -0
  158. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/transformers/_base.py +0 -0
  159. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/transformers/_classic_cdf.py +0 -0
  160. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/transformers/_prune_graph.py +0 -0
  161. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/transformers/_rdfpath.py +0 -0
  162. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_instances/transformers/_value_type.py +0 -0
  163. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/__init__.py +0 -0
  164. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/_base.py +0 -0
  165. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/_contextmanagers.py +0 -0
  166. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/_factory.py +0 -0
  167. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/errors/_external.py +0 -0
  168. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/errors/_properties.py +0 -0
  169. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/errors/_resources.py +0 -0
  170. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/errors/_wrapper.py +0 -0
  171. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/formatters.py +0 -0
  172. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/warnings/__init__.py +0 -0
  173. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/warnings/_external.py +0 -0
  174. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/warnings/_general.py +0 -0
  175. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/warnings/_models.py +0 -0
  176. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/warnings/_properties.py +0 -0
  177. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/warnings/_resources.py +0 -0
  178. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_issues/warnings/user_modeling.py +0 -0
  179. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_shared.py +0 -0
  180. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_store/__init__.py +0 -0
  181. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_store/_data_model.py +0 -0
  182. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_store/_instance.py +0 -0
  183. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_store/_provenance.py +0 -0
  184. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_store/exceptions.py +0 -0
  185. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/__init__.py +0 -0
  186. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/auth.py +0 -0
  187. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/auxiliary.py +0 -0
  188. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/collection_.py +0 -0
  189. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/graph_transformations_report.py +0 -0
  190. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/io_.py +0 -0
  191. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/rdf_.py +0 -0
  192. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/reader/__init__.py +0 -0
  193. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/reader/_base.py +0 -0
  194. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/spreadsheet.py +0 -0
  195. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/text.py +0 -0
  196. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/time_.py +0 -0
  197. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/upload.py +0 -0
  198. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/core/_utils/xml_.py +0 -0
  199. {cognite_neat-0.123.0/tests → cognite_neat-0.123.1/cognite/neat/plugins/data_model}/__init__.py +0 -0
  200. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/py.typed +0 -0
  201. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/__init__.py +0 -0
  202. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_base.py +0 -0
  203. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_collector.py +0 -0
  204. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_drop.py +0 -0
  205. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_experimental.py +0 -0
  206. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_explore.py +0 -0
  207. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_fix.py +0 -0
  208. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_inspect.py +0 -0
  209. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_mapping.py +0 -0
  210. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_prepare.py +0 -0
  211. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_read.py +0 -0
  212. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_set.py +0 -0
  213. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_show.py +0 -0
  214. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_state/README.md +0 -0
  215. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_state.py +0 -0
  216. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_subset.py +0 -0
  217. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_template.py +0 -0
  218. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_to.py +0 -0
  219. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/_wizard.py +0 -0
  220. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/engine/__init__.py +0 -0
  221. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/engine/_import.py +0 -0
  222. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/engine/_interface.py +0 -0
  223. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/cognite/neat/session/engine/_load.py +0 -0
  224. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/dev.py +0 -0
  225. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/DataModelCDF.PNG +0 -0
  226. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/DataModelInstancesCDF.PNG +0 -0
  227. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/DataModelInstancesVizCDF.PNG +0 -0
  228. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/aml-dm-cdf.png +0 -0
  229. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/aml-dm.png +0 -0
  230. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/aml-instances-cdf.png +0 -0
  231. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/aml-instances-full.png +0 -0
  232. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations.png +0 -0
  233. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_dms.png +0 -0
  234. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_dms_typed.png +0 -0
  235. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_populated.png +0 -0
  236. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/asset_hierarchy_lift_pump_stations_populated_with_typed.png +0 -0
  237. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/authorship.png +0 -0
  238. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/base-components.png +0 -0
  239. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/bid_capacity_data_model.png +0 -0
  240. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/change_validate_step.png +0 -0
  241. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/connecting_metadata_dm.png +0 -0
  242. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/connecting_metadata_populated.png +0 -0
  243. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/connecting_metadata_published_dm.png +0 -0
  244. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/container_spec.png +0 -0
  245. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/core_extension.png +0 -0
  246. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/core_extension_excel.png +0 -0
  247. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/core_extension_no_connection.png +0 -0
  248. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/core_extension_with_properties.png +0 -0
  249. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/data-exploration.gif +0 -0
  250. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/data-model-nordic44.png +0 -0
  251. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/data-modeling-flow.png +0 -0
  252. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dexpi-dm-cdf.png +0 -0
  253. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dexpi-dm-viz.png +0 -0
  254. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dexpi-graph-viz.png +0 -0
  255. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dexpi-instance-cdf.png +0 -0
  256. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dexpi-transformed-graph-viz.png +0 -0
  257. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dm-classes.png +0 -0
  258. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dm-object-shapes.png +0 -0
  259. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dm-prefixes.png +0 -0
  260. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dm-source-to-solution-mapping.png +0 -0
  261. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dm2cdf-asset.png +0 -0
  262. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/dm2cdf-mapping.png +0 -0
  263. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/execution-history.gif +0 -0
  264. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/export_dms_config.png +0 -0
  265. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/export_dms_executed.png +0 -0
  266. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/export_dms_workflow.png +0 -0
  267. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/features.png +0 -0
  268. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/graph-etl-flow.png +0 -0
  269. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/high-level-io.png +0 -0
  270. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/instances-nordic44.png +0 -0
  271. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/instances-sheet.png +0 -0
  272. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/key-aspects-of-neat.png +0 -0
  273. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/knowledge-graph-viz-filtering.gif +0 -0
  274. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/knowledge-graph-viz.gif +0 -0
  275. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/life_cycle_analitic_solution_export_dms.png +0 -0
  276. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/life_cycle_converter_model_analytic_solution_model.png +0 -0
  277. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/life_cycle_download_reference_model_analytic_soluteion_model.png +0 -0
  278. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/life_cycle_download_reference_model_analytic_solution_model_export.png +0 -0
  279. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/logo.png +0 -0
  280. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/metadata-sheet.png +0 -0
  281. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/multi-hop.png +0 -0
  282. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/neat-high-level.png +0 -0
  283. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/neat-two_flows.png +0 -0
  284. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/neat_shift_tab.png +0 -0
  285. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/neat_tab.png +0 -0
  286. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/prefixes-sheet.png +0 -0
  287. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/pump_hello_world_published.png +0 -0
  288. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/rdf-in-nutshell.png +0 -0
  289. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/rdf2cdf-graph-change.jpg +0 -0
  290. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/rdf2cdf-graph-resurrect.jpg +0 -0
  291. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/rdf2cdf-graph.jpg +0 -0
  292. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/rdf2cdf-init-run-step1.jpg +0 -0
  293. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/rdf2cdf-init-run-step2.png +0 -0
  294. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/rdf2cdf-init-run.jpg +0 -0
  295. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/rdf2cdf-post-init.jpg +0 -0
  296. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/run_workflow.png +0 -0
  297. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/sheet2cdf-asset-hierarchy.png +0 -0
  298. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/sheet2cdf-running-workflow.gif +0 -0
  299. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/sheet2cdf-transformation-rules-ui.png +0 -0
  300. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/sheet2cdf-upload-rules.gif +0 -0
  301. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/sheet2cdf-workflow-steps.png +0 -0
  302. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/sheet2cdf-workflow.gif +0 -0
  303. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/sheet2cdf-workflow.png +0 -0
  304. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/step-configurables.png +0 -0
  305. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/step-metrics.png +0 -0
  306. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/tutorial-notebooks-part-2_graph-capturing-sheet.gif +0 -0
  307. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/validate_workflow.png +0 -0
  308. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/wf-ephemeral-mode.png +0 -0
  309. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/wf-overview.gif +0 -0
  310. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/wf-persistent-blocking-mode.png +0 -0
  311. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/wf-persistent-non-blocking.png +0 -0
  312. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/wf-start-mode-ui.png +0 -0
  313. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/wind_farm_classic_knowledge_graph.png +0 -0
  314. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/wind_farm_data_product_instances.png +0 -0
  315. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/work-in-progress.png +0 -0
  316. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/workflow-context.jpg +0 -0
  317. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/working_with_metadata_provenance.png +0 -0
  318. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/figs/working_with_metadata_published_dm.png +0 -0
  319. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/cdf-dms-architect-alice.xlsx +0 -0
  320. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/dms-addition-svein-harald.xlsx +0 -0
  321. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/dms-analytics-olav.xlsx +0 -0
  322. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/dms-architect-rules-raw-filter-example.xlsx +0 -0
  323. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/dms-architect-rules-template.xlsx +0 -0
  324. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/dms-rebuild-olav.xlsx +0 -0
  325. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/domain-expert-rules-template.xlsx +0 -0
  326. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/expert-grid-emma.xlsx +0 -0
  327. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/expert-wind-energy-jon.xlsx +0 -0
  328. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/information-addition-svein-harald.xlsx +0 -0
  329. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/information-analytics-olav-ref.xlsx +0 -0
  330. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/information-analytics-olav.xlsx +0 -0
  331. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/information-architect-david.xlsx +0 -0
  332. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/rules/information-architect-rules-template.xlsx +0 -0
  333. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-1-defining-data-model.mp4 +0 -0
  334. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-1-download-rules-template.mp4 +0 -0
  335. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-1-upload-gql-schema-to-cdf.mp4 +0 -0
  336. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-2-graph-capturing-sheet.mp4 +0 -0
  337. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-3-asset-hierarchy.mp4 +0 -0
  338. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-3-decommissioning.mp4 +0 -0
  339. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-3-relationships.mp4 +0 -0
  340. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-3-resurrection.mp4 +0 -0
  341. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/artifacts/videos/tutorial-4-asset-hierarchy.mp4 +0 -0
  342. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/data-modeling-principles.md +0 -0
  343. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/conceptual/overview.md +0 -0
  344. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/conceptual/reference.md +0 -0
  345. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/data_model.md +0 -0
  346. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/physical/enum.md +0 -0
  347. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/physical/overview.md +0 -0
  348. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/physical/properties.md +0 -0
  349. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/physical/reference.md +0 -0
  350. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/physical/views.md +0 -0
  351. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/excel_data_modeling/units.md +0 -0
  352. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/gettingstarted/installation.md +0 -0
  353. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/gettingstarted/why-neat.md +0 -0
  354. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/index.md +0 -0
  355. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/base.md +0 -0
  356. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/drop.md +0 -0
  357. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/fix.md +0 -0
  358. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/inspect.md +0 -0
  359. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/mapping.md +0 -0
  360. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/prepare.md +0 -0
  361. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/read.md +0 -0
  362. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/set.md +0 -0
  363. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/show.md +0 -0
  364. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/subset.md +0 -0
  365. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/template.md +0 -0
  366. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/NeatSession/to.md +0 -0
  367. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/issues/base.md +0 -0
  368. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/issues/errors.md +0 -0
  369. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/issues/user_model_warnings.md +0 -0
  370. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/issues/warnings.md +0 -0
  371. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/reference/overview.md +0 -0
  372. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/cold_start.ipynb +0 -0
  373. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/figs/data-modeling-flow.png +0 -0
  374. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/files/wind_farm_prospecting_conceptual_data_model.xlsx +0 -0
  375. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/files/wind_farm_prospecting_conceptual_data_model_expanded.xlsx +0 -0
  376. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/files/wind_farm_prospecting_physical_data_model.xlsx +0 -0
  377. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/from-conceptual-to-physical-via-CDM.ipynb +0 -0
  378. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/http_purl.org_cognite_neat_data-model_verified_conceptual_wind_energy_WindFarmProspecting_v1.html +0 -0
  379. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/http_purl.org_cognite_neat_data-model_verified_conceptual_wind_energy_WindFarmProspecting_v1_implements.html +0 -0
  380. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/http_purl.org_cognite_neat_data-model_verified_physical_neat_playground_NeatHelloWorld_v1.html +0 -0
  381. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/my_first_model.xlsx +0 -0
  382. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/data-modeling/physical-data-model.xlsx +0 -0
  383. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/docs/tutorials/introduction/introduction.ipynb +0 -0
  384. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/mkdocs.yml +0 -0
  385. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/clean_space.py +0 -0
  386. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/core_classic_mapping.xlsx +0 -0
  387. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/create_classic_core_mapping_yaml.py +0 -0
  388. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/dependency_profiler.py +0 -0
  389. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/docs_generate_reference.py +0 -0
  390. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/docs_generate_unit.py +0 -0
  391. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/generate_steps_md.py +0 -0
  392. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/.gitignore +0 -0
  393. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/README.md +0 -0
  394. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/config.dev.yaml +0 -0
  395. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/neat_integration_runner/README.md +0 -0
  396. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/neat_integration_runner/auth/neat_cicd_testing.group.yaml +0 -0
  397. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/lift_pumps/classic/lift_pump_stations_root.Asset.csv +0 -0
  398. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/lift_pumps/data_sets/hierarchies.DataSet.yaml +0 -0
  399. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/lift_pumps/raw/collections_pump.Table.csv +0 -0
  400. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/lift_pumps/raw/collections_pump.Table.yaml +0 -0
  401. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/Measurement.Asset.yaml +0 -0
  402. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/Measurement.Label.yaml +0 -0
  403. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/MetMast.Asset.yaml +0 -0
  404. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/PowerGeneratingUnit.Label.yaml +0 -0
  405. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/Utsira.Asset.yaml +0 -0
  406. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/WT-01.Asset.yaml +0 -0
  407. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/WT-01_to_MetMast.Relationship.yaml +0 -0
  408. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/WT-02.Asset.yaml +0 -0
  409. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/WT-02_to_MetMast.Relationship.yaml +0 -0
  410. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/WindTurbine.Label.yaml +0 -0
  411. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/metMast.Label.yaml +0 -0
  412. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/planned_WT-01_2022-01-01.Event.yaml +0 -0
  413. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/classic/power_curve_manufacturer1.Sequence.yaml +0 -0
  414. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/data_sets/maintenance.DataSet.yaml +0 -0
  415. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/data_sets/source_ds.DataSet.yaml +0 -0
  416. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/data_sets/usecase_01.DataSet.yaml +0 -0
  417. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/files/WT-01_datasheet.FileMetadata.yaml +0 -0
  418. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/files/WT-01_datasheet.txt +0 -0
  419. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-01_forecast.TimeSeries.yaml +0 -0
  420. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-01_production.TimeSeries.yaml +0 -0
  421. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-02_forecast.TimeSeries.yaml +0 -0
  422. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/integration_runner/modules/test_data/windfarm/timeseries/WT-02_production.TimeSeries.yaml +0 -0
  423. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/manual_test_dms_importer.py +0 -0
  424. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/migration.py +0 -0
  425. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/oxi_remote/README.md +0 -0
  426. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/oxi_remote/docker-compose.yaml +0 -0
  427. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/test_lookup_table.csv +0 -0
  428. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/scripts/windfarm_to_toolkit.py +0 -0
  429. {cognite_neat-0.123.0/tests/tests_end_to_end → cognite_neat-0.123.1/tests}/__init__.py +0 -0
  430. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/config.py +0 -0
  431. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/conftest.py +0 -0
  432. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/__init__.py +0 -0
  433. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_graph/IMF_TempTransmitterComplete.ttl +0 -0
  434. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_graph/aml-raw-graph.ttl +0 -0
  435. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_graph/aml_example.aml +0 -0
  436. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_graph/car.py +0 -0
  437. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_graph/dexpi-raw-graph.ttl +0 -0
  438. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_graph/dexpi_example.xml +0 -0
  439. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_graph/iodd_Piab-piCOMPACT10X-20230509-IODD1.1.xml +0 -0
  440. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_graph/low-quality-graph.ttl +0 -0
  441. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/asset_centric_cdf/assets.yaml +0 -0
  442. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/asset_centric_cdf/events.yaml +0 -0
  443. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/asset_centric_cdf/files.yaml +0 -0
  444. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/asset_centric_cdf/labels.yaml +0 -0
  445. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/asset_centric_cdf/relationships.yaml +0 -0
  446. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/asset_centric_cdf/sequence_rows.yaml +0 -0
  447. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/asset_centric_cdf/sequences.yaml +0 -0
  448. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/asset_centric_cdf/timeseries.yaml +0 -0
  449. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_instances/classic_windfarm.py +0 -0
  450. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/conceptual/broken_concepts.xlsx +0 -0
  451. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/conceptual/info-arch-car-rules.xlsx +0 -0
  452. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/conceptual/info_with_cdm_ref.xlsx +0 -0
  453. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/conceptual/information-unknown-value-type.xlsx +0 -0
  454. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/conceptual/only_concepts.xlsx +0 -0
  455. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/conversion/single_concept.conceptual.yaml +0 -0
  456. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/conversion/single_concept.physical.yaml +0 -0
  457. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/cognite_core_v1.zip +0 -0
  458. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/TemperatureController.zip +0 -0
  459. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/BaseConsumer.json +0 -0
  460. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/BasePlant.json +0 -0
  461. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/BaseReceiver.json +0 -0
  462. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/CityPlant.json +0 -0
  463. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/CoalPlant.json +0 -0
  464. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/DeliverySubStation.json +0 -0
  465. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/DomesticConsumer.json +0 -0
  466. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/FarmConsumer.json +0 -0
  467. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/Floor.json +0 -0
  468. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/GasPlant.json +0 -0
  469. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/GeneratorSubStation.json +0 -0
  470. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/HydroPlant.json +0 -0
  471. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/IndustrialConsumer.json +0 -0
  472. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/IndustrialPlant.json +0 -0
  473. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/NuclearPlant.json +0 -0
  474. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/PowerLine.json +0 -0
  475. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/Room.json +0 -0
  476. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/SolarPlant.json +0 -0
  477. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/Transformer.json +0 -0
  478. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/dtdl/energy-grid/WindPlant.json +0 -0
  479. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/referencing_core/MyDescribable.container.yaml +0 -0
  480. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/referencing_core/MyDescribable.view.yaml +0 -0
  481. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/referencing_core/enterprise.datamodel.yaml +0 -0
  482. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/non_neat/windturbine.py +0 -0
  483. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/partial-model/complete.xlsx +0 -0
  484. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/partial-model/part1.xlsx +0 -0
  485. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/partial-model/part2.ttl +0 -0
  486. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/partial-model/part3.yaml +0 -0
  487. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/car_dms_rules.xlsx +0 -0
  488. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/car_dms_rules_deprecated.xlsx +0 -0
  489. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/dm_raw_filter.xlsx +0 -0
  490. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/dm_view_space_different.xlsx +0 -0
  491. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/dms-unknown-value-type.xlsx +0 -0
  492. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/isa_plus_cdm.xlsx +0 -0
  493. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/missing-in-model-value.xlsx +0 -0
  494. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/mixed-up-version.xlsx +0 -0
  495. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/pump_example_duplicated_resources.xlsx +0 -0
  496. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/pump_example_with_missing_cells.xlsx +0 -0
  497. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical/pump_example_with_missing_cells_raise_issues.xlsx +0 -0
  498. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_invalid/inconsistent_container_dms_rules.xlsx +0 -0
  499. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_invalid/invalid_metadata.xlsx +0 -0
  500. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_invalid/invalid_property_dms_rules.xlsx +0 -0
  501. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_invalid/missing_view_container_dms_rules.xlsx +0 -0
  502. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_invalid/too_many_containers_per_view.xlsx +0 -0
  503. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_yamls/invalid_yaml.expected_issues.yaml +0 -0
  504. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_yamls/invalid_yaml.yaml +0 -0
  505. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_yamls/reverse_direct_relation_missing_target.expected_issues.yaml +0 -0
  506. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/data/_schema/physical_yamls/reverse_direct_relation_missing_target.yaml +0 -0
  507. {cognite_neat-0.123.0/tests/tests_integration → cognite_neat-0.123.1/tests/tests_end_to_end}/__init__.py +0 -0
  508. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_end_to_end/test_rules_flow/test_cdm_extension_verification.yaml +0 -0
  509. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_end_to_end/test_rules_flow/test_excel_importer_to_yaml.yml +0 -0
  510. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_end_to_end/test_rules_flow/test_ontology_importer_to_yaml.yml +0 -0
  511. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_end_to_end/test_rules_flow/test_to_extension_transformer.yml +0 -0
  512. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_end_to_end/test_rules_flow.py +0 -0
  513. {cognite_neat-0.123.0/tests/tests_integration/test_api → cognite_neat-0.123.1/tests/tests_integration}/__init__.py +0 -0
  514. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/conftest.py +0 -0
  515. {cognite_neat-0.123.0/tests/tests_integration/test_graph → cognite_neat-0.123.1/tests/tests_integration/test_api}/__init__.py +0 -0
  516. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_api/test_conversion.py +0 -0
  517. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_api/test_validate_rules.py +0 -0
  518. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_client_available.py +0 -0
  519. {cognite_neat-0.123.0/tests/tests_integration/test_graph/test_loaders → cognite_neat-0.123.1/tests/tests_integration/test_graph}/__init__.py +0 -0
  520. {cognite_neat-0.123.0/tests/tests_integration/test_neat_client → cognite_neat-0.123.1/tests/tests_integration/test_graph/test_loaders}/__init__.py +0 -0
  521. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_graph/test_loaders/test_dms_loader.py +0 -0
  522. {cognite_neat-0.123.0/tests/tests_integration/test_rules → cognite_neat-0.123.1/tests/tests_integration/test_neat_client}/__init__.py +0 -0
  523. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_neat_client/test_cdf_loaders.py +0 -0
  524. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_neat_client/test_statistics.py +0 -0
  525. {cognite_neat-0.123.0/tests/tests_integration/test_rules/test_exporters → cognite_neat-0.123.1/tests/tests_integration/test_rules}/__init__.py +0 -0
  526. {cognite_neat-0.123.0/tests/tests_integration/test_rules/test_importers → cognite_neat-0.123.1/tests/tests_integration/test_rules/test_exporters}/__init__.py +0 -0
  527. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_rules/test_exporters/test_dms_exporters.py +0 -0
  528. {cognite_neat-0.123.0/tests/tests_integration/test_session → cognite_neat-0.123.1/tests/tests_integration/test_rules/test_importers}/__init__.py +0 -0
  529. {cognite_neat-0.123.0/tests/tests_integration/test_utils → cognite_neat-0.123.1/tests/tests_integration/test_session}/__init__.py +0 -0
  530. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_create_enterprise.py +0 -0
  531. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_data_model_prepare_fix/test_prefix_dms_rules_entities.yml +0 -0
  532. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_data_model_prepare_fix/test_prefix_info_rules_entities.yml +0 -0
  533. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_data_model_prepare_fix/test_standardize_space_and_version.yml +0 -0
  534. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_data_model_prepare_fix.py +0 -0
  535. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_data_model_to/test_raw_filter.yml +0 -0
  536. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_data_model_to.py +0 -0
  537. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_graph_flow/test_aml_to_dms.yml +0 -0
  538. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_graph_flow/test_create_extension_template.yml +0 -0
  539. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_graph_flow/test_dexpi_to_dms.yml +0 -0
  540. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_graph_flow/test_snapshot_workflow_ids_to_python.yml +0 -0
  541. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_graph_flow/test_snapshot_workflow_to_python.yml +0 -0
  542. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_graph_flow/test_uplift_workflow_to_python.yml +0 -0
  543. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_graph_flow.py +0 -0
  544. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_read/test_read_model_referencing_core.yml +0 -0
  545. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_session/test_read.py +0 -0
  546. {cognite_neat-0.123.0/tests/tests_unit → cognite_neat-0.123.1/tests/tests_integration/test_utils}/__init__.py +0 -0
  547. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_integration/test_utils/test_reader.py +0 -0
  548. {cognite_neat-0.123.0/tests/tests_unit/test_graph → cognite_neat-0.123.1/tests/tests_unit}/__init__.py +0 -0
  549. {cognite_neat-0.123.0/tests/tests_unit/test_graph/test_extractors → cognite_neat-0.123.1/tests/tests_unit/test_graph}/__init__.py +0 -0
  550. {cognite_neat-0.123.0/tests/tests_unit/test_graph/test_loaders → cognite_neat-0.123.1/tests/tests_unit/test_graph/test_extractors}/__init__.py +0 -0
  551. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_asset_extractor.py +0 -0
  552. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_dms_extractor.py +0 -0
  553. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_dms_graph_extractor.py +0 -0
  554. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_events_extractor.py +0 -0
  555. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_files_extractor.py +0 -0
  556. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_labels_extractor.py +0 -0
  557. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_raw_extractor.py +0 -0
  558. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_relationship_extractor.py +0 -0
  559. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_sequences_extractor.py +0 -0
  560. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_extractors/test_timeseries_extractor.py +0 -0
  561. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_graph_read.py +0 -0
  562. {cognite_neat-0.123.0/tests/tests_unit/test_graph/test_transformers → cognite_neat-0.123.1/tests/tests_unit/test_graph/test_loaders}/__init__.py +0 -0
  563. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_loaders/test_dms_loader.py +0 -0
  564. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_loaders/test_rdf_to_instance_space.py +0 -0
  565. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_provenance.py +0 -0
  566. {cognite_neat-0.123.0/tests/tests_unit/test_issues → cognite_neat-0.123.1/tests/tests_unit/test_graph/test_transformers}/__init__.py +0 -0
  567. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_asset_depth_transformer.py +0 -0
  568. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_asset_event_connector_transformer.py +0 -0
  569. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_asset_file_connector_transformer.py +0 -0
  570. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_asset_relationship_connector_transformer.py +0 -0
  571. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_asset_sequence_connector_transformer.py +0 -0
  572. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_asset_ts_connector_transformer.py +0 -0
  573. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_attach_property_from_target2source.py +0 -0
  574. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_connection_to_literal.py +0 -0
  575. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_make_connection_on_exact_match.py +0 -0
  576. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_prune_graph.py +0 -0
  577. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_graph/test_transformers/test_split_multi_value_property_transformer.py +0 -0
  578. {cognite_neat-0.123.0/tests/tests_unit/test_neat_client → cognite_neat-0.123.1/tests/tests_unit/test_issues}/__init__.py +0 -0
  579. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_issues/test_formatters.py +0 -0
  580. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_issues/test_issue_behavior.py +0 -0
  581. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_issues/test_issues_metatests.py +0 -0
  582. {cognite_neat-0.123.0/tests/tests_unit/test_rules → cognite_neat-0.123.1/tests/tests_unit/test_neat_client}/__init__.py +0 -0
  583. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_neat_client/test_instances.py +0 -0
  584. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_neat_client/test_loaders.py +0 -0
  585. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_neat_client/test_schema.py +0 -0
  586. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_neat_package_metadata.py +0 -0
  587. {cognite_neat-0.123.0/tests/tests_unit/test_rules/test_exporters → cognite_neat-0.123.1/tests/tests_unit/test_rules}/__init__.py +0 -0
  588. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_analysis.py +0 -0
  589. {cognite_neat-0.123.0/tests/tests_unit/test_rules/test_importers → cognite_neat-0.123.1/tests/tests_unit/test_rules/test_exporters}/__init__.py +0 -0
  590. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_exporters/test_exporters_meta.py +0 -0
  591. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_exporters/test_rules2dms.py +0 -0
  592. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_exporters/test_rules2excel.py +0 -0
  593. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_exporters/test_rules2ontology.py +0 -0
  594. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_exporters/test_rules2yaml.py +0 -0
  595. {cognite_neat-0.123.0/tests/tests_unit/test_rules/test_models → cognite_neat-0.123.1/tests/tests_unit/test_rules/test_importers}/__init__.py +0 -0
  596. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_importers/constants.py +0 -0
  597. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_importers/test_dms_importer.py +0 -0
  598. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_importers/test_dtdl_importer.py +0 -0
  599. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_importers/test_excel_importer.py +0 -0
  600. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_importers/test_imf_importer.py +0 -0
  601. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_importers/test_inference_importer.py +0 -0
  602. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_importers/test_owl_importer.py +0 -0
  603. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_importers/test_subinference_importer.py +0 -0
  604. {cognite_neat-0.123.0/tests/tests_unit/test_rules/test_transformers → cognite_neat-0.123.1/tests/tests_unit/test_rules/test_models}/__init__.py +0 -0
  605. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_asset_rules.py +0 -0
  606. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_base_rules.py +0 -0
  607. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_conceptual_model.py +0 -0
  608. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_data_types.py +0 -0
  609. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_dms_schema.py +0 -0
  610. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_entities.py +0 -0
  611. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_input_rules.py +0 -0
  612. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_physical_data_model.py +0 -0
  613. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/test_wrapped_entities.py +0 -0
  614. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_models/utils.py +0 -0
  615. {cognite_neat-0.123.0/tests/tests_unit/test_session → cognite_neat-0.123.1/tests/tests_unit/test_rules/test_transformers}/__init__.py +0 -0
  616. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_transformers/test_converters.py +0 -0
  617. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_transformers/test_mapping.py +0 -0
  618. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_rules/test_transformers/test_transformer_meta.py +0 -0
  619. {cognite_neat-0.123.0/tests/tests_unit/test_store → cognite_neat-0.123.1/tests/tests_unit/test_session}/__init__.py +0 -0
  620. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_session/test_flows.py +0 -0
  621. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_session/test_meta.py +0 -0
  622. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_session/test_read.py +0 -0
  623. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_session/test_to_yaml.py +0 -0
  624. {cognite_neat-0.123.0/tests/tests_unit/test_utils → cognite_neat-0.123.1/tests/tests_unit/test_store}/__init__.py +0 -0
  625. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_store/test_select_queries.py +0 -0
  626. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_store/tests_rules_store/test_import_export.yml +0 -0
  627. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_store/tests_rules_store.py +0 -0
  628. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_utils/test_auxiliary.py +0 -0
  629. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_utils/test_cdf_classes.py +0 -0
  630. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_utils/test_rdf.py +0 -0
  631. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_utils/test_reader.py +0 -0
  632. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_utils/test_text.py +0 -0
  633. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/tests_unit/test_utils/test_utils.py +0 -0
  634. {cognite_neat-0.123.0 → cognite_neat-0.123.1}/tests/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cognite-neat
3
- Version: 0.123.0
3
+ Version: 0.123.1
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.123.1"
2
+ __engine__ = "^2.0.4"
@@ -7,6 +7,11 @@ from cognite.client.data_classes.filters import Filter
7
7
  from cognite.client.exceptions import CogniteAPIError
8
8
  from cognite.client.utils.useful_types import SequenceNotStr
9
9
 
10
+ from cognite.neat.core._constants import DMS_INSTANCE_LIMIT_MARGIN
11
+ from cognite.neat.core._issues import NeatIssue
12
+ from cognite.neat.core._issues.errors import WillExceedLimitError
13
+ from cognite.neat.core._issues.warnings import NeatValueWarning
14
+
10
15
  if TYPE_CHECKING:
11
16
  from cognite.neat.core._client._api_client import NeatClient
12
17
 
@@ -69,3 +74,28 @@ class NeatInstancesAPI:
69
74
  if (time.perf_counter() - last_limit_change) > 30.0 and body["limit"] < 1_000:
70
75
  body["limit"] = min(int(body["limit"] * 1.5), 1_000)
71
76
  last_limit_change = time.perf_counter()
77
+
78
+ def validate_cdf_project_capacity(self, total_instances: int) -> NeatIssue | None:
79
+ """Validates if the current project instance capacity can accommodate the given number of instances.
80
+
81
+ Args:
82
+ total_instances (int): The total number of instances to check against the project's capacity.
83
+
84
+ Returns:
85
+ NeatIssue | None: Returns a warning if the capacity is exceeded, otherwise None.
86
+
87
+ Raises:
88
+ WillExceedLimitError: If the total instances exceed the project's instance capacity.
89
+
90
+ """
91
+ try:
92
+ stats = self._client.instance_statistics.project()
93
+ except CogniteAPIError as e:
94
+ # This endpoint is not yet in alpha, it may change or not be available.
95
+ return NeatValueWarning(f"Cannot check project instance capacity. Endpoint not available: {e}")
96
+ instance_capacity = stats.instances.instances_limit - stats.instances.instances
97
+ if total_instances + DMS_INSTANCE_LIMIT_MARGIN > instance_capacity:
98
+ raise WillExceedLimitError(
99
+ "instances", total_instances, stats.project, instance_capacity, DMS_INSTANCE_LIMIT_MARGIN
100
+ )
101
+ return None
@@ -9,7 +9,6 @@ from rdflib import DC, DCTERMS, FOAF, OWL, RDF, RDFS, SH, SKOS, XSD, Namespace,
9
9
  from rdflib.namespace import DefinedNamespace
10
10
 
11
11
  from cognite import neat
12
- from cognite.neat.core._issues.errors._general import NeatValueError
13
12
 
14
13
  if TYPE_CHECKING:
15
14
  from cognite.neat.core._data_model.models.physical import PhysicalProperty
@@ -161,6 +160,14 @@ DMS_DIRECT_RELATION_LIST_DEFAULT_LIMIT = 100
161
160
  DMS_PRIMITIVE_LIST_DEFAULT_LIMIT = 1000
162
161
  DMS_CONTAINER_LIST_MAX_LIMIT = 2000
163
162
 
163
+ # The number of instances that should be left as a margin when Neat writes to CDF through the DMS API.
164
+ # This is currently set conservatively to 1 million. The reasoning for this is that there are CDF
165
+ # applications such as Infield and Industrial Canvas that can write to the DMS API, as well as likely third-party
166
+ # applications that can write to the DMS API. If Neat fills up the entire capacity, these type of data gathering
167
+ # applications will experience data loss. The limit of 1 million is chosen such that it will trigger alarms in the
168
+ # CDF projects, such that admins can take action to increase or clean up the capacity before it is too late.
169
+ DMS_INSTANCE_LIMIT_MARGIN = 1_000_000
170
+
164
171
  _ASSET_ROOT_PROPERTY = {
165
172
  "connection": "direct",
166
173
  "container": "cdf_cdm:CogniteAsset",
@@ -211,6 +218,8 @@ def get_base_concepts(
211
218
  base_model: The base model to get the concepts for.
212
219
  total_concepts: The number of concepts to get. If None, all concepts are returned.
213
220
  """
221
+ # Local import to avoid circular dependency issues
222
+ from cognite.neat.core._issues.errors._general import NeatValueError
214
223
 
215
224
  if base_model == "CogniteCore":
216
225
  return [f"cdf_cdm:{concept}(version=v1)" for concept in COGNITE_CONCEPTS][:total_concepts]
@@ -159,6 +159,14 @@ class DMSLoader(CDFLoader[dm.InstanceApply]):
159
159
  if self.neat_prefix_by_type_uri:
160
160
  self._lookup_identifier_by_uri()
161
161
 
162
+ if self._client:
163
+ validate_issue = self._client.instances.validate_cdf_project_capacity(
164
+ sum(it.instance_count for it in view_iterations)
165
+ )
166
+ if validate_issue:
167
+ yield validate_issue
168
+ return
169
+
162
170
  for it in view_iterations:
163
171
  view = it.view
164
172
  if view is None:
@@ -12,7 +12,7 @@ from ._external import (
12
12
  NeatYamlError,
13
13
  OxigraphStorageLockedError,
14
14
  )
15
- from ._general import NeatImportError, NeatTypeError, NeatValueError, RegexViolationError
15
+ from ._general import NeatImportError, NeatTypeError, NeatValueError, RegexViolationError, WillExceedLimitError
16
16
  from ._properties import (
17
17
  PropertyDefinitionDuplicatedError,
18
18
  PropertyDefinitionError,
@@ -82,6 +82,7 @@ __all__ = [
82
82
  "ReversedConnectionNotFeasibleError",
83
83
  "SpreadsheetError",
84
84
  "ViewValueError",
85
+ "WillExceedLimitError",
85
86
  ]
86
87
 
87
88
  _NEAT_ERRORS_BY_NAME = {error.__name__: error for error in _get_subclasses(NeatError, include_base=True)}
@@ -1,4 +1,5 @@
1
1
  from dataclasses import dataclass
2
+ from typing import Literal
2
3
 
3
4
  from cognite.neat.core._issues import NeatError
4
5
 
@@ -35,3 +36,16 @@ class NeatImportError(NeatError, ImportError):
35
36
 
36
37
  module: str
37
38
  neat_extra: str
39
+
40
+
41
+ @dataclass(unsafe_hash=True)
42
+ class WillExceedLimitError(NeatError, RuntimeError):
43
+ """Cannot write {resource_count} {resource_type} to project {project} as the current available capacity
44
+ is {available_capacity} {resource_type}. Neat requires a capacity of at least {margin} {resource_type} are
45
+ left for future writes, {available_capacity}-{resource_count} < {margin}."""
46
+
47
+ resource_type: Literal["instances"]
48
+ resource_count: int
49
+ project: str
50
+ available_capacity: int
51
+ margin: int
@@ -0,0 +1,3 @@
1
+ from ._manager import get_plugin_manager
2
+
3
+ __all__ = ["get_plugin_manager"]
@@ -0,0 +1,25 @@
1
+ from dataclasses import dataclass
2
+
3
+ from cognite.neat.core._issues._base import NeatError
4
+
5
+
6
+ @dataclass(unsafe_hash=True)
7
+ class PluginError(NeatError, ImportError):
8
+ """No plugin of type '{plugin_type}' registered under name '{plugin_name}'"""
9
+
10
+ plugin_name: str
11
+ plugin_type: str
12
+
13
+
14
+ @dataclass(unsafe_hash=True)
15
+ class PluginLoadingError(PluginError):
16
+ """Unable to load plugin of type '{plugin_type}' registered under name '{plugin_name}' due to: {exception}"""
17
+
18
+ exception: str
19
+
20
+
21
+ @dataclass(unsafe_hash=True)
22
+ class PluginDuplicateError(PluginError):
23
+ """Plugin of type '{plugin_type}' registered for under name '{plugin_name}' already exists"""
24
+
25
+ ...
@@ -0,0 +1,99 @@
1
+ """Plugin manager for external plugins."""
2
+
3
+ from importlib import metadata
4
+ from typing import Any, ClassVar, TypeAlias
5
+
6
+ from ._issues import PluginDuplicateError, PluginError, PluginLoadingError
7
+ from .data_model.importers import DataModelImporterPlugin
8
+
9
+ # Here we configure entry points where external plugins are going to be registered.
10
+ plugins_entry_points = {
11
+ "cognite.neat.plugins.data_model.importers": DataModelImporterPlugin,
12
+ }
13
+
14
+ #: Type alias for all supported plugin types
15
+ NeatPlugin: TypeAlias = DataModelImporterPlugin
16
+
17
+
18
+ class Plugin:
19
+ """Plugin class for registering plugins registered via entry points (i.e. external plugins).
20
+
21
+ Args:
22
+ name (str): The name of format (e.g. Excel) or action (e.g. merge) plugin is handling.
23
+ type_ (type): The type of the plugin.
24
+ entry_point (EntryPoint): The entry point for the plugin.
25
+
26
+ !!! note "name uniqueness"
27
+ The name of the plugin must be lower case and unique across all plugins of the same kind.
28
+ If two plugins have the same name, the exception will be raised.
29
+ """
30
+
31
+ def __init__(self, name: str, type_: type[NeatPlugin], entry_point: metadata.EntryPoint):
32
+ self.name = name
33
+ self.type_ = type_
34
+ self.entry_point = entry_point
35
+
36
+ def load(self) -> Any:
37
+ try:
38
+ return self.entry_point.load()
39
+ except Exception as e:
40
+ raise PluginLoadingError(self.name, self.type_.__name__, str(e)) from e
41
+
42
+
43
+ class PluginManager:
44
+ """Plugin manager for external plugins."""
45
+
46
+ _plugins_entry_points: ClassVar[dict[str, type[NeatPlugin]]] = {
47
+ "cognite.neat.plugins.data_model.importers": DataModelImporterPlugin,
48
+ }
49
+
50
+ def __init__(self, plugins: dict[tuple[str, type[NeatPlugin]], Any]) -> None:
51
+ self._plugins = plugins
52
+
53
+ def get(self, name: str, type_: type[NeatPlugin]) -> Any:
54
+ """
55
+ Returns desired plugin
56
+
57
+ Args:
58
+ name (str): The name of format (e.g. Excel) or action (e.g. merge) plugin is handling.
59
+ type_ (type): The type of the plugin.
60
+ """
61
+ try:
62
+ return self._plugins[(name, type_)]
63
+ except KeyError:
64
+ raise PluginError(plugin_name=name, plugin_type=type_.__name__) from None
65
+
66
+ @classmethod
67
+ def load_plugins(cls, entry_points: metadata.EntryPoints | None = None) -> "PluginManager":
68
+ """Load plugins from entry points and register them to the manager.
69
+ This method scans the provided entry points for plugins defined in the
70
+ `_plugins_entry_points` dictionary and registers them.
71
+
72
+ Args:
73
+ entry_points: Entry points to load plugins from. If None, uses the default entry points.
74
+ """
75
+ _plugins: dict[tuple[str, type[NeatPlugin]], Any] = {}
76
+
77
+ entry_points = entry_points or metadata.entry_points()
78
+ if hasattr(entry_points, "select"):
79
+ for group, type_ in cls._plugins_entry_points.items():
80
+ for entry_point in entry_points.select(group=group):
81
+ # Check for duplicate plugins
82
+ if (entry_point.name, type_) in _plugins:
83
+ raise PluginDuplicateError(plugin_name=entry_point.name, plugin_type=type_.__name__)
84
+
85
+ # Register the plugin
86
+ _plugins[(entry_point.name, type_)] = Plugin(entry_point.name, type_, entry_point).load()
87
+
88
+ return cls(_plugins)
89
+
90
+
91
+ _manager_instance: PluginManager | None = None
92
+
93
+
94
+ def get_plugin_manager(force_reload: bool = False) -> PluginManager:
95
+ """Get or create a singleton PluginManager instance."""
96
+ global _manager_instance
97
+ if force_reload or _manager_instance is None:
98
+ _manager_instance = PluginManager.load_plugins()
99
+ return _manager_instance
@@ -0,0 +1,5 @@
1
+ from ._base import DataModelImporterPlugin
2
+
3
+ __all__ = [
4
+ "DataModelImporterPlugin",
5
+ ]
@@ -0,0 +1,27 @@
1
+ from typing import Any
2
+
3
+ from cognite.neat.core._data_model.importers._base import BaseImporter
4
+
5
+
6
+ class DataModelImporterPlugin:
7
+ """This class is used an interface for data model import plugins.
8
+ Any plugin that is used for importing data models should inherit from this class.
9
+ It is expected to implement the `configure` method which returns a configured importer.
10
+ """
11
+
12
+ def configure(self, io: Any, **kwargs: Any) -> BaseImporter:
13
+ """Return a configure plugin for data model import.
14
+
15
+ Args:
16
+ io (Any): The input/output interface for the plugin.
17
+ **kwargs (Any): Additional keyword arguments for configuration.
18
+
19
+ Returns:
20
+ BaseImporter: A configured instance of the BaseImporter.
21
+
22
+ !!! note "Returns"
23
+ The method must return an instance of `BaseImporter` or its subclasses
24
+ meaning it must implement the `BaseImporter` interface.
25
+ """
26
+
27
+ raise NotImplementedError()
@@ -5,7 +5,7 @@ from typing import Any, TypeVar
5
5
 
6
6
  from cognite.neat.core._issues.errors import CDFMissingClientError, NeatImportError
7
7
  from cognite.neat.core._issues.errors._external import OxigraphStorageLockedError
8
- from cognite.neat.core._issues.errors._general import NeatValueError
8
+ from cognite.neat.core._issues.errors._general import NeatValueError, WillExceedLimitError
9
9
  from cognite.neat.session._experimental import ExperimentalFeatureWarning
10
10
 
11
11
  from ._collector import _COLLECTOR
@@ -50,6 +50,7 @@ def _session_method_wrapper(func: Callable, cls_name: str) -> Any:
50
50
  NeatImportError,
51
51
  NeatValueError,
52
52
  OxigraphStorageLockedError,
53
+ WillExceedLimitError,
53
54
  ) as e:
54
55
  print(f"{_ERROR_PREFIX} {escape(e.as_message())}")
55
56
  except ModuleNotFoundError as e:
@@ -0,0 +1,6 @@
1
+
2
+ ### Fixed
3
+
4
+ - When writing instances (nodes and edges) to CDF using the
5
+ `neat.to.cdf.instance()` method, Neat now checks that CDF will have at
6
+ least free space for 500 000 instances after the writing is done.
@@ -0,0 +1,23 @@
1
+ [NEAT-958, NEAT-811] Check instance limit (#1222)
2
+
3
+ # Description
4
+
5
+ **Context**: We had incidents were neat has caused other applications to
6
+ fail. This happen as the result of the user creating large amounts of
7
+ instances in CDF using neat and filling up the instance capacity of the
8
+ CDF project. This adds a fail-safe that stops the user from using neat
9
+ to fill up to the instance limit in a CDF project and leave a margin
10
+ such that other applications can continue to add new instances.
11
+
12
+ ## Bump
13
+
14
+ - [x] Patch
15
+ - [ ] Minor
16
+ - [ ] Skip
17
+
18
+ ## Changelog
19
+ ### Fixed
20
+
21
+ - When writing instances (nodes and edges) to CDF using the
22
+ `neat.to.cdf.instance()` method, Neat now checks that CDF will have at
23
+ least free space for 500 000 instances after the writing is done.
@@ -0,0 +1 @@
1
+ 0.123.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "cognite-neat"
3
- version = "0.123.0"
3
+ version = "0.123.1"
4
4
  readme = "README.md"
5
5
  description = "Knowledge graph transformation"
6
6
  authors = [
@@ -0,0 +1,107 @@
1
+ import pytest
2
+ from cognite.client.data_classes.data_modeling import ViewList
3
+
4
+ from cognite.neat.core._client.data_classes.statistics import (
5
+ CountLimitPair,
6
+ InstanceCountsLimits,
7
+ ProjectStatsAndLimits,
8
+ )
9
+ from cognite.neat.core._client.testing import monkeypatch_neat_client
10
+ from cognite.neat.core._constants import DMS_INSTANCE_LIMIT_MARGIN
11
+ from cognite.neat.core._data_model.importers import SubclassInferenceImporter
12
+ from cognite.neat.core._data_model.models import PhysicalDataModel
13
+ from cognite.neat.core._data_model.models.conceptual._verified import (
14
+ ConceptualDataModel,
15
+ )
16
+ from cognite.neat.core._data_model.transformers._converters import (
17
+ ToCompliantEntities,
18
+ )
19
+ from cognite.neat.core._instances.loaders import DMSLoader, InstanceSpaceLoader
20
+ from cognite.neat.core._issues import IssueList
21
+ from cognite.neat.core._issues.errors import WillExceedLimitError
22
+ from cognite.neat.core._store import NeatInstanceStore
23
+ from tests.data import GraphData
24
+
25
+
26
+ @pytest.fixture()
27
+ def car_case() -> tuple[PhysicalDataModel, ConceptualDataModel, NeatInstanceStore]:
28
+ store = NeatInstanceStore.from_oxi_local_store()
29
+
30
+ for triple in GraphData.car.TRIPLES:
31
+ store.dataset.add(triple)
32
+ info_rules = (
33
+ SubclassInferenceImporter(
34
+ IssueList(),
35
+ store.dataset,
36
+ data_model_id=("sp_example_car", "CarModel", "1"),
37
+ )
38
+ .to_data_model()
39
+ .unverified_data_model
40
+ )
41
+
42
+ info_rules = ToCompliantEntities().transform(info_rules.as_verified_data_model())
43
+
44
+ dms_rules = GraphData.car.get_car_dms_rules()
45
+
46
+ # needs conversion to DMS rules as well
47
+ return dms_rules, info_rules, store
48
+
49
+
50
+ class TestDMSLoader:
51
+ def test_load_car_example(self, car_case: tuple[PhysicalDataModel, ConceptualDataModel, NeatInstanceStore]) -> None:
52
+ dms_rules, info_rules, store = car_case
53
+
54
+ loader = DMSLoader(
55
+ dms_rules,
56
+ info_rules,
57
+ store,
58
+ InstanceSpaceLoader(instance_space=GraphData.car.INSTANCE_SPACE).space_by_instance_uri,
59
+ )
60
+
61
+ loaded = loader.load(stop_on_exception=True)
62
+
63
+ instances_expected = {inst.external_id: inst.dump() for inst in GraphData.car.INSTANCES}
64
+ instances_actual = {inst.external_id: inst.dump() for inst in loaded}
65
+
66
+ assert dict(sorted(instances_expected.items())) == dict(sorted(instances_actual.items()))
67
+
68
+ def test_load_car_example_instance_limit_reached(
69
+ self, car_case: tuple[PhysicalDataModel, ConceptualDataModel, NeatInstanceStore]
70
+ ) -> None:
71
+ dms_rules, info_rules, store = car_case
72
+
73
+ with monkeypatch_neat_client() as client:
74
+ client.iam.verify_capabilities.return_value = []
75
+ client.data_modeling.views.retrieve.return_value = ViewList(GraphData.car.CAR_MODEL.views)
76
+ client.instance_statistics.project.return_value = ProjectStatsAndLimits(
77
+ project="neat-project",
78
+ spaces=CountLimitPair(40, 100),
79
+ containers=CountLimitPair(100, 1000),
80
+ views=CountLimitPair(1000, 10_000),
81
+ data_models=CountLimitPair(10, 100),
82
+ instances=InstanceCountsLimits(
83
+ nodes=4_000_000,
84
+ edges=750_000,
85
+ soft_deleted_nodes=0,
86
+ soft_deleted_edges=0,
87
+ soft_deleted_instances_limit=10_000_000,
88
+ instances_limit=5_000_000,
89
+ ),
90
+ container_properties=CountLimitPair(5_000, 25_000),
91
+ concurrent_read_limit=8,
92
+ concurrent_write_limit=4,
93
+ concurrent_delete_limit=2,
94
+ )
95
+
96
+ loader = DMSLoader(
97
+ dms_rules,
98
+ info_rules,
99
+ store,
100
+ InstanceSpaceLoader(instance_space=GraphData.car.INSTANCE_SPACE).space_by_instance_uri,
101
+ client,
102
+ )
103
+
104
+ with pytest.raises(WillExceedLimitError) as excinfo:
105
+ _ = loader.load_into_cdf(client)
106
+
107
+ assert excinfo.value == WillExceedLimitError("instances", 6, "neat-project", 250_000, DMS_INSTANCE_LIMIT_MARGIN)
@@ -0,0 +1,110 @@
1
+ from importlib.metadata import EntryPoint, EntryPoints
2
+ from pathlib import Path
3
+ from typing import Any
4
+
5
+ import pytest
6
+
7
+ from cognite.neat.core._data_model.importers._spreadsheet2data_model import ExcelImporter
8
+ from cognite.neat.plugins._issues import (
9
+ PluginDuplicateError,
10
+ PluginLoadingError,
11
+ )
12
+ from cognite.neat.plugins._manager import PluginManager
13
+ from cognite.neat.plugins.data_model.importers import DataModelImporterPlugin
14
+
15
+
16
+ class ExcelDataModelImporterPlugin(DataModelImporterPlugin):
17
+ """Real ExcelDataModelImporter implementation for testing."""
18
+
19
+ def configure(self, io: Path, **kwargs: Any) -> ExcelImporter:
20
+ """
21
+ Configures Excel importer.
22
+
23
+ Args:
24
+ source (str): Path to the Excel file.
25
+ """
26
+
27
+ return ExcelImporter(filepath=io)
28
+
29
+
30
+ @pytest.fixture
31
+ def neat_plugin_entry_points():
32
+ """Create a mock entry point for testing."""
33
+
34
+ return EntryPoints(
35
+ [
36
+ EntryPoint(
37
+ name="excel",
38
+ group="cognite.neat.plugins.data_model.importers",
39
+ value="tests.tests_unit.test_plugins:ExcelDataModelImporterPlugin",
40
+ )
41
+ ]
42
+ )
43
+
44
+
45
+ @pytest.fixture
46
+ def none_neat_plugin_entry_points():
47
+ """Create a mock entry point for testing."""
48
+
49
+ return EntryPoints(
50
+ [EntryPoint(name="ox-turtle", group="rdf.plugins.parser", value="oxrdflib.parser:OxigraphTurtleParser")]
51
+ )
52
+
53
+
54
+ @pytest.fixture
55
+ def duplicated_neat_plugin():
56
+ """Create a mock entry point for testing."""
57
+
58
+ return EntryPoints(
59
+ [
60
+ EntryPoint(
61
+ name="excel",
62
+ group="cognite.neat.plugins.data_model.importers",
63
+ value="tests.tests_unit.test_plugins:ExcelDataModelImporterPlugin",
64
+ ),
65
+ EntryPoint(
66
+ name="excel",
67
+ group="cognite.neat.plugins.data_model.importers",
68
+ value="tests.test_plugins:ExcelDataModelImporterPlugin",
69
+ ),
70
+ ]
71
+ )
72
+
73
+
74
+ @pytest.fixture
75
+ def non_loadable_neat_plugin():
76
+ """Create a mock entry point for testing."""
77
+
78
+ return EntryPoints(
79
+ [
80
+ EntryPoint(
81
+ name="excel",
82
+ group="cognite.neat.plugins.data_model.importers",
83
+ value="tests.test_plugins:ExcelDataModelImporterPlugin",
84
+ )
85
+ ]
86
+ )
87
+
88
+
89
+ def test_load_neat_plugin(neat_plugin_entry_points):
90
+ """Test ExternalPlugin initialization."""
91
+ manager = PluginManager.load_plugins(neat_plugin_entry_points)
92
+ assert len(manager._plugins) == 1
93
+
94
+
95
+ def test_dont_load_none_neat_plugin(none_neat_plugin_entry_points):
96
+ """Test ExternalPlugin initialization."""
97
+ manager = PluginManager.load_plugins(none_neat_plugin_entry_points)
98
+ assert len(manager._plugins) == 0
99
+
100
+
101
+ def test_duplicated_plugin_error(duplicated_neat_plugin):
102
+ """Test that registering a plugin with the same name raises an error."""
103
+ with pytest.raises(PluginDuplicateError):
104
+ PluginManager.load_plugins(duplicated_neat_plugin)
105
+
106
+
107
+ def test_load_plugin_error(non_loadable_neat_plugin):
108
+ """Test that registering a plugin with the same name raises an error."""
109
+ with pytest.raises(PluginLoadingError):
110
+ PluginManager.load_plugins(non_loadable_neat_plugin)
@@ -346,7 +346,7 @@ wheels = [
346
346
 
347
347
  [[package]]
348
348
  name = "cognite-neat"
349
- version = "0.123.0"
349
+ version = "0.123.1"
350
350
  source = { editable = "." }
351
351
  dependencies = [
352
352
  { name = "backports-strenum", marker = "python_full_version < '3.11'" },
@@ -1,2 +0,0 @@
1
- __version__ = "0.123.0"
2
- __engine__ = "^2.0.4"
@@ -1,17 +0,0 @@
1
-
2
- ### Added
3
-
4
- - Support for setting `cursorable` when specifying an index on container
5
- properties.
6
-
7
- ### Fixed
8
-
9
- - Neat can now specify and maintains the order of multi-property order
10
- on indices. You do this with the syntax,
11
- `btree:multipPropertyIntdex(order=1)` in the Index column of the
12
- physical data model spreadsheet.
13
-
14
- ### Changed
15
-
16
- - When setting an index on a property(ies) with a listable container,
17
- Neat uses an `InvertedIndex` instead of a `BTreeIndex`.
@@ -1,42 +0,0 @@
1
- [NEAT-1004] 🧑‍🏫 Support index cursorable (#1218)
2
-
3
- # Description
4
-
5
- Validation for this new syntax is introduced in #1230
6
-
7
- **Context** The neat spreadsheet format is (with the exception of
8
- filters) a one-to-one with the DMS API for containers, views, and data
9
- models. We are currently missing setting `cursorable` on btree indexes.
10
- This PR introduces it.
11
-
12
- ![image](https://github.com/user-attachments/assets/befa96f1-ba04-4334-8640-7ab5104c2bd9)
13
-
14
-
15
- Adds support for setting index.
16
- * Introduce a `ContainerIndexEntity` to store the information. This is
17
- following the same pattern that we use for example Units.
18
- * Replace the `list[str]` with `list[ContainerIndexEntity]` for physical
19
- properties.
20
- ## Bump
21
-
22
- - [ ] Patch
23
- - [x] Minor
24
- - [ ] Skip
25
-
26
- ## Changelog
27
- ### Added
28
-
29
- - Support for setting `cursorable` when specifying an index on container
30
- properties.
31
-
32
- ### Fixed
33
-
34
- - Neat can now specify and maintains the order of multi-property order
35
- on indices. You do this with the syntax,
36
- `btree:multipPropertyIntdex(order=1)` in the Index column of the
37
- physical data model spreadsheet.
38
-
39
- ### Changed
40
-
41
- - When setting an index on a property(ies) with a listable container,
42
- Neat uses an `InvertedIndex` instead of a `BTreeIndex`.
@@ -1 +0,0 @@
1
- 0.122.3