cognite-neat 0.85.9__tar.gz → 0.85.11__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of cognite-neat might be problematic. Click here for more details.
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/PKG-INFO +1 -1
- cognite_neat-0.85.11/cognite/neat/_version.py +1 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/queries/_base.py +27 -2
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/stores/_base.py +12 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/transformers/_classic_cdf.py +56 -9
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/dms/_rules.py +70 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/dms/_rules_input.py +3 -1
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/entities.py +7 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/pyproject.toml +1 -1
- cognite_neat-0.85.9/cognite/neat/_version.py +0 -1
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/LICENSE +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/README.md +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/_shared.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/asgi/metrics.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/configuration.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/context_manager/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/context_manager/manager.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/data_classes/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/data_classes/rest.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/explorer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/routers/configuration.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/routers/core.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/routers/crud.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/routers/data_exploration.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/routers/metrics.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/routers/rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/routers/workflows.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/utils/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/utils/data_mapping.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/utils/logging.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/utils/query_templates.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/main.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/monitoring/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/monitoring/metrics.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/index.html +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/.gitignore +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/README.md +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/asset-manifest.json +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/favicon.ico +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/img/architect-icon.svg +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/img/developer-icon.svg +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/img/sme-icon.svg +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/index.html +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/logo192.png +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/manifest.json +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/robots.txt +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/static/css/main.38a62222.css +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/static/css/main.38a62222.css.map +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/static/js/main.ec7f72e2.js +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/static/js/main.ec7f72e2.js.LICENSE.txt +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/static/js/main.ec7f72e2.js.map +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/static/media/logo.8093b84df9ed36a174c629d6fe0b730d.svg +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/config.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/constants.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/exceptions.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/_shared.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/_tracking/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/_tracking/base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/_tracking/log.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/examples/Knowledge-Graph-Nordic44-dirty.xml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/examples/Knowledge-Graph-Nordic44.xml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/examples/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/examples/skos-capturing-sheet-wind-topics.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/exceptions.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_assets.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_events.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_files.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_labels.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_relationships.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_sequences.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_timeseries.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_dexpi.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_mock_graph_generator.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_rdf_file.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/issues/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/issues/loader.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/loaders/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/loaders/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/loaders/_rdf2asset.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/loaders/_rdf2dms.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/models.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/queries/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/queries/_construct.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/queries/_shared.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/stores/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/stores/_oxrdflib.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/stores/_provenance.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/transformers/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/transformers/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/issues.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/examples/Knowledge-Graph-Nordic44-dirty.xml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/examples/Knowledge-Graph-Nordic44.xml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/examples/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/examples/skos-capturing-sheet-wind-topics.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/exceptions.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/extractors/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/extractors/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/extractors/_dexpi.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/extractors/_graph_capturing_sheet.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/extractors/_mock_graph_generator.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/_asset_loader.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/_exceptions.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/core/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/core/labels.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/core/models.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/core/rdf_to_assets.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/core/rdf_to_relationships.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/rdf_to_dms.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/validator.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/models.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/stores/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/stores/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/stores/_graphdb_store.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/stores/_memory_store.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/stores/_oxigraph_store.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/stores/_oxrdflib.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/stores/_rdf_to_graph.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/transformations/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/transformations/entity_matcher.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/transformations/query_generator/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/transformations/query_generator/sparql.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/transformations/transformer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/analysis.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/Rules-Nordic44-to-graphql.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/Rules-Nordic44.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/power-grid-containers.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/power-grid-example.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/power-grid-model.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/rules-template.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/sheet2cdf-transformation-rules.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/skos-rules.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/source-to-solution-mapping-rules.xlsx +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/examples/wind-energy.owl +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exceptions.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_core/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_core/rules2labels.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_rules2dms.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_rules2excel.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_rules2graphql.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_rules2ontology.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_rules2pydantic_models.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_rules2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_rules2triples.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/exporters/_validation.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_dict2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_dms2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_graph2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_json2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_owl2rules/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_owl2rules/_owl2classes.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_owl2rules/_owl2metadata.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_owl2rules/_owl2properties.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_owl2rules/_owl2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_spreadsheet2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_xsd2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/importers/_yaml2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/models/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/models/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/models/raw_rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/models/rdfpath.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/models/rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/models/tables.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/rules/models/value_types.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Export_DMS/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Export_Rules_to_Ontology/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Extract_DEXPI_Graph_and_Export_Rules/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Extract_RDF_Graph_and_Generate_Assets/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Import_DMS/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Ontology_to_Data_Model/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Validate_Rules/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Validate_Solution_Model/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Visualize_Data_Model_Using_Mock_Graph/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/workflows/examples/Visualize_Semantic_Data_Model/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/py.typed +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/_shared.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/analysis/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/analysis/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/analysis/_information_rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/examples/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/examples/wind-energy.owl +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/exceptions.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/exporters/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/exporters/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/exporters/_rules2dms.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/exporters/_rules2excel.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/exporters/_rules2ontology.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/exporters/_rules2yaml.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/exporters/_validation.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_dms2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_dtdl2rules/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_dtdl2rules/_unit_lookup.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_dtdl2rules/dtdl_converter.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_dtdl2rules/dtdl_importer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_dtdl2rules/spec.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_inference2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_owl2rules/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_owl2rules/_owl2classes.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_owl2rules/_owl2metadata.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_owl2rules/_owl2properties.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_owl2rules/_owl2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_spreadsheet2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/importers/_yaml2rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/issues/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/issues/base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/issues/dms.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/issues/fileread.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/issues/formatters.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/issues/importing.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/issues/spreadsheet.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/issues/spreadsheet_file.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/_constants.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/_rdfpath.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/_types/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/_types/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/_types/_field.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/asset/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/asset/_converter.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/asset/_rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/asset/_rules_input.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/asset/_serializer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/asset/_validation.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/data_types.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/dms/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/dms/_converter.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/dms/_exporter.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/dms/_schema.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/dms/_serializer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/dms/_validation.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/domain.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/information/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/information/_converter.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/information/_rules.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/information/_rules_input.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/information/_serializer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/information/_validation.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/rules/models/wrapped_entities.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/auth.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/auxiliary.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/cdf.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/cdf_classes.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/cdf_loaders/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/cdf_loaders/_base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/cdf_loaders/_data_modeling.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/cdf_loaders/_ingestion.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/cdf_loaders/data_classes.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/exceptions.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/spreadsheet.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/text.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/upload.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/utils.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/utils/xml_.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/_exceptions.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/base.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/cdf_store.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Export_DMS/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Export_Rules_to_Ontology/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Extract_DEXPI_Graph_and_Export_Rules/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Extract_RDF_Graph_and_Generate_Assets/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Import_DMS/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Ontology_to_Data_Model/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Validate_Rules/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Validate_Solution_Model/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Visualize_Data_Model_Using_Mock_Graph/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/examples/Visualize_Semantic_Data_Model/workflow.yaml +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/manager.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/migration/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/migration/steps.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/migration/wf_manifests.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/model.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/data_contracts.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/current/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/current/graph_extractor.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/current/graph_loader.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/current/graph_store.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/current/rules_exporter.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/current/rules_importer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/current/rules_validator.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/io/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/io/io_steps.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/legacy/__init__.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/legacy/graph_contextualization.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/legacy/graph_extractor.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/legacy/graph_loader.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/legacy/graph_store.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/legacy/graph_transformer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/legacy/rules_exporter.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/lib/legacy/rules_importer.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps/step_model.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/steps_registry.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/tasks.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/triggers.py +0 -0
- {cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/workflows/utils.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.85.11"
|
|
@@ -2,6 +2,7 @@ import warnings
|
|
|
2
2
|
from typing import Literal, cast, overload
|
|
3
3
|
|
|
4
4
|
from rdflib import RDF, Graph, URIRef
|
|
5
|
+
from rdflib import Literal as RdfLiteral
|
|
5
6
|
from rdflib.query import ResultRow
|
|
6
7
|
|
|
7
8
|
from cognite.neat.rules.models.entities import ClassEntity
|
|
@@ -18,6 +19,24 @@ class Queries:
|
|
|
18
19
|
self.graph = graph
|
|
19
20
|
self.rules = rules
|
|
20
21
|
|
|
22
|
+
def summarize_instances(self) -> list[tuple]:
|
|
23
|
+
"""Summarize instances in the graph store by class and count"""
|
|
24
|
+
|
|
25
|
+
query_statement = """ SELECT ?class (COUNT(?instance) AS ?instanceCount)
|
|
26
|
+
WHERE {
|
|
27
|
+
?instance a ?class .
|
|
28
|
+
}
|
|
29
|
+
GROUP BY ?class
|
|
30
|
+
ORDER BY DESC(?instanceCount) """
|
|
31
|
+
|
|
32
|
+
return [
|
|
33
|
+
(
|
|
34
|
+
remove_namespace_from_uri(cast(URIRef, cast(tuple, res)[0])),
|
|
35
|
+
cast(RdfLiteral, cast(tuple, res)[1]).value,
|
|
36
|
+
)
|
|
37
|
+
for res in list(self.graph.query(query_statement))
|
|
38
|
+
]
|
|
39
|
+
|
|
21
40
|
def list_instances_ids_of_class(self, class_uri: URIRef, limit: int = -1) -> list[URIRef]:
|
|
22
41
|
"""Get instances ids for a given class
|
|
23
42
|
|
|
@@ -68,7 +87,10 @@ class Queries:
|
|
|
68
87
|
# We cannot include the RDF.type in case there is a neat:type property
|
|
69
88
|
return [remove_namespace_from_uri(*triple) for triple in result if triple[1] != RDF.type] # type: ignore[misc, index]
|
|
70
89
|
else:
|
|
71
|
-
warnings.warn(
|
|
90
|
+
warnings.warn(
|
|
91
|
+
"No rules found for the graph store, returning empty list.",
|
|
92
|
+
stacklevel=2,
|
|
93
|
+
)
|
|
72
94
|
return []
|
|
73
95
|
|
|
74
96
|
def construct_instances_of_class(self, class_: str, properties_optional: bool = True) -> list[tuple[str, str, str]]:
|
|
@@ -95,7 +117,10 @@ class Queries:
|
|
|
95
117
|
# We cannot include the RDF.type in case there is a neat:type property
|
|
96
118
|
return [remove_namespace_from_uri(*triple) for triple in result if triple[1] != RDF.type] # type: ignore[misc, index]
|
|
97
119
|
else:
|
|
98
|
-
warnings.warn(
|
|
120
|
+
warnings.warn(
|
|
121
|
+
"No rules found for the graph store, returning empty list.",
|
|
122
|
+
stacklevel=2,
|
|
123
|
+
)
|
|
99
124
|
return []
|
|
100
125
|
|
|
101
126
|
def list_triples(self, limit: int = 25) -> list[ResultRow]:
|
|
@@ -5,6 +5,7 @@ from datetime import datetime, timezone
|
|
|
5
5
|
from pathlib import Path
|
|
6
6
|
from typing import cast
|
|
7
7
|
|
|
8
|
+
import pandas as pd
|
|
8
9
|
from rdflib import Graph, Namespace, URIRef
|
|
9
10
|
from rdflib.plugins.stores.sparqlstore import SPARQLUpdateStore
|
|
10
11
|
|
|
@@ -283,12 +284,23 @@ class NeatGraphStore:
|
|
|
283
284
|
)
|
|
284
285
|
)
|
|
285
286
|
|
|
287
|
+
@property
|
|
288
|
+
def summary(self) -> pd.DataFrame:
|
|
289
|
+
return pd.DataFrame(self.queries.summarize_instances(), columns=["Type", "Occurrence"])
|
|
290
|
+
|
|
286
291
|
def _repr_html_(self) -> str:
|
|
287
292
|
provenance = self.provenance._repr_html_()
|
|
293
|
+
summary: pd.DataFrame = self.summary
|
|
294
|
+
summary_text = (
|
|
295
|
+
"<br /><strong>Graph is empty</strong><br />"
|
|
296
|
+
if summary.empty
|
|
297
|
+
else f"<br /><strong>Graph content</strong><br />{cast(pd.DataFrame, summary)._repr_html_()}" # type: ignore[operator]
|
|
298
|
+
)
|
|
288
299
|
|
|
289
300
|
return (
|
|
290
301
|
f"<strong>{type(self).__name__}</strong> A graph store is a container for storing triples. "
|
|
291
302
|
"It can be queried and transformed to extract information.<br />"
|
|
292
303
|
"<strong>Provenance</strong> Provenance is a record of changes that have occurred in the graph store.<br />"
|
|
293
304
|
f"{provenance}"
|
|
305
|
+
f"{summary_text}"
|
|
294
306
|
)
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/transformers/_classic_cdf.py
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from typing import cast
|
|
2
2
|
|
|
3
|
-
from rdflib import Graph, Literal, URIRef
|
|
3
|
+
from rdflib import RDF, Graph, Literal, URIRef
|
|
4
4
|
|
|
5
5
|
from cognite.neat.constants import DEFAULT_NAMESPACE
|
|
6
6
|
from cognite.neat.graph import extractors
|
|
@@ -21,11 +21,16 @@ class AddAssetDepth(BaseTransformer):
|
|
|
21
21
|
<{asset_id}> <{root_prop}> ?root .}}"""
|
|
22
22
|
|
|
23
23
|
def __init__(
|
|
24
|
-
self,
|
|
24
|
+
self,
|
|
25
|
+
asset_type: URIRef | None = None,
|
|
26
|
+
root_prop: URIRef | None = None,
|
|
27
|
+
parent_prop: URIRef | None = None,
|
|
28
|
+
depth_typing: dict[int, str] | None = None,
|
|
25
29
|
):
|
|
26
30
|
self.asset_type = asset_type or DEFAULT_NAMESPACE.Asset
|
|
27
31
|
self.root_prop = root_prop or DEFAULT_NAMESPACE.root
|
|
28
32
|
self.parent_prop = parent_prop or DEFAULT_NAMESPACE.parent
|
|
33
|
+
self.depth_typing = depth_typing
|
|
29
34
|
|
|
30
35
|
def transform(self, graph: Graph) -> None:
|
|
31
36
|
"""Adds depth of asset in the asset hierarchy to the graph."""
|
|
@@ -34,6 +39,13 @@ class AddAssetDepth(BaseTransformer):
|
|
|
34
39
|
if depth := self.get_depth(graph, asset_id, self.root_prop, self.parent_prop):
|
|
35
40
|
graph.add((asset_id, DEFAULT_NAMESPACE.depth, Literal(depth)))
|
|
36
41
|
|
|
42
|
+
if self.depth_typing and (type_ := self.depth_typing.get(depth, None)):
|
|
43
|
+
# remove existing type
|
|
44
|
+
graph.remove((asset_id, RDF.type, None))
|
|
45
|
+
|
|
46
|
+
# add new type
|
|
47
|
+
graph.add((asset_id, RDF.type, DEFAULT_NAMESPACE[type_]))
|
|
48
|
+
|
|
37
49
|
@classmethod
|
|
38
50
|
def get_depth(
|
|
39
51
|
cls,
|
|
@@ -62,7 +74,12 @@ class AddAssetDepth(BaseTransformer):
|
|
|
62
74
|
class AssetTimeSeriesConnector(BaseTransformer):
|
|
63
75
|
description: str = "Connects assets to timeseries, thus forming bi-directional connection"
|
|
64
76
|
_use_only_once: bool = True
|
|
65
|
-
_need_changes = frozenset(
|
|
77
|
+
_need_changes = frozenset(
|
|
78
|
+
{
|
|
79
|
+
str(extractors.AssetsExtractor.__name__),
|
|
80
|
+
str(extractors.TimeSeriesExtractor.__name__),
|
|
81
|
+
}
|
|
82
|
+
)
|
|
66
83
|
_asset_template: str = """SELECT ?asset_id WHERE {{
|
|
67
84
|
<{timeseries_id}> <{asset_prop}> ?asset_id .
|
|
68
85
|
?asset_id a <{asset_type}>}}"""
|
|
@@ -100,7 +117,12 @@ class AssetTimeSeriesConnector(BaseTransformer):
|
|
|
100
117
|
class AssetSequenceConnector(BaseTransformer):
|
|
101
118
|
description: str = "Connects assets to sequences, thus forming bi-directional connection"
|
|
102
119
|
_use_only_once: bool = True
|
|
103
|
-
_need_changes = frozenset(
|
|
120
|
+
_need_changes = frozenset(
|
|
121
|
+
{
|
|
122
|
+
str(extractors.AssetsExtractor.__name__),
|
|
123
|
+
str(extractors.SequencesExtractor.__name__),
|
|
124
|
+
}
|
|
125
|
+
)
|
|
104
126
|
_asset_template: str = """SELECT ?asset_id WHERE {{
|
|
105
127
|
<{sequence_id}> <{asset_prop}> ?asset_id .
|
|
106
128
|
?asset_id a <{asset_type}>}}"""
|
|
@@ -138,7 +160,12 @@ class AssetSequenceConnector(BaseTransformer):
|
|
|
138
160
|
class AssetFileConnector(BaseTransformer):
|
|
139
161
|
description: str = "Connects assets to files, thus forming bi-directional connection"
|
|
140
162
|
_use_only_once: bool = True
|
|
141
|
-
_need_changes = frozenset(
|
|
163
|
+
_need_changes = frozenset(
|
|
164
|
+
{
|
|
165
|
+
str(extractors.AssetsExtractor.__name__),
|
|
166
|
+
str(extractors.FilesExtractor.__name__),
|
|
167
|
+
}
|
|
168
|
+
)
|
|
142
169
|
_asset_template: str = """SELECT ?asset_id WHERE {{
|
|
143
170
|
<{file_id}> <{asset_prop}> ?asset_id .
|
|
144
171
|
?asset_id a <{asset_type}>}}"""
|
|
@@ -174,7 +201,12 @@ class AssetFileConnector(BaseTransformer):
|
|
|
174
201
|
class AssetEventConnector(BaseTransformer):
|
|
175
202
|
description: str = "Connects assets to events, thus forming bi-directional connection"
|
|
176
203
|
_use_only_once: bool = True
|
|
177
|
-
_need_changes = frozenset(
|
|
204
|
+
_need_changes = frozenset(
|
|
205
|
+
{
|
|
206
|
+
str(extractors.AssetsExtractor.__name__),
|
|
207
|
+
str(extractors.EventsExtractor.__name__),
|
|
208
|
+
}
|
|
209
|
+
)
|
|
178
210
|
_asset_template: str = """SELECT ?asset_id WHERE {{
|
|
179
211
|
<{event_id}> <{asset_prop}> ?asset_id .
|
|
180
212
|
?asset_id a <{asset_type}>}}"""
|
|
@@ -211,7 +243,10 @@ class AssetRelationshipConnector(BaseTransformer):
|
|
|
211
243
|
description: str = "Connects assets via relationships"
|
|
212
244
|
_use_only_once: bool = True
|
|
213
245
|
_need_changes = frozenset(
|
|
214
|
-
{
|
|
246
|
+
{
|
|
247
|
+
str(extractors.AssetsExtractor.__name__),
|
|
248
|
+
str(extractors.RelationshipsExtractor.__name__),
|
|
249
|
+
}
|
|
215
250
|
)
|
|
216
251
|
_asset_template: str = """SELECT ?source ?target WHERE {{
|
|
217
252
|
<{relationship_id}> <{relationship_source_xid_prop}> ?source_xid .
|
|
@@ -256,8 +291,20 @@ class AssetRelationshipConnector(BaseTransformer):
|
|
|
256
291
|
# files can be connected to multiple assets in the graph
|
|
257
292
|
for source_asset_id, target_asset_id in cast(list[tuple], assets_id_res):
|
|
258
293
|
# create a relationship between the two assets
|
|
259
|
-
graph.add(
|
|
260
|
-
|
|
294
|
+
graph.add(
|
|
295
|
+
(
|
|
296
|
+
source_asset_id,
|
|
297
|
+
DEFAULT_NAMESPACE.relationship,
|
|
298
|
+
relationship_id,
|
|
299
|
+
)
|
|
300
|
+
)
|
|
301
|
+
graph.add(
|
|
302
|
+
(
|
|
303
|
+
target_asset_id,
|
|
304
|
+
DEFAULT_NAMESPACE.relationship,
|
|
305
|
+
relationship_id,
|
|
306
|
+
)
|
|
307
|
+
)
|
|
261
308
|
|
|
262
309
|
# add source and target to the relationship
|
|
263
310
|
graph.add((relationship_id, DEFAULT_NAMESPACE.source, source_asset_id))
|
|
@@ -2,6 +2,7 @@ import math
|
|
|
2
2
|
import re
|
|
3
3
|
import sys
|
|
4
4
|
import warnings
|
|
5
|
+
from collections import defaultdict
|
|
5
6
|
from datetime import datetime
|
|
6
7
|
from typing import TYPE_CHECKING, Any, ClassVar, Literal
|
|
7
8
|
|
|
@@ -390,3 +391,72 @@ class DMSRules(BaseRules):
|
|
|
390
391
|
from ._converter import _DMSRulesConverter
|
|
391
392
|
|
|
392
393
|
return _DMSRulesConverter(self).as_domain_rules()
|
|
394
|
+
|
|
395
|
+
def create_reference(
|
|
396
|
+
self, reference: "DMSRules", view_extension_mapping: dict[str, str], default_extension: str | None = None
|
|
397
|
+
) -> None:
|
|
398
|
+
"""Takes this data models and makes it into an extension of the reference data model.
|
|
399
|
+
|
|
400
|
+
The argument view_extension_mapping is a dictionary where the keys are views of this data model,
|
|
401
|
+
and each value is the view of the reference data model that the view should extend. For example:
|
|
402
|
+
|
|
403
|
+
```python
|
|
404
|
+
view_extension_mapping = {"Pump": "Asset"}
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
This would make the view "Pump" in this data model extend the view "Asset" in the reference data model.
|
|
408
|
+
Note that all the keys in the dictionary must be external ids of views in this data model,
|
|
409
|
+
and all the values must be external ids of views in the reference data model.
|
|
410
|
+
|
|
411
|
+
Args:
|
|
412
|
+
reference: The reference data model
|
|
413
|
+
view_extension_mapping: A dictionary mapping views in this data model to views in the reference data model
|
|
414
|
+
default_extension: The default view in the reference data model that views in this
|
|
415
|
+
data model should extend if no mapping is provided.
|
|
416
|
+
|
|
417
|
+
"""
|
|
418
|
+
if self.reference is not None:
|
|
419
|
+
raise ValueError("Reference already exists")
|
|
420
|
+
self.reference = reference
|
|
421
|
+
view_by_external_id = {view.view.external_id: view for view in self.views}
|
|
422
|
+
ref_view_by_external_id = {view.view.external_id: view for view in reference.views}
|
|
423
|
+
|
|
424
|
+
if invalid_views := set(view_extension_mapping.keys()) - set(view_by_external_id.keys()):
|
|
425
|
+
raise ValueError(f"Views are not in this dat model {invalid_views}")
|
|
426
|
+
if invalid_views := set(view_extension_mapping.values()) - set(ref_view_by_external_id.keys()):
|
|
427
|
+
raise ValueError(f"Views are not in the reference data model {invalid_views}")
|
|
428
|
+
if default_extension and default_extension not in ref_view_by_external_id:
|
|
429
|
+
raise ValueError(f"Default extension view not in the reference data model {default_extension}")
|
|
430
|
+
|
|
431
|
+
properties_by_view_external_id: dict[str, dict[str, DMSProperty]] = defaultdict(dict)
|
|
432
|
+
for prop in self.properties:
|
|
433
|
+
properties_by_view_external_id[prop.view.external_id][prop.view_property] = prop
|
|
434
|
+
|
|
435
|
+
ref_properties_by_view_external_id: dict[str, dict[str, DMSProperty]] = defaultdict(dict)
|
|
436
|
+
for prop in reference.properties:
|
|
437
|
+
ref_properties_by_view_external_id[prop.view.external_id][prop.view_property] = prop
|
|
438
|
+
|
|
439
|
+
for view_external_id, view in view_by_external_id.items():
|
|
440
|
+
if view_external_id in view_extension_mapping:
|
|
441
|
+
ref_external_id = view_extension_mapping[view_external_id]
|
|
442
|
+
elif default_extension:
|
|
443
|
+
ref_external_id = default_extension
|
|
444
|
+
else:
|
|
445
|
+
continue
|
|
446
|
+
|
|
447
|
+
ref_view = ref_view_by_external_id[ref_external_id]
|
|
448
|
+
shared_properties = set(properties_by_view_external_id[view_external_id].keys()) & set(
|
|
449
|
+
ref_properties_by_view_external_id[ref_external_id].keys()
|
|
450
|
+
)
|
|
451
|
+
if shared_properties:
|
|
452
|
+
if view.implements is None:
|
|
453
|
+
view.implements = [ref_view.view]
|
|
454
|
+
elif isinstance(view.implements, list) and ref_view.view not in view.implements:
|
|
455
|
+
view.implements.append(ref_view.view)
|
|
456
|
+
for prop_name in shared_properties:
|
|
457
|
+
prop = properties_by_view_external_id[view_external_id][prop_name]
|
|
458
|
+
ref_prop = ref_properties_by_view_external_id[ref_external_id][prop_name]
|
|
459
|
+
if ref_prop.container and ref_prop.container_property:
|
|
460
|
+
prop.container = ref_prop.container
|
|
461
|
+
prop.container_property = ref_prop.container_property
|
|
462
|
+
prop.reference = ReferenceEntity.from_entity(ref_prop.view, ref_prop.view_property)
|
|
@@ -146,7 +146,9 @@ class DMSPropertyInput:
|
|
|
146
146
|
"Value Type": value_type,
|
|
147
147
|
"Property (linage)": self.property_ or self.view_property,
|
|
148
148
|
"Class (linage)": (
|
|
149
|
-
ClassEntity.load(self.class_, prefix=default_space, version=default_version)
|
|
149
|
+
ClassEntity.load(self.class_ or self.view, prefix=default_space, version=default_version)
|
|
150
|
+
if self.class_ or self.view
|
|
151
|
+
else None
|
|
150
152
|
),
|
|
151
153
|
"Name": self.name,
|
|
152
154
|
"Description": self.description,
|
|
@@ -499,6 +499,13 @@ class ReferenceEntity(ClassEntity):
|
|
|
499
499
|
prefix: str
|
|
500
500
|
property_: str | None = Field(None, alias="property")
|
|
501
501
|
|
|
502
|
+
@classmethod
|
|
503
|
+
def from_entity(cls, entity: Entity, property_: str) -> "ReferenceEntity":
|
|
504
|
+
if isinstance(entity, ClassEntity):
|
|
505
|
+
return cls(prefix=str(entity.prefix), suffix=entity.suffix, version=entity.version, property=property_)
|
|
506
|
+
else:
|
|
507
|
+
return cls(prefix=str(entity.prefix), suffix=entity.suffix, property=property_)
|
|
508
|
+
|
|
502
509
|
def as_view_id(self) -> ViewId:
|
|
503
510
|
if isinstance(self.prefix, _UndefinedType) or isinstance(self.suffix, _UnknownType):
|
|
504
511
|
raise ValueError("Prefix is not defined or suffix is unknown")
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.85.9"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/context_manager/__init__.py
RENAMED
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/context_manager/manager.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/api/routers/data_exploration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/asset-manifest.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/img/sme-icon.svg
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/app/ui/neat-app/build/manifest.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/__init__.py
RENAMED
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_assets.py
RENAMED
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_events.py
RENAMED
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_files.py
RENAMED
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_classic_cdf/_labels.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/graph/extractors/_mock_graph_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/extractors/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/_asset_loader.py
RENAMED
|
File without changes
|
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/_exceptions.py
RENAMED
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/core/__init__.py
RENAMED
|
File without changes
|
{cognite_neat-0.85.9 → cognite_neat-0.85.11}/cognite/neat/legacy/graph/loaders/core/labels.py
RENAMED
|
File without changes
|