cognite-neat 0.99.0__py3-none-any.whl → 0.100.0__py3-none-any.whl
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/_client/_api/data_modeling_loaders.py +390 -116
- cognite/neat/_client/_api/schema.py +63 -2
- cognite/neat/_client/data_classes/data_modeling.py +4 -0
- cognite/neat/_client/data_classes/schema.py +2 -348
- cognite/neat/_constants.py +27 -4
- cognite/neat/_graph/extractors/_base.py +7 -0
- cognite/neat/_graph/extractors/_classic_cdf/_classic.py +28 -18
- cognite/neat/_graph/loaders/_rdf2dms.py +52 -13
- cognite/neat/_graph/transformers/__init__.py +3 -3
- cognite/neat/_graph/transformers/_classic_cdf.py +135 -56
- cognite/neat/_issues/_base.py +26 -17
- cognite/neat/_issues/errors/__init__.py +4 -2
- cognite/neat/_issues/errors/_external.py +7 -0
- cognite/neat/_issues/errors/_properties.py +2 -7
- cognite/neat/_issues/errors/_resources.py +1 -1
- cognite/neat/_issues/warnings/__init__.py +6 -2
- cognite/neat/_issues/warnings/_external.py +9 -1
- cognite/neat/_issues/warnings/_resources.py +41 -2
- cognite/neat/_issues/warnings/user_modeling.py +4 -4
- cognite/neat/_rules/_constants.py +2 -6
- cognite/neat/_rules/analysis/_base.py +15 -5
- cognite/neat/_rules/analysis/_dms.py +20 -0
- cognite/neat/_rules/analysis/_information.py +22 -0
- cognite/neat/_rules/exporters/_base.py +3 -5
- cognite/neat/_rules/exporters/_rules2dms.py +190 -200
- cognite/neat/_rules/importers/__init__.py +1 -3
- cognite/neat/_rules/importers/_base.py +1 -1
- cognite/neat/_rules/importers/_dms2rules.py +3 -25
- cognite/neat/_rules/importers/_rdf/__init__.py +5 -0
- cognite/neat/_rules/importers/_rdf/_base.py +34 -11
- cognite/neat/_rules/importers/_rdf/_imf2rules.py +91 -0
- cognite/neat/_rules/importers/_rdf/_inference2rules.py +40 -7
- cognite/neat/_rules/importers/_rdf/_owl2rules.py +80 -0
- cognite/neat/_rules/importers/_rdf/_shared.py +138 -441
- cognite/neat/_rules/models/_base_rules.py +19 -0
- cognite/neat/_rules/models/_types.py +5 -0
- cognite/neat/_rules/models/dms/__init__.py +2 -0
- cognite/neat/_rules/models/dms/_exporter.py +247 -123
- cognite/neat/_rules/models/dms/_rules.py +7 -49
- cognite/neat/_rules/models/dms/_rules_input.py +8 -3
- cognite/neat/_rules/models/dms/_validation.py +421 -123
- cognite/neat/_rules/models/entities/_multi_value.py +3 -0
- cognite/neat/_rules/models/information/__init__.py +2 -0
- cognite/neat/_rules/models/information/_rules.py +17 -61
- cognite/neat/_rules/models/information/_rules_input.py +11 -2
- cognite/neat/_rules/models/information/_validation.py +107 -11
- cognite/neat/_rules/models/mapping/_classic2core.py +1 -1
- cognite/neat/_rules/models/mapping/_classic2core.yaml +8 -4
- cognite/neat/_rules/transformers/__init__.py +2 -1
- cognite/neat/_rules/transformers/_converters.py +163 -61
- cognite/neat/_rules/transformers/_mapping.py +132 -2
- cognite/neat/_rules/transformers/_pipelines.py +1 -1
- cognite/neat/_rules/transformers/_verification.py +29 -4
- cognite/neat/_session/_base.py +46 -60
- cognite/neat/_session/_mapping.py +105 -5
- cognite/neat/_session/_prepare.py +49 -14
- cognite/neat/_session/_read.py +50 -4
- cognite/neat/_session/_set.py +1 -0
- cognite/neat/_session/_to.py +38 -12
- cognite/neat/_session/_wizard.py +5 -0
- cognite/neat/_session/engine/_interface.py +3 -2
- cognite/neat/_session/exceptions.py +4 -0
- cognite/neat/_store/_base.py +79 -19
- cognite/neat/_utils/collection_.py +22 -0
- cognite/neat/_utils/rdf_.py +30 -4
- cognite/neat/_version.py +2 -2
- cognite/neat/_workflows/steps/lib/current/rules_exporter.py +3 -91
- cognite/neat/_workflows/steps/lib/current/rules_importer.py +2 -16
- cognite/neat/_workflows/steps/lib/current/rules_validator.py +3 -5
- {cognite_neat-0.99.0.dist-info → cognite_neat-0.100.0.dist-info}/METADATA +1 -1
- {cognite_neat-0.99.0.dist-info → cognite_neat-0.100.0.dist-info}/RECORD +74 -82
- cognite/neat/_rules/importers/_rdf/_imf2rules/__init__.py +0 -3
- cognite/neat/_rules/importers/_rdf/_imf2rules/_imf2classes.py +0 -86
- cognite/neat/_rules/importers/_rdf/_imf2rules/_imf2metadata.py +0 -29
- cognite/neat/_rules/importers/_rdf/_imf2rules/_imf2properties.py +0 -130
- cognite/neat/_rules/importers/_rdf/_imf2rules/_imf2rules.py +0 -154
- cognite/neat/_rules/importers/_rdf/_owl2rules/__init__.py +0 -3
- cognite/neat/_rules/importers/_rdf/_owl2rules/_owl2classes.py +0 -58
- cognite/neat/_rules/importers/_rdf/_owl2rules/_owl2metadata.py +0 -65
- cognite/neat/_rules/importers/_rdf/_owl2rules/_owl2properties.py +0 -59
- cognite/neat/_rules/importers/_rdf/_owl2rules/_owl2rules.py +0 -39
- {cognite_neat-0.99.0.dist-info → cognite_neat-0.100.0.dist-info}/LICENSE +0 -0
- {cognite_neat-0.99.0.dist-info → cognite_neat-0.100.0.dist-info}/WHEEL +0 -0
- {cognite_neat-0.99.0.dist-info → cognite_neat-0.100.0.dist-info}/entry_points.txt +0 -0
|
@@ -73,14 +73,14 @@ cognite/neat/_app/ui/neat-app/src/views/WorkflowView.tsx,sha256=dU6xZip3MVaVzKAF
|
|
|
73
73
|
cognite/neat/_app/ui/neat-app/tsconfig.json,sha256=sw7AweQXRyJAIQ8Beft_380Q8zBr54pG1P_wutdPAIQ,664
|
|
74
74
|
cognite/neat/_client/__init__.py,sha256=XpWT30mZdAJNHV84NJAWyAd2jZEGq9-IwvwK_wsOHdQ,177
|
|
75
75
|
cognite/neat/_client/_api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
76
|
-
cognite/neat/_client/_api/data_modeling_loaders.py,sha256=
|
|
77
|
-
cognite/neat/_client/_api/schema.py,sha256=
|
|
76
|
+
cognite/neat/_client/_api/data_modeling_loaders.py,sha256=1uxFZCVOSShWOy4wyMfCGVzOSJML_2GFrDn3Xqwz8ic,32943
|
|
77
|
+
cognite/neat/_client/_api/schema.py,sha256=ZxO9FkgFGF_sI6yVmrztWvb2zo7Exgxtq4-SX2dpISY,4830
|
|
78
78
|
cognite/neat/_client/_api_client.py,sha256=6cNMizDuqMJZiOqiNRLX46BEtlCB-BpgGLyypksRVYU,616
|
|
79
79
|
cognite/neat/_client/data_classes/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
80
|
-
cognite/neat/_client/data_classes/data_modeling.py,sha256=
|
|
81
|
-
cognite/neat/_client/data_classes/schema.py,sha256=
|
|
80
|
+
cognite/neat/_client/data_classes/data_modeling.py,sha256=RvpUp9ygd-yffQFJ7O2mQqMLDPIa-dmip5zPb8QVIiw,6672
|
|
81
|
+
cognite/neat/_client/data_classes/schema.py,sha256=hYKcrxXf90tA2NIqwBOzw9_hb4OanF9dwwPnur6MEfg,22904
|
|
82
82
|
cognite/neat/_config.py,sha256=f9Py4SEHwYYquIg-k1rC7MbXBLENXQauoZtLyUbWvJQ,10118
|
|
83
|
-
cognite/neat/_constants.py,sha256=
|
|
83
|
+
cognite/neat/_constants.py,sha256=KtAU74aQUy6FpmejwxDaXP5UwsqA8DJy-MTEoFw1UHg,2621
|
|
84
84
|
cognite/neat/_graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
85
85
|
cognite/neat/_graph/_shared.py,sha256=g7XFITbVxdDyGZ6mlgFUv5cBycrU7QbPktRikdUVkks,863
|
|
86
86
|
cognite/neat/_graph/_tracking/__init__.py,sha256=pYj7c-YAUIP4hvN-4mlWnwaeZFerzL9_gM-oZhex7cE,91
|
|
@@ -91,11 +91,11 @@ cognite/neat/_graph/examples/Knowledge-Graph-Nordic44.xml,sha256=U2Ns-M4LRjT1fBk
|
|
|
91
91
|
cognite/neat/_graph/examples/__init__.py,sha256=yAjHVY3b5jOjmbW-iLbhvu7BG014TpGi3K4igkDqW5I,368
|
|
92
92
|
cognite/neat/_graph/examples/skos-capturing-sheet-wind-topics.xlsx,sha256=CV_yK5ZSbYS_ktfIZUPD8Sevs47zpswLXQUDFkGE4Gw,45798
|
|
93
93
|
cognite/neat/_graph/extractors/__init__.py,sha256=JSq2QIiJKDwrttGL8lFiEhScNJfWglM_vZNJq9IWBfQ,2110
|
|
94
|
-
cognite/neat/_graph/extractors/_base.py,sha256=
|
|
94
|
+
cognite/neat/_graph/extractors/_base.py,sha256=xvoK8ZCu7OOvqcI9glOLEh1DxqW_TA1xYPI5tQQG_50,859
|
|
95
95
|
cognite/neat/_graph/extractors/_classic_cdf/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
96
96
|
cognite/neat/_graph/extractors/_classic_cdf/_assets.py,sha256=9WVFrAtUFAp_AAlb26Rtt2Axz9xsPQYetg7SKVrNCr4,1474
|
|
97
97
|
cognite/neat/_graph/extractors/_classic_cdf/_base.py,sha256=OTQOb0OLIBL-l1zNYIFyJ0Wnpfqtw90kSZu6JYteLo4,11087
|
|
98
|
-
cognite/neat/_graph/extractors/_classic_cdf/_classic.py,sha256=
|
|
98
|
+
cognite/neat/_graph/extractors/_classic_cdf/_classic.py,sha256=aKo5Z5eKMZuyq9k6Uxk-yizvBnPNVc_58lIGoKrOEMU,11206
|
|
99
99
|
cognite/neat/_graph/extractors/_classic_cdf/_data_sets.py,sha256=xRFv9pVFgIMTZ45E8teMC0Ynku_CuZdcZkVCbhPuPBk,1294
|
|
100
100
|
cognite/neat/_graph/extractors/_classic_cdf/_events.py,sha256=B8hRoMAg8GQvApjxals5PfPyjmdPO93U3nj_G7g0kDQ,1394
|
|
101
101
|
cognite/neat/_graph/extractors/_classic_cdf/_files.py,sha256=Q816cVQ9qS7Art66HJfErL2OV7MxH_eSIG7bJ8_HJ7Q,1406
|
|
@@ -110,133 +110,125 @@ cognite/neat/_graph/extractors/_mock_graph_generator.py,sha256=yEqQdbnRQjBXVQIEV
|
|
|
110
110
|
cognite/neat/_graph/extractors/_rdf_file.py,sha256=YgPZN4Ayk6UlbwFFjdWn4Yo3P74D8KeNUb3slXg6Ox8,1604
|
|
111
111
|
cognite/neat/_graph/loaders/__init__.py,sha256=1eam_rG1BXTUJ8iDm8_IYZldEe177vn2GmHihDBi8qk,718
|
|
112
112
|
cognite/neat/_graph/loaders/_base.py,sha256=tjplRd-vbWhWyys0Ll3KgHR3F3ETlP_dXJ3e8F8w15M,3984
|
|
113
|
-
cognite/neat/_graph/loaders/_rdf2dms.py,sha256=
|
|
113
|
+
cognite/neat/_graph/loaders/_rdf2dms.py,sha256=KMe0T5jvGbgdo3RQijDtTSeWpU_ovGXWBGR1dZ_IjEM,17472
|
|
114
114
|
cognite/neat/_graph/queries/__init__.py,sha256=BgDd-037kvtWwAoGAy8eORVNMiZ5-E9sIV0txIpeaN4,50
|
|
115
115
|
cognite/neat/_graph/queries/_base.py,sha256=dKEk8TDYUxIc71peqD9TfHHoILG9cKzjkFp7CAkbF78,14246
|
|
116
116
|
cognite/neat/_graph/queries/_construct.py,sha256=CW8uHtXXACUXDj1AcEjROXtvoiuyx0CTgZ0bURY5Neo,7213
|
|
117
117
|
cognite/neat/_graph/queries/_shared.py,sha256=K3svLkvw-DWPZUwIwpJRjPKg5UIRKFCn5jBLpuJjiHc,5330
|
|
118
|
-
cognite/neat/_graph/transformers/__init__.py,sha256=
|
|
118
|
+
cognite/neat/_graph/transformers/__init__.py,sha256=SJtcfzztdy6f_D1X5OowLO4Huv4HO_wRKizSY3orrV0,978
|
|
119
119
|
cognite/neat/_graph/transformers/_base.py,sha256=b37Ek-9njuM5pTR_3XhnxCMrg_ip_2BMwM7ZhKpAAlw,328
|
|
120
|
-
cognite/neat/_graph/transformers/_classic_cdf.py,sha256=
|
|
120
|
+
cognite/neat/_graph/transformers/_classic_cdf.py,sha256=8vzvoHH2YJMg2mMTEH_ASGWn1Maars1N1RZ9jWhLTkY,19291
|
|
121
121
|
cognite/neat/_graph/transformers/_iodd.py,sha256=yH-BvVQUswM8RmV2VvOPQAgwudhBJdxDLHW1RKxuuAY,729
|
|
122
122
|
cognite/neat/_graph/transformers/_prune_graph.py,sha256=jmmnihEr8ONEgLye_81hyIzrY_TdtDIbMZNrfZQ7zGA,5270
|
|
123
123
|
cognite/neat/_graph/transformers/_rdfpath.py,sha256=0ZH7d62kfdCyWGrCyY2oJSnGEPsHQd0sMrZAsTibCCI,4155
|
|
124
124
|
cognite/neat/_graph/transformers/_value_type.py,sha256=JorH-AgDXVZUkG_GCcwn51Mw0M2WIOV834t0kF_Nwvo,2614
|
|
125
125
|
cognite/neat/_issues/__init__.py,sha256=IEZBpvL88hdghX7JgndhxcZcxreZowuoQFIXuSeIKDs,556
|
|
126
|
-
cognite/neat/_issues/_base.py,sha256=
|
|
127
|
-
cognite/neat/_issues/errors/__init__.py,sha256=
|
|
128
|
-
cognite/neat/_issues/errors/_external.py,sha256=
|
|
126
|
+
cognite/neat/_issues/_base.py,sha256=VaV90Zo5ssWibpSnbXM4FsdHHxkzpEcI5C_jtvESb4E,19689
|
|
127
|
+
cognite/neat/_issues/errors/__init__.py,sha256=Q2KFlG6zWkSKj9bTTw_idlgIZrFWYSYbMR7oSg6mw4Q,2216
|
|
128
|
+
cognite/neat/_issues/errors/_external.py,sha256=2RUOH4zRLYZQGLNwoTospi8xTW-P7CUZ_hURjRPcSbE,1764
|
|
129
129
|
cognite/neat/_issues/errors/_general.py,sha256=zwEoaygHA2Nt9vCwiveDuzJsqZYIaX0BoUYkwJkQ4jU,844
|
|
130
|
-
cognite/neat/_issues/errors/_properties.py,sha256=
|
|
131
|
-
cognite/neat/_issues/errors/_resources.py,sha256=
|
|
130
|
+
cognite/neat/_issues/errors/_properties.py,sha256=T_nquQeEQS3DQY--DQ13acxhGX_-gpUMjWGTBKCh6r8,2536
|
|
131
|
+
cognite/neat/_issues/errors/_resources.py,sha256=YoajFF4Nxq_mhhVSZ7r3J6V-sH8cMMn576dSTsbcQZk,3964
|
|
132
132
|
cognite/neat/_issues/errors/_workflow.py,sha256=m_Hlsvl5A1Oy7P3IROnz-4_do8_orZ1Pr1IHqsMyEys,971
|
|
133
133
|
cognite/neat/_issues/formatters.py,sha256=QCk41VLlpq-R9uaHpINYceZkIUoI9m4pwSq_yWPOmr8,3331
|
|
134
|
-
cognite/neat/_issues/warnings/__init__.py,sha256=
|
|
135
|
-
cognite/neat/_issues/warnings/_external.py,sha256=
|
|
134
|
+
cognite/neat/_issues/warnings/__init__.py,sha256=hVeUminMD3PRnuLe-Ya4p-kJSkUfOWjgHm32tPiwW-Q,2683
|
|
135
|
+
cognite/neat/_issues/warnings/_external.py,sha256=3tE98nLzOx9pb-VMi0MmQskHj-IuEqwjjoqhKMJ-xIM,1325
|
|
136
136
|
cognite/neat/_issues/warnings/_general.py,sha256=9ZSNYBwFQ_XEagxYioUijJdCkdmT3VDQTlTO_JINe_E,617
|
|
137
137
|
cognite/neat/_issues/warnings/_models.py,sha256=i4ZXr1IINKbFiVhUd8-qAt9_cXB8D3W-ng1Ime_lQTA,4376
|
|
138
138
|
cognite/neat/_issues/warnings/_properties.py,sha256=VDc31UshXjLihWFLPFx9-TMyfJuJJKwdoOhkP_kDPFs,2444
|
|
139
|
-
cognite/neat/_issues/warnings/_resources.py,sha256=
|
|
140
|
-
cognite/neat/_issues/warnings/user_modeling.py,sha256=
|
|
139
|
+
cognite/neat/_issues/warnings/_resources.py,sha256=ahWKooStew8VE4w9k-n7fSxCQF2Pv8TMb2ScM0NkbZ4,3130
|
|
140
|
+
cognite/neat/_issues/warnings/user_modeling.py,sha256=FIOJQ2wgYJtwa6qw3oNPExVXCU-A6BQ-VHPaK-2iL60,3668
|
|
141
141
|
cognite/neat/_rules/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
142
|
-
cognite/neat/_rules/_constants.py,sha256=
|
|
142
|
+
cognite/neat/_rules/_constants.py,sha256=lOyf7nybSYOuAE_wKmTMncHYz0Io0_J_YVnYBzjrvZA,5637
|
|
143
143
|
cognite/neat/_rules/_shared.py,sha256=b7mO8mXY4w84XmcY_ArQa4LqnS2A0emS12tbPb4sG7A,1562
|
|
144
144
|
cognite/neat/_rules/analysis/__init__.py,sha256=sMs4n8T87gLlvoss6FWkZ8Y7BPpo9AGxi0m4YxBGwpY,126
|
|
145
|
-
cognite/neat/_rules/analysis/_base.py,sha256=
|
|
146
|
-
cognite/neat/_rules/analysis/_dms.py,sha256=
|
|
147
|
-
cognite/neat/_rules/analysis/_information.py,sha256=
|
|
145
|
+
cognite/neat/_rules/analysis/_base.py,sha256=RXPxgcjhA8xZMZ30TZAYw9vXxd6p2Bn6nWekLEExY_Q,16744
|
|
146
|
+
cognite/neat/_rules/analysis/_dms.py,sha256=k9OrN6kRCcdPr8GCJDRXyF0nNXmBYJQDtoGqw7R87po,2204
|
|
147
|
+
cognite/neat/_rules/analysis/_information.py,sha256=Ex4ZeADmJV35_KjOerlepZILVfZVPcud1zojogKc6_s,10699
|
|
148
148
|
cognite/neat/_rules/catalog/__init__.py,sha256=dzx-DYYJDc861aFiOI5o1FsySD9F1agY8SBsr3nCf4Y,148
|
|
149
149
|
cognite/neat/_rules/catalog/info-rules-imf.xlsx,sha256=7odm5CoAU72-VTZk_z1u7GbycIb-X-8Yy3mtBGLjhE4,55511
|
|
150
150
|
cognite/neat/_rules/exporters/__init__.py,sha256=jCwXAeyZJv7GNJ3hGG-80gb8LAidozsyFMzdNIsGt_Y,1204
|
|
151
|
-
cognite/neat/_rules/exporters/_base.py,sha256
|
|
152
|
-
cognite/neat/_rules/exporters/_rules2dms.py,sha256=
|
|
151
|
+
cognite/neat/_rules/exporters/_base.py,sha256=vadYWb5hVbjiPIhVIzlY6ARisoqhtJa6Ce0ysNHPXQc,1328
|
|
152
|
+
cognite/neat/_rules/exporters/_rules2dms.py,sha256=13vr0RfZ1OdJKQh9Ye06HhY9MibyI6fIjAZNXOjPzM8,15784
|
|
153
153
|
cognite/neat/_rules/exporters/_rules2excel.py,sha256=puFgIf_dolxv38Lkgzl9lDDREWDPdTApqgYCu9H-hf4,11689
|
|
154
154
|
cognite/neat/_rules/exporters/_rules2instance_template.py,sha256=8HM1SkzcucaEYpQi96ncMnL8STArX9Oe09JBhJJAN4I,5810
|
|
155
155
|
cognite/neat/_rules/exporters/_rules2ontology.py,sha256=ioMi1GUhnbvcfVOPb3Z0a24mIEe74AfxySETWMDS9Lc,21776
|
|
156
156
|
cognite/neat/_rules/exporters/_rules2yaml.py,sha256=O9vnzDHf1ep1Qu0po0GVjgu945HNx3-zRmhxv65sv6I,3052
|
|
157
157
|
cognite/neat/_rules/exporters/_validation.py,sha256=DVJGdNNU2WtAFgUg0h4SWVhveRErEPOcYdT65y5toV0,682
|
|
158
|
-
cognite/neat/_rules/importers/__init__.py,sha256=
|
|
159
|
-
cognite/neat/_rules/importers/_base.py,sha256=
|
|
160
|
-
cognite/neat/_rules/importers/_dms2rules.py,sha256=
|
|
158
|
+
cognite/neat/_rules/importers/__init__.py,sha256=DZN_MIy_rQwyudvdAYtLPOVPB3YytmDoIfKGgT55StQ,1316
|
|
159
|
+
cognite/neat/_rules/importers/_base.py,sha256=P5bksMf7MNfLDX0SVQxjmK3Y-psoe0HcI_sWFoQJbFs,3264
|
|
160
|
+
cognite/neat/_rules/importers/_dms2rules.py,sha256=177CYuhO1w3IvEN5eiQWaxHjyRsDGagrTkEhBf1994E,20297
|
|
161
161
|
cognite/neat/_rules/importers/_dtdl2rules/__init__.py,sha256=CNR-sUihs2mnR1bPMKs3j3L4ds3vFTsrl6YycExZTfU,68
|
|
162
162
|
cognite/neat/_rules/importers/_dtdl2rules/_unit_lookup.py,sha256=wW4saKva61Q_i17guY0dc4OseJDQfqHy_QZBtm0OD6g,12134
|
|
163
163
|
cognite/neat/_rules/importers/_dtdl2rules/dtdl_converter.py,sha256=j38U0um1ZWI-yRvEUR3z33vOvMCYXJxSO9L_B7m9xDE,11707
|
|
164
164
|
cognite/neat/_rules/importers/_dtdl2rules/dtdl_importer.py,sha256=y3UMwrBysT3pl_wXJj-qKYKYbJDKa424AAfn6e8489k,5955
|
|
165
165
|
cognite/neat/_rules/importers/_dtdl2rules/spec.py,sha256=u__f08rAiYG0FIRiWoecBN83bVN3GEy--Lvm7463Q68,12166
|
|
166
|
-
cognite/neat/_rules/importers/_rdf/__init__.py,sha256=
|
|
167
|
-
cognite/neat/_rules/importers/_rdf/_base.py,sha256=
|
|
168
|
-
cognite/neat/_rules/importers/_rdf/_imf2rules
|
|
169
|
-
cognite/neat/_rules/importers/_rdf/
|
|
170
|
-
cognite/neat/_rules/importers/_rdf/
|
|
171
|
-
cognite/neat/_rules/importers/_rdf/
|
|
172
|
-
cognite/neat/_rules/importers/_rdf/_imf2rules/_imf2rules.py,sha256=KqQ6YbpKg-kWg60klgP8gWJx5S5jgOW6cATP2cnZoxQ,5221
|
|
173
|
-
cognite/neat/_rules/importers/_rdf/_inference2rules.py,sha256=oq414zXP-HqE44Ne7UYX6PbnWiwZAJVBlQb0jRwr0fo,11391
|
|
174
|
-
cognite/neat/_rules/importers/_rdf/_owl2rules/__init__.py,sha256=tdGcrgtozdQyST-pTlxIa4cLBNTLvtk1nNYR4vOdFSw,63
|
|
175
|
-
cognite/neat/_rules/importers/_rdf/_owl2rules/_owl2classes.py,sha256=qKle5M3vYFzmIa-T0pzaFGwM3xWOfNH1Y27lglXDJyE,1904
|
|
176
|
-
cognite/neat/_rules/importers/_rdf/_owl2rules/_owl2metadata.py,sha256=KRx29Hrjjcbq09Gu2ErfVwmiiBEpmXbAT_bjPz8uGos,2499
|
|
177
|
-
cognite/neat/_rules/importers/_rdf/_owl2rules/_owl2properties.py,sha256=QxjYWdI6gCPFV7sFssYBIuRALR90nzdXvSMF6VTqCIo,2114
|
|
178
|
-
cognite/neat/_rules/importers/_rdf/_owl2rules/_owl2rules.py,sha256=ePB9iFRpk17vC946X1nBIdP7x3hV7abUQB70yQOmvko,1575
|
|
179
|
-
cognite/neat/_rules/importers/_rdf/_shared.py,sha256=RUYSXJj4nHsS03TT7BXQOlQBX9mR6qdwuDnfErwV8gU,14805
|
|
166
|
+
cognite/neat/_rules/importers/_rdf/__init__.py,sha256=F0x60kVLtJ9H8Md8_aMeKMBkhPCMiljyxt2_YmQfnMU,183
|
|
167
|
+
cognite/neat/_rules/importers/_rdf/_base.py,sha256=V-Y5NNP_ang3sXLJNx4AZZZPv1akzZWIRwVLafY3aac,5419
|
|
168
|
+
cognite/neat/_rules/importers/_rdf/_imf2rules.py,sha256=xemIv5G6JXJJ6Jn_1P5UldwEDNsgMIGiDF28DnOTtjU,3597
|
|
169
|
+
cognite/neat/_rules/importers/_rdf/_inference2rules.py,sha256=Zu6GTsG8A48PQs8F7H8iskTj9zu2R-l4NlWejCwSwqo,12518
|
|
170
|
+
cognite/neat/_rules/importers/_rdf/_owl2rules.py,sha256=KhQAM9ai2ckhpB7ohfRi0n8ztRwbPADfNMFed8f-5V8,3267
|
|
171
|
+
cognite/neat/_rules/importers/_rdf/_shared.py,sha256=mxBoqFQfvHeLa4kbDYAd7FEcHe1fv97tcqHd9gmFeKk,5867
|
|
180
172
|
cognite/neat/_rules/importers/_spreadsheet2rules.py,sha256=TI92l_qddRW2JWk3JbmsvKkDYgXU-e_avw4y7epD_rs,10732
|
|
181
173
|
cognite/neat/_rules/importers/_yaml2rules.py,sha256=5DsEMYo6JVHC_mBOaaR3J6on1rXSpk82plCsrOq5_l8,3144
|
|
182
174
|
cognite/neat/_rules/models/__init__.py,sha256=z1LoPY2X-M8Og8bKcjae2JwQB9yW8Y_ASnkL3Tjwqyg,1024
|
|
183
175
|
cognite/neat/_rules/models/_base_input.py,sha256=qJrxobZLqpc28adEUJTKdJ8hDUZ67SVDFkUJnGjcPOc,6647
|
|
184
|
-
cognite/neat/_rules/models/_base_rules.py,sha256=
|
|
176
|
+
cognite/neat/_rules/models/_base_rules.py,sha256=JZkpV3l7gWGmDMluIFtc3qFBOc6edtSTfBMErj_ZzR4,14453
|
|
185
177
|
cognite/neat/_rules/models/_rdfpath.py,sha256=hqUMZCMeI8ESdJltu7FifuUhna5JNN_Heup2aYkV56Y,11882
|
|
186
|
-
cognite/neat/_rules/models/_types.py,sha256=
|
|
178
|
+
cognite/neat/_rules/models/_types.py,sha256=7rh4PVaqI58OTXtoIgZKitmwa5hZlVtk8uX4czlSGFY,5261
|
|
187
179
|
cognite/neat/_rules/models/data_types.py,sha256=LJuWUbStlZM4hUJGExOJIJXmAA4uiA0tvO9zKqLUrQg,9805
|
|
188
|
-
cognite/neat/_rules/models/dms/__init__.py,sha256=
|
|
189
|
-
cognite/neat/_rules/models/dms/_exporter.py,sha256=
|
|
190
|
-
cognite/neat/_rules/models/dms/_rules.py,sha256=
|
|
191
|
-
cognite/neat/_rules/models/dms/_rules_input.py,sha256=
|
|
192
|
-
cognite/neat/_rules/models/dms/_validation.py,sha256=
|
|
180
|
+
cognite/neat/_rules/models/dms/__init__.py,sha256=r2XGwAjTsAZs-n-oimg40hLUKVpqFGVuAPmfEUCwwRs,695
|
|
181
|
+
cognite/neat/_rules/models/dms/_exporter.py,sha256=eB5uDX06XYkQkON96eykSk7ZCegb9a5dCxTmTIr252c,28020
|
|
182
|
+
cognite/neat/_rules/models/dms/_rules.py,sha256=4Nstw6iVKil7oz4VkYM6q07-O7Gjrw8oT9ktZnqw5pI,16842
|
|
183
|
+
cognite/neat/_rules/models/dms/_rules_input.py,sha256=mVW-gHrjjlqFuq82qTkxIaMZ7OlzQFxjopxdlwQergY,12949
|
|
184
|
+
cognite/neat/_rules/models/dms/_validation.py,sha256=TAgNg1rur3PRVPcsm4-BXKV9AHX8AtahN0OhRx3PgyM,27262
|
|
193
185
|
cognite/neat/_rules/models/entities/__init__.py,sha256=QD-h79HhjqCsgscNU5kuf1ieRCE94dOfpujLuzYbtHk,1469
|
|
194
186
|
cognite/neat/_rules/models/entities/_constants.py,sha256=ToiLaaF-hGLPfn3AsKIIrfB4ZdTk4cY1RjM9gA1Qjkg,288
|
|
195
187
|
cognite/neat/_rules/models/entities/_loaders.py,sha256=jFllRty5XpS6uLklr9wJkx7Bzm-qwg65um6hnVistvw,2728
|
|
196
|
-
cognite/neat/_rules/models/entities/_multi_value.py,sha256=
|
|
188
|
+
cognite/neat/_rules/models/entities/_multi_value.py,sha256=6j-nlUA392yQP_uB_CFB6_qFReNhi54ZlbFTcOKpbKY,2755
|
|
197
189
|
cognite/neat/_rules/models/entities/_single_value.py,sha256=dVfqIx3_Agi_LddhsqPOyWcAt0s06PNpRxrW-7n-z0Y,18513
|
|
198
190
|
cognite/neat/_rules/models/entities/_types.py,sha256=df9rnXJJKciv2Bp-Ve2q4xdEJt6WWniq12Z0hW2d6sk,1917
|
|
199
191
|
cognite/neat/_rules/models/entities/_wrapped.py,sha256=FxC8HztW_tUUtuArAOwxyFfkdJnSEB4bgZoNmmmfiPk,7137
|
|
200
|
-
cognite/neat/_rules/models/information/__init__.py,sha256=
|
|
201
|
-
cognite/neat/_rules/models/information/_rules.py,sha256=
|
|
202
|
-
cognite/neat/_rules/models/information/_rules_input.py,sha256=
|
|
203
|
-
cognite/neat/_rules/models/information/_validation.py,sha256=
|
|
192
|
+
cognite/neat/_rules/models/information/__init__.py,sha256=ex9JOyiZYXefFl9oi1VaHhyUOtYjXWytSmwuq4pqKqc,556
|
|
193
|
+
cognite/neat/_rules/models/information/_rules.py,sha256=miQpNmKS6bUfP1zI6GrmuUiKHGe13dW-QA96LqG38hY,10062
|
|
194
|
+
cognite/neat/_rules/models/information/_rules_input.py,sha256=PdXTPN0QfO4vxN5M4xzaaDwHEQo53RbY_jIr5TfBszY,5443
|
|
195
|
+
cognite/neat/_rules/models/information/_validation.py,sha256=HbaLShj6uumu-t9I3FUI_iKQfUDiwEkuFENHgWIPfrk,10202
|
|
204
196
|
cognite/neat/_rules/models/mapping/__init__.py,sha256=T68Hf7rhiXa7b03h4RMwarAmkGnB-Bbhc1H07b2PyC4,100
|
|
205
|
-
cognite/neat/_rules/models/mapping/_classic2core.py,sha256=
|
|
206
|
-
cognite/neat/_rules/models/mapping/_classic2core.yaml,sha256=
|
|
207
|
-
cognite/neat/_rules/transformers/__init__.py,sha256=
|
|
197
|
+
cognite/neat/_rules/models/mapping/_classic2core.py,sha256=oIU8jKixts-GIO64ArT8VCK_hK-t2zW34gadlvzDwy4,1353
|
|
198
|
+
cognite/neat/_rules/models/mapping/_classic2core.yaml,sha256=8LYjQFBWZ8_ayp3Nq1eBtP9a3D7jZwISmnHfZrq9O_A,9674
|
|
199
|
+
cognite/neat/_rules/transformers/__init__.py,sha256=VQPAInGTBg8tyGU6qLMB_7DiVJenXq_bVeYxdOq9eYc,844
|
|
208
200
|
cognite/neat/_rules/transformers/_base.py,sha256=jmgcSFWOPvrbfme0kUwXi1_3Bvxwif1T1Pin2jqhzlU,3585
|
|
209
|
-
cognite/neat/_rules/transformers/_converters.py,sha256=
|
|
210
|
-
cognite/neat/_rules/transformers/_mapping.py,sha256=
|
|
211
|
-
cognite/neat/_rules/transformers/_pipelines.py,sha256
|
|
212
|
-
cognite/neat/_rules/transformers/_verification.py,sha256=
|
|
201
|
+
cognite/neat/_rules/transformers/_converters.py,sha256=1czcTr0cNLyqOuPb7coq2QSZuO0T3Cg1xOr3zZQ1_9Q,44856
|
|
202
|
+
cognite/neat/_rules/transformers/_mapping.py,sha256=gMkLHeMWTvQJZV-YLMQm0pirnd2amVnRq48_WKMcxQo,16579
|
|
203
|
+
cognite/neat/_rules/transformers/_pipelines.py,sha256=2y786LkNMedmxoozUyvtd-2bfqf6wkX2H8On-m2Ucsw,2618
|
|
204
|
+
cognite/neat/_rules/transformers/_verification.py,sha256=M4-Cr3vTm3PZyHSjW-odbOqbY5g0hiRjERDjvLgYbxU,3907
|
|
213
205
|
cognite/neat/_session/__init__.py,sha256=fxQ5URVlUnmEGYyB8Baw7IDq-uYacqkigbc4b-Pr9Fw,58
|
|
214
|
-
cognite/neat/_session/_base.py,sha256=
|
|
206
|
+
cognite/neat/_session/_base.py,sha256=FjQBIk1Td2RWu58Ktd88k6ySzmNr9MVLt0hxgA8Eahg,10502
|
|
215
207
|
cognite/neat/_session/_collector.py,sha256=zS5JxLIYnAWV-dBzF6WgUfo662iYSzEyDhtnMv-Zibs,4002
|
|
216
208
|
cognite/neat/_session/_drop.py,sha256=XlEaKb_HpqI5EQuUuUFjcf3Qx6BfcBBWdqqGdwkGhmE,1137
|
|
217
209
|
cognite/neat/_session/_inspect.py,sha256=s3R6vz8HbqZSdknyXTSkmA3JvvInlQF5yNKECTA-I1w,7264
|
|
218
|
-
cognite/neat/_session/_mapping.py,sha256=
|
|
219
|
-
cognite/neat/_session/_prepare.py,sha256=
|
|
220
|
-
cognite/neat/_session/_read.py,sha256=
|
|
221
|
-
cognite/neat/_session/_set.py,sha256=
|
|
210
|
+
cognite/neat/_session/_mapping.py,sha256=MZ_xRhapc2mVwM-W3tda2zZGaPncj_ZqnzuasvY05po,6109
|
|
211
|
+
cognite/neat/_session/_prepare.py,sha256=_jU0TJWLcg727wKh8NK3a-5duVnRkGJrnkNxLO_D83Q,21883
|
|
212
|
+
cognite/neat/_session/_read.py,sha256=4G34X_7hNs5V0gCLHPR1ktva6-fyGmwVc1Qu7T5yQdA,15102
|
|
213
|
+
cognite/neat/_session/_set.py,sha256=NY0Vz8xD_a-UA8qWE1GFxHdmBl1BkT1KHQehQVKUorI,1914
|
|
222
214
|
cognite/neat/_session/_show.py,sha256=_ev_Z41rkW4nlvhLf69PmttggKksnkCchOow7CmICyU,14124
|
|
223
215
|
cognite/neat/_session/_state.py,sha256=rqKHkikagO1pf_fKpY-LZI1X5R_v6AyYpV72_3eSduM,5783
|
|
224
|
-
cognite/neat/_session/_to.py,sha256=
|
|
225
|
-
cognite/neat/_session/_wizard.py,sha256=
|
|
216
|
+
cognite/neat/_session/_to.py,sha256=4BlDplDeWpKDtlU_gRsnWUtUU5O8udu60M99Clkj8uE,7345
|
|
217
|
+
cognite/neat/_session/_wizard.py,sha256=O8d0FA87RIoiTOD2KLyTVsxwA2-ewAG2By4JfxXSL84,1474
|
|
226
218
|
cognite/neat/_session/engine/__init__.py,sha256=aeI5pzljU5n1B-SVu3LwjYVsN1tSVhnJj-4ddflEo4U,120
|
|
227
219
|
cognite/neat/_session/engine/_import.py,sha256=1QxA2_EK613lXYAHKQbZyw2yjo5P9XuiX4Z6_6-WMNQ,169
|
|
228
|
-
cognite/neat/_session/engine/_interface.py,sha256=
|
|
220
|
+
cognite/neat/_session/engine/_interface.py,sha256=ItJ1VMrPt-pKKvpSpglD9n9yFC6ehF9xV2DUVCyfQB0,533
|
|
229
221
|
cognite/neat/_session/engine/_load.py,sha256=HAzrAiR3FQz881ZMbaK6EIvMNRxHUK8VbSoD2Obd-4g,5064
|
|
230
|
-
cognite/neat/_session/exceptions.py,sha256=
|
|
222
|
+
cognite/neat/_session/exceptions.py,sha256=dvhwF7d8AADxqEI13nZreLCPBPN_7A3KiAqlWjkpuqc,2303
|
|
231
223
|
cognite/neat/_shared.py,sha256=JXebp3LREqBq9TPNXb7QCHwF7_nbWo622WAzllxSaaU,1671
|
|
232
224
|
cognite/neat/_store/__init__.py,sha256=G-VG_YwfRt1kuPao07PDJyZ3w_0-eguzLUM13n-Z_RA,64
|
|
233
|
-
cognite/neat/_store/_base.py,sha256=
|
|
225
|
+
cognite/neat/_store/_base.py,sha256=X77CkrCLEg9g_qpcqTIIid-1KZZ7NCU1wbrQqVR6Prc,16265
|
|
234
226
|
cognite/neat/_store/_provenance.py,sha256=BiVOuwl65qWZBaBlPYbVv0Dy_Ibg7U3tLpXt8H7KRuw,8722
|
|
235
227
|
cognite/neat/_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
236
228
|
cognite/neat/_utils/auth.py,sha256=UbFNq4BIqxc1459xJtI1FZz91K5XEMkfY5cfpBHyUHU,13301
|
|
237
229
|
cognite/neat/_utils/auxiliary.py,sha256=WFOycFgoYipvDmtGvn6ZNH3H8iNZmHamrfe2kXRb8lM,6667
|
|
238
|
-
cognite/neat/_utils/collection_.py,sha256=
|
|
239
|
-
cognite/neat/_utils/rdf_.py,sha256=
|
|
230
|
+
cognite/neat/_utils/collection_.py,sha256=Q_LN1qypr0SeAV3dAR5KLD1szHNohSdYxyA8hr3n4T8,1433
|
|
231
|
+
cognite/neat/_utils/rdf_.py,sha256=_nmZqo6_Ef7Aep0kXR_uoiRxGQR2u5lMK4g5mxWneeY,8586
|
|
240
232
|
cognite/neat/_utils/reader/__init__.py,sha256=KOdEuGd9n9tyqZY7HCTnBKAXk2PUn4n_l7O3ZguSp-w,112
|
|
241
233
|
cognite/neat/_utils/reader/_base.py,sha256=PECrAlJqKDlyFzAlBBLfKjyOEyJSgN0sUfjbK-2qWf4,4537
|
|
242
234
|
cognite/neat/_utils/spreadsheet.py,sha256=LI0c7dlW0zXHkHw0NvB-gg6Df6cDcE3FbiaHBYLXdzQ,2714
|
|
@@ -244,7 +236,7 @@ cognite/neat/_utils/text.py,sha256=PvTEsEjaTu8SE8yYaKUrce4msboMj933dK7-0Eey_rE,3
|
|
|
244
236
|
cognite/neat/_utils/time_.py,sha256=O30LUiDH9TdOYz8_a9pFqTtJdg8vEjC3qHCk8xZblG8,345
|
|
245
237
|
cognite/neat/_utils/upload.py,sha256=iWKmsQgw4EHLv-11NjYu7zAj5LtqTAfNa87a1kWeuaU,5727
|
|
246
238
|
cognite/neat/_utils/xml_.py,sha256=FQkq84u35MUsnKcL6nTMJ9ajtG9D5i1u4VBnhGqP2DQ,1710
|
|
247
|
-
cognite/neat/_version.py,sha256=
|
|
239
|
+
cognite/neat/_version.py,sha256=eh_DxNC2vregq7YQ4Xva_dCIhx2cQZZzwj9dWC8c9Ro,46
|
|
248
240
|
cognite/neat/_workflows/__init__.py,sha256=S0fZq7kvoqDKodHu1UIPsqcpdvXoefUWRPt1lqeQkQs,420
|
|
249
241
|
cognite/neat/_workflows/base.py,sha256=O1pcmfbme2gIVF2eOGrKZSUDmhZc8L9rI8UfvLN2YAM,26839
|
|
250
242
|
cognite/neat/_workflows/cdf_store.py,sha256=3pebnATPo6In4-1srpa3wzstynTOi3T6hwFX5uaie4c,18050
|
|
@@ -262,9 +254,9 @@ cognite/neat/_workflows/steps/lib/current/__init__.py,sha256=c22IznGdCSNCpXCi_yo
|
|
|
262
254
|
cognite/neat/_workflows/steps/lib/current/graph_extractor.py,sha256=iQsEs3a8pYISFqlP7lTMnPxz8Zic5Ep7CwB38jkRaJY,3711
|
|
263
255
|
cognite/neat/_workflows/steps/lib/current/graph_loader.py,sha256=EItu0wh-b-AFyn7iRhdThLjJ2NvHYBv3hY3x2w5sCqg,1693
|
|
264
256
|
cognite/neat/_workflows/steps/lib/current/graph_store.py,sha256=Fbd3Fb4K2QML_if46SLldikvBJUPJ2VUAG2Bzqcq-Qc,1586
|
|
265
|
-
cognite/neat/_workflows/steps/lib/current/rules_exporter.py,sha256=
|
|
266
|
-
cognite/neat/_workflows/steps/lib/current/rules_importer.py,sha256=
|
|
267
|
-
cognite/neat/_workflows/steps/lib/current/rules_validator.py,sha256=
|
|
257
|
+
cognite/neat/_workflows/steps/lib/current/rules_exporter.py,sha256=kiF7bSjmdA0ZfmtPgKt_qYGwX013cX51hP0yj3q4M-c,21934
|
|
258
|
+
cognite/neat/_workflows/steps/lib/current/rules_importer.py,sha256=pcFJYguOcwF-9p_odTkIJrgjuNjQmoYzn5MHP-gsL_Y,17280
|
|
259
|
+
cognite/neat/_workflows/steps/lib/current/rules_validator.py,sha256=yTQnjWuDQpL8TjhqBnHVkqS7TduZ5vVfzmzHiXy9gPA,4665
|
|
268
260
|
cognite/neat/_workflows/steps/lib/io/__init__.py,sha256=k7IPbIq3ey19oRc5sA_15F99-O6dxzqbm1LihGRRo5A,32
|
|
269
261
|
cognite/neat/_workflows/steps/lib/io/io_steps.py,sha256=EZWqM_0hkfzCVnUxzHPNLIdvkqT6NUKDaZsrD_Z2jpU,16934
|
|
270
262
|
cognite/neat/_workflows/steps/step_model.py,sha256=XyKk3j8Q4Y4E9E9rai-LbEelQPlrhyzsDWzzzruoxOM,2946
|
|
@@ -273,8 +265,8 @@ cognite/neat/_workflows/tasks.py,sha256=dr2xuIb8P5e5e9p_fjzRlvDbKsre2xGYrkc3wnRx
|
|
|
273
265
|
cognite/neat/_workflows/triggers.py,sha256=u69xOsaTtM8_WD6ZeIIBB-XKwvlZmPHAsZQh_TnyHcM,7073
|
|
274
266
|
cognite/neat/_workflows/utils.py,sha256=gKdy3RLG7ctRhbCRwaDIWpL9Mi98zm56-d4jfHDqP1E,453
|
|
275
267
|
cognite/neat/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
276
|
-
cognite_neat-0.
|
|
277
|
-
cognite_neat-0.
|
|
278
|
-
cognite_neat-0.
|
|
279
|
-
cognite_neat-0.
|
|
280
|
-
cognite_neat-0.
|
|
268
|
+
cognite_neat-0.100.0.dist-info/LICENSE,sha256=W8VmvFia4WHa3Gqxq1Ygrq85McUNqIGDVgtdvzT-XqA,11351
|
|
269
|
+
cognite_neat-0.100.0.dist-info/METADATA,sha256=AjYvxb6mNdDWqksrQB8VxU32DVzWV-Hth9obwsZL6gU,9699
|
|
270
|
+
cognite_neat-0.100.0.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
|
271
|
+
cognite_neat-0.100.0.dist-info/entry_points.txt,sha256=SsQlnl8SNMSSjE3acBI835JYFtsIinLSbVmHmMEXv6E,51
|
|
272
|
+
cognite_neat-0.100.0.dist-info/RECORD,,
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
from typing import cast
|
|
2
|
-
|
|
3
|
-
from rdflib import Graph
|
|
4
|
-
|
|
5
|
-
from cognite.neat._rules.importers._rdf._shared import (
|
|
6
|
-
clean_up_classes,
|
|
7
|
-
make_classes_compliant,
|
|
8
|
-
parse_raw_classes_dataframe,
|
|
9
|
-
)
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def parse_imf_to_classes(graph: Graph, language: str = "en") -> list[dict]:
|
|
13
|
-
"""Parse IMF elements from RDF-graph and extract classes to pandas dataframe.
|
|
14
|
-
|
|
15
|
-
Args:
|
|
16
|
-
graph: Graph containing imf elements
|
|
17
|
-
language: Language to use for parsing, by default "en"
|
|
18
|
-
|
|
19
|
-
Returns:
|
|
20
|
-
Dataframe containing imf elements
|
|
21
|
-
|
|
22
|
-
!!! note "IMF Compliance"
|
|
23
|
-
The IMF elements are expressed in RDF, primarily using SHACL and OWL. To ensure
|
|
24
|
-
that the resulting classes are compliant with CDF, similar validation checks as
|
|
25
|
-
in the OWL ontology importer are applied.
|
|
26
|
-
|
|
27
|
-
For the IMF-types more of the compliance logic is placed directly in the SPARQL
|
|
28
|
-
query. Among these are the creation of class name not starting with a number,
|
|
29
|
-
and ensuring that all classes have a parent.
|
|
30
|
-
|
|
31
|
-
IMF-attributes are considered both classes and properties. This kind of punning
|
|
32
|
-
is necessary to capture additional information carried by attributes. They carry,
|
|
33
|
-
among other things, a set of relationsships to reference terms, units of measure,
|
|
34
|
-
and qualifiers that together make up the meaning of the attribute.
|
|
35
|
-
"""
|
|
36
|
-
|
|
37
|
-
query = """
|
|
38
|
-
SELECT ?class ?name ?description ?parentClass
|
|
39
|
-
WHERE {
|
|
40
|
-
# Finding IMF - elements
|
|
41
|
-
VALUES ?type { imf:BlockType imf:TerminalType imf:AttributeType }
|
|
42
|
-
?imfClass a ?type .
|
|
43
|
-
OPTIONAL {?imfClass rdfs:subClassOf ?parent }.
|
|
44
|
-
OPTIONAL {?imfClass rdfs:label | skos:prefLabel ?name }.
|
|
45
|
-
|
|
46
|
-
# Note: Bug in PCA has lead to the use non-existing term skos:description. This will be replaced
|
|
47
|
-
# with the correct skos:definition in the near future, so both terms are included here.
|
|
48
|
-
OPTIONAL {?imfClass rdfs:comment | skos:definition | skos:description ?description} .
|
|
49
|
-
|
|
50
|
-
# Finding the last segment of the class IRI
|
|
51
|
-
BIND(STR(?imfClass) AS ?classString)
|
|
52
|
-
BIND(REPLACE(?classString, "^.*[/#]([^/#]*)$", "$1") AS ?tempSegment)
|
|
53
|
-
BIND(REPLACE(?tempSegment, "-", "_") AS ?classSegment)
|
|
54
|
-
BIND(IF(CONTAINS(?classString, "imf/"), CONCAT("IMF_", ?classSegment) , ?classSegment) AS ?class)
|
|
55
|
-
|
|
56
|
-
# Add imf:Attribute as parent class
|
|
57
|
-
BIND(IF(!bound(?parent) && ?type = imf:AttributeType, imf:Attribute, ?parent) AS ?parentClass)
|
|
58
|
-
|
|
59
|
-
# Rebind the IRI of the IMF-type to the ?reference variable to align with dataframe column headers
|
|
60
|
-
# This is solely for readability, the ?imfClass could have been returned directly instead of ?reference
|
|
61
|
-
BIND(?imfClass AS ?reference)
|
|
62
|
-
|
|
63
|
-
FILTER (!isBlank(?class))
|
|
64
|
-
FILTER (!bound(?parentClass) || !isBlank(?parentClass))
|
|
65
|
-
FILTER (!bound(?name) || LANG(?name) = "" || LANGMATCHES(LANG(?name), "en"))
|
|
66
|
-
FILTER (!bound(?description) || LANG(?description) = "" || LANGMATCHES(LANG(?description), "en"))
|
|
67
|
-
}
|
|
68
|
-
"""
|
|
69
|
-
|
|
70
|
-
# create raw dataframe
|
|
71
|
-
raw_df = parse_raw_classes_dataframe(cast(list[tuple], list(graph.query(query.replace("en", language)))))
|
|
72
|
-
if raw_df.empty:
|
|
73
|
-
return []
|
|
74
|
-
|
|
75
|
-
# group values and clean up
|
|
76
|
-
processed_df = clean_up_classes(raw_df)
|
|
77
|
-
|
|
78
|
-
# make compliant
|
|
79
|
-
processed_df = make_classes_compliant(processed_df, importer="IMF")
|
|
80
|
-
|
|
81
|
-
# Make Parent Class list elements into string joined with comma
|
|
82
|
-
processed_df["Implements"] = processed_df["Implements"].apply(
|
|
83
|
-
lambda x: ", ".join(x) if isinstance(x, list) and x else None
|
|
84
|
-
)
|
|
85
|
-
|
|
86
|
-
return processed_df.dropna(axis=0, how="all").replace(float("nan"), None).to_dict(orient="records")
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
from cognite.neat._rules.importers._rdf._shared import make_metadata_compliant
|
|
2
|
-
from cognite.neat._rules.models import RoleTypes
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
def parse_imf_metadata(space: str = "pcaimf") -> dict:
|
|
6
|
-
"""Provide hardcoded IMF metadata to dict.
|
|
7
|
-
|
|
8
|
-
Returns:
|
|
9
|
-
Dictionary containing IMF metadata
|
|
10
|
-
|
|
11
|
-
!!! note "Compliant IMF metadata"
|
|
12
|
-
The current RDF provide IMF types as SHACL, but there are not any metadata describing
|
|
13
|
-
the actual content.
|
|
14
|
-
|
|
15
|
-
"""
|
|
16
|
-
|
|
17
|
-
raw_metadata = {
|
|
18
|
-
"role": RoleTypes.information,
|
|
19
|
-
"space": space,
|
|
20
|
-
"external_id": "imf_types",
|
|
21
|
-
"version": None,
|
|
22
|
-
"created": None,
|
|
23
|
-
"updated": None,
|
|
24
|
-
"name": "IMF Types",
|
|
25
|
-
"description": "IMF - types",
|
|
26
|
-
"creator": None,
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
return make_metadata_compliant(raw_metadata)
|
|
@@ -1,130 +0,0 @@
|
|
|
1
|
-
from typing import cast
|
|
2
|
-
|
|
3
|
-
from rdflib import Graph
|
|
4
|
-
|
|
5
|
-
from cognite.neat._rules.importers._rdf._shared import (
|
|
6
|
-
clean_up_properties,
|
|
7
|
-
make_properties_compliant,
|
|
8
|
-
parse_raw_properties_dataframe,
|
|
9
|
-
)
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def parse_imf_to_properties(graph: Graph, language: str = "en") -> list[dict]:
|
|
13
|
-
"""Parse IMF elements from RDF-graph and extract properties to pandas dataframe.
|
|
14
|
-
|
|
15
|
-
Args:
|
|
16
|
-
graph: Graph containing imf elements
|
|
17
|
-
language: Language to use for parsing, by default "en"
|
|
18
|
-
|
|
19
|
-
Returns:
|
|
20
|
-
List of dictionaries containing properties extracted from IMF elements
|
|
21
|
-
|
|
22
|
-
!!! note "IMF Compliance"
|
|
23
|
-
The IMF elements are expressed in RDF, primarily using SHACL and OWL. To ensure
|
|
24
|
-
that the resulting properties are compliant with CDF, similar validation checks
|
|
25
|
-
as in the OWL ontology importer are applied.
|
|
26
|
-
|
|
27
|
-
For the IMF-types more of the compliance logic is placed directly in the SPARQL
|
|
28
|
-
query. Among these are the creation of class and property names not starting
|
|
29
|
-
with a number, ensuring property types as well as default cardinality boundraries.
|
|
30
|
-
|
|
31
|
-
IMF-attributes are considered both classes and properties. This kind of punning
|
|
32
|
-
is necessary to capture additional information carried by attributes. They carry,
|
|
33
|
-
among other things, a set of relationsships to reference terms, units of measure,
|
|
34
|
-
and qualifiers that together make up the meaning of the attribute. These references
|
|
35
|
-
are listed as additional properties with default values.
|
|
36
|
-
"""
|
|
37
|
-
|
|
38
|
-
query = """
|
|
39
|
-
SELECT DISTINCT ?class ?property ?name ?description ?valueType ?minCount ?maxCount ?default ?propertyType
|
|
40
|
-
WHERE
|
|
41
|
-
{
|
|
42
|
-
# Finding IMF-blocks and terminals
|
|
43
|
-
{
|
|
44
|
-
VALUES ?classType { imf:BlockType imf:TerminalType }
|
|
45
|
-
?imfClass a ?classType ;
|
|
46
|
-
sh:property ?propertyShape .
|
|
47
|
-
?propertyShape sh:path ?imfProperty .
|
|
48
|
-
|
|
49
|
-
OPTIONAL { ?imfProperty skos:prefLabel ?name . }
|
|
50
|
-
OPTIONAL { ?imfProperty skos:definition | skos:description ?description . }
|
|
51
|
-
OPTIONAL { ?imfProperty rdfs:range ?range . }
|
|
52
|
-
OPTIONAL { ?imfProperty a ?type . }
|
|
53
|
-
OPTIONAL { ?propertyShape sh:minCount ?minCardinality} .
|
|
54
|
-
OPTIONAL { ?propertyShape sh:maxCount ?maxCardinality} .
|
|
55
|
-
OPTIONAL { ?propertyShape sh:hasValue ?defualt . }
|
|
56
|
-
OPTIONAL { ?propertyShape sh:class | sh:qualifiedValueShape/sh:class ?valueShape .}
|
|
57
|
-
}
|
|
58
|
-
UNION
|
|
59
|
-
# Finding the IMF-attribute types
|
|
60
|
-
{
|
|
61
|
-
?imfClass a imf:AttributeType ;
|
|
62
|
-
?imfProperty ?default .
|
|
63
|
-
|
|
64
|
-
# The following information is used to describe the attribute when it is connected to a block or a terminal
|
|
65
|
-
# and not duplicated here.
|
|
66
|
-
# Note: Bug in PCA has lead to the use non-existing term skos:description. This will be replaced
|
|
67
|
-
# with the correct skos:definition in the near future, so both terms are included here.
|
|
68
|
-
FILTER(?imfProperty != rdf:type && ?imfProperty != skos:prefLabel &&
|
|
69
|
-
?imfProperty != skos:defintion && ?imfProperty != skos:description)
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
# Finding the last segment of the class IRI
|
|
73
|
-
BIND(STR(?imfClass) AS ?classString)
|
|
74
|
-
BIND(REPLACE(?classString, "^.*[/#]([^/#]*)$", "$1") AS ?tempClassSegment)
|
|
75
|
-
BIND(REPLACE(?tempClassSegment, "-", "_") AS ?classSegment)
|
|
76
|
-
BIND(IF(CONTAINS(?classString, "imf/"), CONCAT("IMF_", ?classSegment) , ?classSegment) AS ?class)
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
# Finding the last segment of the property IRI
|
|
80
|
-
BIND(STR(?imfProperty) AS ?propertyString)
|
|
81
|
-
BIND(REPLACE(?propertyString, "^.*[/#]([^/#]*)$", "$1") AS ?tempPropertySegment)
|
|
82
|
-
BIND(REPLACE(?tempPropertySegment, "-", "_") AS ?propertySegment)
|
|
83
|
-
BIND(IF(CONTAINS(?propertyString, "imf/"), CONCAT("IMF_", ?propertySegment) , ?propertySegment) AS ?property)
|
|
84
|
-
|
|
85
|
-
# Set the value type for the property based on sh:class, sh:qualifiedValueType or rdfs:range
|
|
86
|
-
BIND(IF(BOUND(?valueShape), ?valueShape, IF(BOUND(?range) , ?range , ?valueShape)) AS ?valueIriType)
|
|
87
|
-
|
|
88
|
-
# Finding the last segment of value types
|
|
89
|
-
BIND(STR(?valueIriType) AS ?valueTypeString)
|
|
90
|
-
BIND(REPLACE(?valueTypeString, "^.*[/#]([^/#]*)$", "$1") AS ?tempValueTypeSegment)
|
|
91
|
-
BIND(REPLACE(?tempValueTypeSegment, "-", "_") AS ?valueTypeSegment)
|
|
92
|
-
BIND(IF(CONTAINS(?valueTypeString, "imf/"), CONCAT("IMF_", ?valueTypeSegment) , ?valueTypeSegment)
|
|
93
|
-
AS ?valueType)
|
|
94
|
-
|
|
95
|
-
# Helper variable to set owl datatype- or object-property if this is not already set.
|
|
96
|
-
BIND(IF( EXISTS {?imfProperty a ?tempPropertyType . FILTER(?tempPropertyType = owl:DatatypeProperty) },
|
|
97
|
-
owl:DatatypeProperty,
|
|
98
|
-
owl:ObjectProperty
|
|
99
|
-
)
|
|
100
|
-
AS ?propertyType)
|
|
101
|
-
|
|
102
|
-
# Assert cardinality values if they do not exist
|
|
103
|
-
BIND(IF(BOUND(?minCardinality), ?minCardinality, 0) AS ?minCount)
|
|
104
|
-
BIND(IF(BOUND(?maxCardinality), ?maxCardinality, 1) AS ?maxCount)
|
|
105
|
-
|
|
106
|
-
# Rebind the IRI of the IMF-attribute to the ?reference variable to align with dataframe column headers
|
|
107
|
-
# This is solely for readability, the ?imfClass could have been returnered directly instead of ?reference
|
|
108
|
-
BIND(?imfProperty AS ?reference)
|
|
109
|
-
|
|
110
|
-
FILTER (!isBlank(?property))
|
|
111
|
-
FILTER (!bound(?class) || !isBlank(?class))
|
|
112
|
-
FILTER (!bound(?name) || LANG(?name) = "" || LANGMATCHES(LANG(?name), "en"))
|
|
113
|
-
FILTER (!bound(?description) || LANG(?description) = "" || LANGMATCHES(LANG(?description), "en"))
|
|
114
|
-
}
|
|
115
|
-
"""
|
|
116
|
-
|
|
117
|
-
raw_df = parse_raw_properties_dataframe(cast(list[tuple], list(graph.query(query.replace("en", language)))))
|
|
118
|
-
if raw_df.empty:
|
|
119
|
-
return []
|
|
120
|
-
|
|
121
|
-
# group values and clean up
|
|
122
|
-
processed_df = clean_up_properties(raw_df)
|
|
123
|
-
|
|
124
|
-
# make compliant
|
|
125
|
-
processed_df = make_properties_compliant(processed_df, importer="IMF")
|
|
126
|
-
|
|
127
|
-
# drop column _property_type, which was a helper column:
|
|
128
|
-
processed_df.drop(columns=["_property_type"], inplace=True)
|
|
129
|
-
|
|
130
|
-
return processed_df.to_dict(orient="records")
|