dsp-tools 0.9.13__py3-none-any.whl → 18.3.0.post13__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.
Files changed (348) hide show
  1. dsp_tools/__init__.py +5 -0
  2. dsp_tools/cli/args.py +47 -0
  3. dsp_tools/cli/call_action.py +85 -0
  4. dsp_tools/cli/call_action_files_only.py +101 -0
  5. dsp_tools/cli/call_action_with_network.py +207 -0
  6. dsp_tools/cli/create_parsers.py +479 -0
  7. dsp_tools/cli/entry_point.py +322 -0
  8. dsp_tools/cli/utils.py +87 -0
  9. dsp_tools/clients/CLAUDE.md +420 -0
  10. dsp_tools/clients/authentication_client.py +14 -0
  11. dsp_tools/clients/authentication_client_live.py +66 -0
  12. dsp_tools/clients/connection.py +35 -0
  13. dsp_tools/clients/connection_live.py +233 -0
  14. dsp_tools/clients/fuseki_metrics.py +60 -0
  15. dsp_tools/clients/group_user_clients.py +35 -0
  16. dsp_tools/clients/group_user_clients_live.py +181 -0
  17. dsp_tools/clients/legal_info_client.py +23 -0
  18. dsp_tools/clients/legal_info_client_live.py +132 -0
  19. dsp_tools/clients/list_client.py +49 -0
  20. dsp_tools/clients/list_client_live.py +166 -0
  21. dsp_tools/clients/metadata_client.py +24 -0
  22. dsp_tools/clients/metadata_client_live.py +47 -0
  23. dsp_tools/clients/ontology_clients.py +49 -0
  24. dsp_tools/clients/ontology_create_client_live.py +166 -0
  25. dsp_tools/clients/ontology_get_client_live.py +80 -0
  26. dsp_tools/clients/permissions_client.py +68 -0
  27. dsp_tools/clients/project_client.py +16 -0
  28. dsp_tools/clients/project_client_live.py +66 -0
  29. dsp_tools/commands/create/communicate_problems.py +24 -0
  30. dsp_tools/commands/create/create.py +134 -0
  31. dsp_tools/commands/create/create_on_server/cardinalities.py +111 -0
  32. dsp_tools/commands/create/create_on_server/classes.py +99 -0
  33. dsp_tools/commands/create/create_on_server/complete_ontologies.py +116 -0
  34. dsp_tools/commands/create/create_on_server/default_permissions.py +134 -0
  35. dsp_tools/commands/create/create_on_server/group_users.py +165 -0
  36. dsp_tools/commands/create/create_on_server/lists.py +163 -0
  37. dsp_tools/commands/create/create_on_server/mappers.py +12 -0
  38. dsp_tools/commands/create/create_on_server/onto_utils.py +74 -0
  39. dsp_tools/commands/create/create_on_server/ontology.py +52 -0
  40. dsp_tools/commands/create/create_on_server/project.py +68 -0
  41. dsp_tools/commands/create/create_on_server/properties.py +119 -0
  42. dsp_tools/commands/create/exceptions.py +29 -0
  43. dsp_tools/commands/create/lists_only.py +66 -0
  44. dsp_tools/commands/create/models/create_problems.py +87 -0
  45. dsp_tools/commands/create/models/parsed_ontology.py +88 -0
  46. dsp_tools/commands/create/models/parsed_project.py +81 -0
  47. dsp_tools/commands/create/models/rdf_ontology.py +12 -0
  48. dsp_tools/commands/create/models/server_project_info.py +100 -0
  49. dsp_tools/commands/create/parsing/parse_lists.py +45 -0
  50. dsp_tools/commands/create/parsing/parse_ontology.py +243 -0
  51. dsp_tools/commands/create/parsing/parse_project.py +149 -0
  52. dsp_tools/commands/create/parsing/parsing_utils.py +40 -0
  53. dsp_tools/commands/create/project_validate.py +595 -0
  54. dsp_tools/commands/create/serialisation/ontology.py +119 -0
  55. dsp_tools/commands/create/serialisation/project.py +44 -0
  56. dsp_tools/commands/excel2json/CLAUDE.md +101 -0
  57. dsp_tools/commands/excel2json/json_header.py +321 -0
  58. dsp_tools/commands/excel2json/lists/__init__.py +0 -0
  59. dsp_tools/commands/excel2json/lists/compliance_checks.py +292 -0
  60. dsp_tools/commands/excel2json/lists/make_lists.py +247 -0
  61. dsp_tools/commands/excel2json/lists/models/__init__.py +0 -0
  62. dsp_tools/commands/excel2json/lists/models/deserialise.py +30 -0
  63. dsp_tools/commands/excel2json/lists/models/input_error.py +216 -0
  64. dsp_tools/commands/excel2json/lists/models/serialise.py +57 -0
  65. dsp_tools/commands/excel2json/lists/utils.py +81 -0
  66. dsp_tools/commands/excel2json/models/__init__.py +0 -0
  67. dsp_tools/commands/excel2json/models/input_error.py +416 -0
  68. dsp_tools/commands/excel2json/models/json_header.py +175 -0
  69. dsp_tools/commands/excel2json/models/list_node_name.py +16 -0
  70. dsp_tools/commands/excel2json/models/ontology.py +76 -0
  71. dsp_tools/commands/excel2json/old_lists.py +328 -0
  72. dsp_tools/commands/excel2json/project.py +280 -0
  73. dsp_tools/commands/excel2json/properties.py +370 -0
  74. dsp_tools/commands/excel2json/resources.py +336 -0
  75. dsp_tools/commands/excel2json/utils.py +352 -0
  76. dsp_tools/commands/excel2xml/__init__.py +7 -0
  77. dsp_tools/commands/excel2xml/excel2xml_cli.py +523 -0
  78. dsp_tools/commands/excel2xml/excel2xml_lib.py +1953 -0
  79. dsp_tools/commands/excel2xml/propertyelement.py +47 -0
  80. dsp_tools/commands/get/__init__.py +0 -0
  81. dsp_tools/commands/get/get.py +166 -0
  82. dsp_tools/commands/get/get_permissions.py +257 -0
  83. dsp_tools/commands/get/get_permissions_legacy.py +89 -0
  84. dsp_tools/commands/get/legacy_models/__init__.py +0 -0
  85. dsp_tools/commands/get/legacy_models/context.py +318 -0
  86. dsp_tools/commands/get/legacy_models/group.py +241 -0
  87. dsp_tools/commands/get/legacy_models/helpers.py +47 -0
  88. dsp_tools/commands/get/legacy_models/listnode.py +390 -0
  89. dsp_tools/commands/get/legacy_models/model.py +12 -0
  90. dsp_tools/commands/get/legacy_models/ontology.py +324 -0
  91. dsp_tools/commands/get/legacy_models/project.py +366 -0
  92. dsp_tools/commands/get/legacy_models/propertyclass.py +417 -0
  93. dsp_tools/commands/get/legacy_models/resourceclass.py +676 -0
  94. dsp_tools/commands/get/legacy_models/user.py +438 -0
  95. dsp_tools/commands/get/models/__init__.py +0 -0
  96. dsp_tools/commands/get/models/permissions_models.py +10 -0
  97. dsp_tools/commands/id2iri.py +258 -0
  98. dsp_tools/commands/ingest_xmlupload/__init__.py +0 -0
  99. dsp_tools/commands/ingest_xmlupload/bulk_ingest_client.py +178 -0
  100. dsp_tools/commands/ingest_xmlupload/create_resources/__init__.py +0 -0
  101. dsp_tools/commands/ingest_xmlupload/create_resources/apply_ingest_id.py +69 -0
  102. dsp_tools/commands/ingest_xmlupload/create_resources/upload_xml.py +166 -0
  103. dsp_tools/commands/ingest_xmlupload/create_resources/user_information.py +121 -0
  104. dsp_tools/commands/ingest_xmlupload/ingest_files/__init__.py +0 -0
  105. dsp_tools/commands/ingest_xmlupload/ingest_files/ingest_files.py +64 -0
  106. dsp_tools/commands/ingest_xmlupload/upload_files/__init__.py +0 -0
  107. dsp_tools/commands/ingest_xmlupload/upload_files/filechecker.py +20 -0
  108. dsp_tools/commands/ingest_xmlupload/upload_files/input_error.py +57 -0
  109. dsp_tools/commands/ingest_xmlupload/upload_files/upload_failures.py +66 -0
  110. dsp_tools/commands/ingest_xmlupload/upload_files/upload_files.py +67 -0
  111. dsp_tools/commands/resume_xmlupload/__init__.py +0 -0
  112. dsp_tools/commands/resume_xmlupload/resume_xmlupload.py +96 -0
  113. dsp_tools/commands/start_stack.py +428 -0
  114. dsp_tools/commands/update_legal/CLAUDE.md +344 -0
  115. dsp_tools/commands/update_legal/__init__.py +0 -0
  116. dsp_tools/commands/update_legal/core.py +182 -0
  117. dsp_tools/commands/update_legal/csv_operations.py +135 -0
  118. dsp_tools/commands/update_legal/models.py +87 -0
  119. dsp_tools/commands/update_legal/xml_operations.py +247 -0
  120. dsp_tools/commands/validate_data/CLAUDE.md +159 -0
  121. dsp_tools/commands/validate_data/__init__.py +0 -0
  122. dsp_tools/commands/validate_data/constants.py +59 -0
  123. dsp_tools/commands/validate_data/mappers.py +143 -0
  124. dsp_tools/commands/validate_data/models/__init__.py +0 -0
  125. dsp_tools/commands/validate_data/models/api_responses.py +45 -0
  126. dsp_tools/commands/validate_data/models/input_problems.py +119 -0
  127. dsp_tools/commands/validate_data/models/rdf_like_data.py +117 -0
  128. dsp_tools/commands/validate_data/models/validation.py +106 -0
  129. dsp_tools/commands/validate_data/prepare_data/__init__.py +0 -0
  130. dsp_tools/commands/validate_data/prepare_data/get_rdf_like_data.py +296 -0
  131. dsp_tools/commands/validate_data/prepare_data/make_data_graph.py +91 -0
  132. dsp_tools/commands/validate_data/prepare_data/prepare_data.py +184 -0
  133. dsp_tools/commands/validate_data/process_validation_report/__init__.py +0 -0
  134. dsp_tools/commands/validate_data/process_validation_report/get_user_validation_message.py +358 -0
  135. dsp_tools/commands/validate_data/process_validation_report/query_validation_result.py +507 -0
  136. dsp_tools/commands/validate_data/process_validation_report/reformat_validation_results.py +150 -0
  137. dsp_tools/commands/validate_data/shacl_cli_validator.py +70 -0
  138. dsp_tools/commands/validate_data/sparql/__init__.py +0 -0
  139. dsp_tools/commands/validate_data/sparql/cardinality_shacl.py +209 -0
  140. dsp_tools/commands/validate_data/sparql/construct_shacl.py +92 -0
  141. dsp_tools/commands/validate_data/sparql/legal_info_shacl.py +36 -0
  142. dsp_tools/commands/validate_data/sparql/value_shacl.py +357 -0
  143. dsp_tools/commands/validate_data/utils.py +59 -0
  144. dsp_tools/commands/validate_data/validate_data.py +283 -0
  145. dsp_tools/commands/validate_data/validation/__init__.py +0 -0
  146. dsp_tools/commands/validate_data/validation/check_duplicate_files.py +55 -0
  147. dsp_tools/commands/validate_data/validation/check_for_unknown_classes.py +67 -0
  148. dsp_tools/commands/validate_data/validation/get_validation_report.py +94 -0
  149. dsp_tools/commands/validate_data/validation/validate_ontology.py +107 -0
  150. dsp_tools/commands/xmlupload/CLAUDE.md +292 -0
  151. dsp_tools/commands/xmlupload/__init__.py +0 -0
  152. dsp_tools/commands/xmlupload/iri_resolver.py +21 -0
  153. dsp_tools/commands/xmlupload/make_rdf_graph/__init__.py +0 -0
  154. dsp_tools/commands/xmlupload/make_rdf_graph/constants.py +63 -0
  155. dsp_tools/commands/xmlupload/make_rdf_graph/jsonld_utils.py +44 -0
  156. dsp_tools/commands/xmlupload/make_rdf_graph/make_file_value.py +77 -0
  157. dsp_tools/commands/xmlupload/make_rdf_graph/make_resource_and_values.py +114 -0
  158. dsp_tools/commands/xmlupload/make_rdf_graph/make_values.py +262 -0
  159. dsp_tools/commands/xmlupload/models/__init__.py +0 -0
  160. dsp_tools/commands/xmlupload/models/bitstream_info.py +18 -0
  161. dsp_tools/commands/xmlupload/models/formatted_text_value.py +10 -0
  162. dsp_tools/commands/xmlupload/models/ingest.py +143 -0
  163. dsp_tools/commands/xmlupload/models/input_problems.py +58 -0
  164. dsp_tools/commands/xmlupload/models/lookup_models.py +21 -0
  165. dsp_tools/commands/xmlupload/models/permission.py +45 -0
  166. dsp_tools/commands/xmlupload/models/permissions_parsed.py +93 -0
  167. dsp_tools/commands/xmlupload/models/processed/__init__.py +0 -0
  168. dsp_tools/commands/xmlupload/models/processed/file_values.py +29 -0
  169. dsp_tools/commands/xmlupload/models/processed/res.py +27 -0
  170. dsp_tools/commands/xmlupload/models/processed/values.py +101 -0
  171. dsp_tools/commands/xmlupload/models/rdf_models.py +26 -0
  172. dsp_tools/commands/xmlupload/models/upload_clients.py +14 -0
  173. dsp_tools/commands/xmlupload/models/upload_state.py +20 -0
  174. dsp_tools/commands/xmlupload/prepare_xml_input/__init__.py +0 -0
  175. dsp_tools/commands/xmlupload/prepare_xml_input/ark2iri.py +55 -0
  176. dsp_tools/commands/xmlupload/prepare_xml_input/get_processed_resources.py +252 -0
  177. dsp_tools/commands/xmlupload/prepare_xml_input/iiif_uri_validator.py +50 -0
  178. dsp_tools/commands/xmlupload/prepare_xml_input/list_client.py +120 -0
  179. dsp_tools/commands/xmlupload/prepare_xml_input/prepare_xml_input.py +67 -0
  180. dsp_tools/commands/xmlupload/prepare_xml_input/read_validate_xml_file.py +58 -0
  181. dsp_tools/commands/xmlupload/prepare_xml_input/transform_input_values.py +118 -0
  182. dsp_tools/commands/xmlupload/resource_create_client.py +25 -0
  183. dsp_tools/commands/xmlupload/richtext_id2iri.py +37 -0
  184. dsp_tools/commands/xmlupload/stash/__init__.py +0 -0
  185. dsp_tools/commands/xmlupload/stash/analyse_circular_reference_graph.py +236 -0
  186. dsp_tools/commands/xmlupload/stash/create_info_for_graph.py +53 -0
  187. dsp_tools/commands/xmlupload/stash/graph_models.py +87 -0
  188. dsp_tools/commands/xmlupload/stash/stash_circular_references.py +68 -0
  189. dsp_tools/commands/xmlupload/stash/stash_models.py +109 -0
  190. dsp_tools/commands/xmlupload/stash/upload_stashed_resptr_props.py +106 -0
  191. dsp_tools/commands/xmlupload/stash/upload_stashed_xml_texts.py +196 -0
  192. dsp_tools/commands/xmlupload/upload_config.py +76 -0
  193. dsp_tools/commands/xmlupload/write_diagnostic_info.py +27 -0
  194. dsp_tools/commands/xmlupload/xmlupload.py +516 -0
  195. dsp_tools/config/__init__.py +0 -0
  196. dsp_tools/config/logger_config.py +69 -0
  197. dsp_tools/config/warnings_config.py +32 -0
  198. dsp_tools/error/__init__.py +0 -0
  199. dsp_tools/error/custom_warnings.py +39 -0
  200. dsp_tools/error/exceptions.py +204 -0
  201. dsp_tools/error/problems.py +10 -0
  202. dsp_tools/error/xmllib_errors.py +20 -0
  203. dsp_tools/error/xmllib_warnings.py +54 -0
  204. dsp_tools/error/xmllib_warnings_util.py +159 -0
  205. dsp_tools/error/xsd_validation_error_msg.py +19 -0
  206. dsp_tools/legacy_models/__init__.py +0 -0
  207. dsp_tools/legacy_models/datetimestamp.py +81 -0
  208. dsp_tools/legacy_models/langstring.py +253 -0
  209. dsp_tools/legacy_models/projectContext.py +49 -0
  210. dsp_tools/py.typed +0 -0
  211. dsp_tools/resources/schema/data.xsd +648 -0
  212. dsp_tools/resources/schema/lists-only.json +72 -0
  213. dsp_tools/resources/schema/project.json +1258 -0
  214. dsp_tools/resources/schema/properties-only.json +874 -0
  215. dsp_tools/resources/schema/resources-only.json +140 -0
  216. dsp_tools/resources/start-stack/docker-compose.override-host.j2 +11 -0
  217. dsp_tools/resources/start-stack/docker-compose.override.yml +11 -0
  218. dsp_tools/resources/start-stack/docker-compose.yml +88 -0
  219. dsp_tools/resources/start-stack/dsp-app-config.json +45 -0
  220. dsp_tools/resources/start-stack/dsp-app-config.override-host.j2 +26 -0
  221. dsp_tools/resources/validate_data/api-shapes-resource-cardinalities.ttl +191 -0
  222. dsp_tools/resources/validate_data/api-shapes.ttl +804 -0
  223. dsp_tools/resources/validate_data/shacl-cli-image.yml +4 -0
  224. dsp_tools/resources/validate_data/validate-ontology.ttl +99 -0
  225. dsp_tools/utils/__init__.py +0 -0
  226. dsp_tools/utils/ansi_colors.py +32 -0
  227. dsp_tools/utils/data_formats/__init__.py +0 -0
  228. dsp_tools/utils/data_formats/date_util.py +166 -0
  229. dsp_tools/utils/data_formats/iri_util.py +30 -0
  230. dsp_tools/utils/data_formats/shared.py +81 -0
  231. dsp_tools/utils/data_formats/uri_util.py +76 -0
  232. dsp_tools/utils/fuseki_bloating.py +63 -0
  233. dsp_tools/utils/json_parsing.py +22 -0
  234. dsp_tools/utils/rdf_constants.py +42 -0
  235. dsp_tools/utils/rdflib_utils.py +10 -0
  236. dsp_tools/utils/replace_id_with_iri.py +66 -0
  237. dsp_tools/utils/request_utils.py +238 -0
  238. dsp_tools/utils/xml_parsing/__init__.py +0 -0
  239. dsp_tools/utils/xml_parsing/get_lookups.py +32 -0
  240. dsp_tools/utils/xml_parsing/get_parsed_resources.py +325 -0
  241. dsp_tools/utils/xml_parsing/models/__init__.py +0 -0
  242. dsp_tools/utils/xml_parsing/models/parsed_resource.py +76 -0
  243. dsp_tools/utils/xml_parsing/parse_clean_validate_xml.py +137 -0
  244. dsp_tools/xmllib/CLAUDE.md +302 -0
  245. dsp_tools/xmllib/__init__.py +49 -0
  246. dsp_tools/xmllib/general_functions.py +877 -0
  247. dsp_tools/xmllib/internal/__init__.py +0 -0
  248. dsp_tools/xmllib/internal/checkers.py +162 -0
  249. dsp_tools/xmllib/internal/circumvent_circular_imports.py +36 -0
  250. dsp_tools/xmllib/internal/constants.py +46 -0
  251. dsp_tools/xmllib/internal/input_converters.py +155 -0
  252. dsp_tools/xmllib/internal/serialise_file_value.py +57 -0
  253. dsp_tools/xmllib/internal/serialise_resource.py +177 -0
  254. dsp_tools/xmllib/internal/serialise_values.py +152 -0
  255. dsp_tools/xmllib/internal/type_aliases.py +11 -0
  256. dsp_tools/xmllib/models/__init__.py +0 -0
  257. dsp_tools/xmllib/models/config_options.py +28 -0
  258. dsp_tools/xmllib/models/date_formats.py +48 -0
  259. dsp_tools/xmllib/models/dsp_base_resources.py +1542 -0
  260. dsp_tools/xmllib/models/internal/__init__.py +0 -0
  261. dsp_tools/xmllib/models/internal/file_values.py +172 -0
  262. dsp_tools/xmllib/models/internal/geometry.py +162 -0
  263. dsp_tools/xmllib/models/internal/migration_metadata.py +55 -0
  264. dsp_tools/xmllib/models/internal/serialise_permissions.py +66 -0
  265. dsp_tools/xmllib/models/internal/values.py +342 -0
  266. dsp_tools/xmllib/models/licenses/__init__.py +0 -0
  267. dsp_tools/xmllib/models/licenses/other.py +59 -0
  268. dsp_tools/xmllib/models/licenses/recommended.py +107 -0
  269. dsp_tools/xmllib/models/permissions.py +41 -0
  270. dsp_tools/xmllib/models/res.py +1782 -0
  271. dsp_tools/xmllib/models/root.py +348 -0
  272. dsp_tools/xmllib/value_checkers.py +434 -0
  273. dsp_tools/xmllib/value_converters.py +777 -0
  274. dsp_tools-18.3.0.post13.dist-info/METADATA +90 -0
  275. dsp_tools-18.3.0.post13.dist-info/RECORD +286 -0
  276. dsp_tools-18.3.0.post13.dist-info/WHEEL +4 -0
  277. dsp_tools-18.3.0.post13.dist-info/entry_points.txt +3 -0
  278. dsp_tools-0.9.13.dist-info/LICENSE +0 -674
  279. dsp_tools-0.9.13.dist-info/METADATA +0 -144
  280. dsp_tools-0.9.13.dist-info/RECORD +0 -71
  281. dsp_tools-0.9.13.dist-info/WHEEL +0 -5
  282. dsp_tools-0.9.13.dist-info/entry_points.txt +0 -3
  283. dsp_tools-0.9.13.dist-info/top_level.txt +0 -1
  284. dsplib/models/connection.py +0 -272
  285. dsplib/models/group.py +0 -296
  286. dsplib/models/helpers.py +0 -505
  287. dsplib/models/langstring.py +0 -277
  288. dsplib/models/listnode.py +0 -578
  289. dsplib/models/model.py +0 -20
  290. dsplib/models/ontology.py +0 -448
  291. dsplib/models/permission.py +0 -112
  292. dsplib/models/project.py +0 -547
  293. dsplib/models/propertyclass.py +0 -505
  294. dsplib/models/resource.py +0 -366
  295. dsplib/models/resourceclass.py +0 -810
  296. dsplib/models/sipi.py +0 -30
  297. dsplib/models/user.py +0 -731
  298. dsplib/models/value.py +0 -1000
  299. dsplib/utils/knora-data-schema.xsd +0 -454
  300. dsplib/utils/knora-schema-lists.json +0 -83
  301. dsplib/utils/knora-schema.json +0 -434
  302. dsplib/utils/onto_commons.py +0 -24
  303. dsplib/utils/onto_create_lists.py +0 -73
  304. dsplib/utils/onto_create_ontology.py +0 -442
  305. dsplib/utils/onto_get.py +0 -58
  306. dsplib/utils/onto_validate.py +0 -33
  307. dsplib/utils/xml_upload.py +0 -539
  308. dsplib/widgets/doublepassword.py +0 -80
  309. knora/MLS-import-libraries.py +0 -84
  310. knora/dsp_tools.py +0 -96
  311. knora/dsplib/models/connection.py +0 -272
  312. knora/dsplib/models/group.py +0 -296
  313. knora/dsplib/models/helpers.py +0 -506
  314. knora/dsplib/models/langstring.py +0 -277
  315. knora/dsplib/models/listnode.py +0 -578
  316. knora/dsplib/models/model.py +0 -20
  317. knora/dsplib/models/ontology.py +0 -448
  318. knora/dsplib/models/permission.py +0 -112
  319. knora/dsplib/models/project.py +0 -583
  320. knora/dsplib/models/propertyclass.py +0 -505
  321. knora/dsplib/models/resource.py +0 -416
  322. knora/dsplib/models/resourceclass.py +0 -811
  323. knora/dsplib/models/sipi.py +0 -35
  324. knora/dsplib/models/user.py +0 -731
  325. knora/dsplib/models/value.py +0 -1000
  326. knora/dsplib/utils/knora-data-schema.xsd +0 -464
  327. knora/dsplib/utils/knora-schema-lists.json +0 -83
  328. knora/dsplib/utils/knora-schema.json +0 -444
  329. knora/dsplib/utils/onto_commons.py +0 -24
  330. knora/dsplib/utils/onto_create_lists.py +0 -73
  331. knora/dsplib/utils/onto_create_ontology.py +0 -451
  332. knora/dsplib/utils/onto_get.py +0 -58
  333. knora/dsplib/utils/onto_validate.py +0 -33
  334. knora/dsplib/utils/xml_upload.py +0 -540
  335. knora/dsplib/widgets/doublepassword.py +0 -80
  336. knora/knora.py +0 -2108
  337. knora/test.py +0 -99
  338. knora/testit.py +0 -76
  339. knora/xml2knora.py +0 -633
  340. {dsplib → dsp_tools/cli}/__init__.py +0 -0
  341. {dsplib/models → dsp_tools/clients}/__init__.py +0 -0
  342. {dsplib/utils → dsp_tools/commands}/__init__.py +0 -0
  343. {dsplib/widgets → dsp_tools/commands/create}/__init__.py +0 -0
  344. {knora → dsp_tools/commands/create/create_on_server}/__init__.py +0 -0
  345. {knora/dsplib → dsp_tools/commands/create/models}/__init__.py +0 -0
  346. {knora/dsplib/models → dsp_tools/commands/create/parsing}/__init__.py +0 -0
  347. {knora/dsplib/utils → dsp_tools/commands/create/serialisation}/__init__.py +0 -0
  348. {knora/dsplib/widgets → dsp_tools/commands/excel2json}/__init__.py +0 -0
@@ -1,454 +0,0 @@
1
- <?xml version="1.0"?>
2
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
3
- xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" vc:minVersion="1.1">
4
-
5
- <!-- data type for resrefs "ID|ID|..." -->
6
- <xs:simpleType name="resrefs_type">
7
- <xs:restriction base="xs:token">
8
- <xs:pattern value="([^\|]+)(\|[^\|]+)*" />
9
- </xs:restriction>
10
- </xs:simpleType>
11
-
12
- <!-- group type for allow..." -->
13
- <xs:simpleType name="group_types">
14
- <xs:restriction base="xs:token">
15
- <xs:pattern value="(UnknownUser|KnownUser|ProjectMember|Creator|ProjectAdmin|SystemAdmin|([\w-]+):([\w ]+))" />
16
- </xs:restriction>
17
- </xs:simpleType>
18
-
19
- <!-- data type for knora date -->
20
- <xs:simpleType name="knoradate_type">
21
- <xs:restriction base="xs:token">
22
- <xs:pattern value="(GREGORIAN:|JULIAN:)?(CE:|BCE:)?(\d{4})?(-\d{1,2})?(-\d{1,2})?(:CE|:BCE)?(:\d{4})?(-\d{1,2})?(-\d{1,2})?" />
23
- </xs:restriction>
24
- </xs:simpleType>
25
-
26
-
27
- <!-- data type for knora color -->
28
- <xs:simpleType name="knoracolor_type">
29
- <xs:restriction base="xs:token">
30
- <xs:pattern value="#([0-9a-fA-F]{3}){1,2}" />
31
- </xs:restriction>
32
- </xs:simpleType>
33
-
34
- <!-- data type for knora interval -->
35
- <xs:simpleType name="knorainterval_type">
36
- <xs:restriction base="xs:token">
37
- <xs:pattern value="([+-]?([0-9]+([.][0-9]*)?|[.][0-9]+)):([+-]?([0-9]+([.][0-9]*)?|[.][0-9]+))" />
38
- </xs:restriction>
39
- </xs:simpleType>
40
-
41
- <!-- encoding types -->
42
- <xs:simpleType name="encoding_types">
43
- <xs:restriction base="xs:string">
44
- <xs:enumeration value="utf8"/>
45
- <xs:enumeration value="xml"/>
46
- </xs:restriction>
47
- </xs:simpleType>
48
-
49
- <!-- text value type -->
50
- <xs:complexType name="text_type" mixed="true">
51
- <xs:sequence>
52
- <xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
53
- </xs:sequence>
54
- <xs:attribute name="encoding" type="encoding_types" use="required"/>
55
- <xs:attribute name="resrefs" type="resrefs_type"/>
56
- <xs:attribute name="comment" type="xs:string"/>
57
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
58
- </xs:complexType>
59
-
60
- <!-- color value type -->
61
- <xs:complexType name="color_type">
62
- <xs:simpleContent>
63
- <xs:extension base="knoracolor_type">
64
- <xs:attribute name="comment" type="xs:string"/>
65
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
66
- </xs:extension>
67
- </xs:simpleContent>
68
- </xs:complexType>
69
-
70
- <!-- date value type -->
71
- <xs:complexType name="date_type">
72
- <xs:simpleContent>
73
- <xs:extension base="knoradate_type">
74
- <xs:attribute name="comment" type="xs:string"/>
75
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
76
- </xs:extension>
77
- </xs:simpleContent>
78
- </xs:complexType>
79
-
80
- <!-- float value type -->
81
- <xs:complexType name="float_type">
82
- <xs:simpleContent>
83
- <xs:extension base="xs:float">
84
- <xs:attribute name="comment" type="xs:string"/>
85
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
86
- </xs:extension>
87
- </xs:simpleContent>
88
- </xs:complexType>
89
-
90
- <!-- geometry value type -->
91
- <xs:complexType name="geometry_type">
92
- <xs:simpleContent>
93
- <xs:extension base="xs:string">
94
- <xs:attribute name="comment" type="xs:string"/>
95
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
96
- </xs:extension>
97
- </xs:simpleContent>
98
- </xs:complexType>
99
-
100
- <!-- geoname value type -->
101
- <xs:complexType name="geoname_type">
102
- <xs:simpleContent>
103
- <xs:extension base="xs:string">
104
- <xs:attribute name="comment" type="xs:string"/>
105
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
106
- </xs:extension>
107
- </xs:simpleContent>
108
- </xs:complexType>
109
-
110
- <!-- list value type -->
111
- <xs:complexType name="list_type">
112
- <xs:simpleContent>
113
- <xs:extension base="xs:string">
114
- <xs:attribute name="comment" type="xs:string"/>
115
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
116
- </xs:extension>
117
- </xs:simpleContent>
118
- </xs:complexType>
119
-
120
- <!-- iconclass value type -->
121
- <xs:complexType name="iconclass_type">
122
- <xs:simpleContent>
123
- <xs:extension base="xs:string">
124
- <xs:attribute name="comment" type="xs:string"/>
125
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
126
- </xs:extension>
127
- </xs:simpleContent>
128
- </xs:complexType>
129
-
130
- <!-- integer value type -->
131
- <xs:complexType name="integer_type">
132
- <xs:simpleContent>
133
- <xs:extension base="xs:integer">
134
- <xs:attribute name="comment" type="xs:string"/>
135
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
136
- </xs:extension>
137
- </xs:simpleContent>
138
- </xs:complexType>
139
-
140
- <!-- interval value type -->
141
- <xs:complexType name="interval_type">
142
- <xs:simpleContent>
143
- <xs:extension base="knorainterval_type">
144
- <xs:attribute name="comment" type="xs:string"/>
145
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
146
- </xs:extension>
147
- </xs:simpleContent>
148
- </xs:complexType>
149
-
150
- <!-- period value type -->
151
- <xs:complexType name="period_type">
152
- <xs:simpleContent>
153
- <xs:extension base="xs:string">
154
- <xs:attribute name="comment" type="xs:string"/>
155
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
156
- </xs:extension>
157
- </xs:simpleContent>
158
- </xs:complexType>
159
-
160
- <xs:complexType name="resptr_type">
161
- <xs:simpleContent>
162
- <xs:extension base="xs:string">
163
- <xs:attribute name="comment" type="xs:string"/>
164
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
165
- </xs:extension>
166
- </xs:simpleContent>
167
- </xs:complexType>
168
-
169
- <!-- time value type -->
170
- <xs:complexType name="time_type">
171
- <xs:simpleContent>
172
- <xs:extension base="xs:dateTime">
173
- <xs:attribute name="comment" type="xs:string"/>
174
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
175
- </xs:extension>
176
- </xs:simpleContent>
177
- </xs:complexType>
178
-
179
- <!-- decimal value type -->
180
- <xs:complexType name="decimal_type">
181
- <xs:simpleContent>
182
- <xs:extension base="xs:decimal">
183
- <xs:attribute name="comment" type="xs:string"/>
184
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
185
- </xs:extension>
186
- </xs:simpleContent>
187
- </xs:complexType>
188
-
189
- <!-- uri value type -->
190
- <xs:complexType name="uri_type">
191
- <xs:simpleContent>
192
- <xs:extension base="xs:anyURI">
193
- <xs:attribute name="comment" type="xs:string"/>
194
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
195
- </xs:extension>
196
- </xs:simpleContent>
197
- </xs:complexType>
198
-
199
- <!-- boolean value type -->
200
- <xs:complexType name="boolean_type">
201
- <xs:simpleContent>
202
- <xs:extension base="xs:boolean">
203
- <xs:attribute name="comment" type="xs:string"/>
204
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
205
- </xs:extension>
206
- </xs:simpleContent>
207
- </xs:complexType>
208
-
209
- <!-- textprop_type -->
210
- <xs:complexType name="textprop_type">
211
- <xs:sequence>
212
- <xs:element name="text" type="text_type" minOccurs="1" maxOccurs="unbounded"/>
213
- </xs:sequence>
214
- <xs:attribute name="name" type="xs:string" use="required"/>
215
- </xs:complexType>
216
-
217
- <!-- colorprop_type -->
218
- <xs:complexType name="colorprop_type">
219
- <xs:sequence>
220
- <xs:element name="color" type="color_type" minOccurs="1" maxOccurs="unbounded"/>
221
- </xs:sequence>
222
- <xs:attribute name="name" type="xs:string" use="required"/>
223
- </xs:complexType>
224
-
225
- <!-- dateprop_type -->
226
- <xs:complexType name="dateprop_type">
227
- <xs:sequence>
228
- <xs:element name="date" type="date_type" minOccurs="1" maxOccurs="unbounded"/>
229
- </xs:sequence>
230
- <xs:attribute name="name" type="xs:string" use="required"/>
231
- </xs:complexType>
232
-
233
- <!-- floatprop_type -->
234
- <xs:complexType name="floatprop_type">
235
- <xs:sequence>
236
- <xs:element name="float" type="float_type" minOccurs="1" maxOccurs="unbounded"/>
237
- </xs:sequence>
238
- <xs:attribute name="name" type="xs:string" use="required"/>
239
- </xs:complexType>
240
-
241
- <!-- geometryprop_type -->
242
- <xs:complexType name="geometryprop_type">
243
- <xs:sequence>
244
- <xs:element name="geometry" type="geometry_type" minOccurs="1" maxOccurs="unbounded"/>
245
- </xs:sequence>
246
- <xs:attribute name="name" type="xs:string" use="required"/>
247
- </xs:complexType>
248
-
249
- <!-- geonameprop_type -->
250
- <xs:complexType name="geonameprop_type">
251
- <xs:sequence>
252
- <xs:element name="geoname" type="geoname_type" minOccurs="1" maxOccurs="unbounded"/>
253
- </xs:sequence>
254
- <xs:attribute name="name" type="xs:string" use="required"/>
255
- </xs:complexType>
256
-
257
- <!-- listprop_type -->
258
- <xs:complexType name="listprop_type">
259
- <xs:sequence>
260
- <xs:element name="list" type="list_type" minOccurs="1" maxOccurs="unbounded"/>
261
- </xs:sequence>
262
- <xs:attribute name="name" type="xs:string" use="required"/>
263
- <xs:attribute name="list" type="xs:string" use="required"/>
264
- </xs:complexType>
265
-
266
- <!-- iconclassprop_type -->
267
- <xs:complexType name="iconclassprop_type">
268
- <xs:sequence>
269
- <xs:element name="iconclass" type="iconclass_type" minOccurs="1" maxOccurs="unbounded"/>
270
- </xs:sequence>
271
- <xs:attribute name="name" type="xs:string" use="required"/>
272
- </xs:complexType>
273
-
274
- <!-- integerprop_type -->
275
- <xs:complexType name="integerprop_type">
276
- <xs:sequence>
277
- <xs:element name="integer" type="integer_type" minOccurs="1" maxOccurs="unbounded"/>
278
- </xs:sequence>
279
- <xs:attribute name="name" type="xs:string" use="required"/>
280
- </xs:complexType>
281
-
282
- <!-- intervalprop_type -->
283
- <xs:complexType name="intervalprop_type">
284
- <xs:sequence>
285
- <xs:element name="interval" type="interval_type" minOccurs="1" maxOccurs="unbounded"/>
286
- </xs:sequence>
287
- <xs:attribute name="name" type="xs:string" use="required"/>
288
- </xs:complexType>
289
-
290
- <!-- periodprop_type -->
291
- <xs:complexType name="periodprop_type">
292
- <xs:sequence>
293
- <xs:element name="period" type="period_type" minOccurs="1" maxOccurs="unbounded"/>
294
- </xs:sequence>
295
- <xs:attribute name="name" type="xs:string" use="required"/>
296
- </xs:complexType>
297
-
298
- <!-- resptrprop_type -->
299
- <xs:complexType name="resptrprop_type">
300
- <xs:sequence>
301
- <xs:element name="resptr" type="resptr_type" minOccurs="1" maxOccurs="unbounded"/>
302
- </xs:sequence>
303
- <xs:attribute name="name" type="xs:string" use="required"/>
304
- </xs:complexType>
305
-
306
- <!-- timeprop_type -->
307
- <xs:complexType name="timeprop_type">
308
- <xs:sequence>
309
- <xs:element name="time" type="time_type" minOccurs="1" maxOccurs="unbounded"/>
310
- </xs:sequence>
311
- <xs:attribute name="name" type="xs:string" use="required"/>
312
- </xs:complexType>
313
-
314
- <!-- decimalprop_type -->
315
- <xs:complexType name="decimalprop_type">
316
- <xs:sequence>
317
- <xs:element name="decimal" type="decimal_type" minOccurs="1" maxOccurs="unbounded"/>
318
- </xs:sequence>
319
- <xs:attribute name="name" type="xs:string" use="required"/>
320
- </xs:complexType>
321
-
322
- <!-- uriprop_type -->
323
- <xs:complexType name="uriprop_type">
324
- <xs:sequence>
325
- <xs:element name="uri" type="uri_type" minOccurs="1" maxOccurs="unbounded"/>
326
- </xs:sequence>
327
- <xs:attribute name="name" type="xs:string" use="required"/>
328
- </xs:complexType>
329
-
330
- <!-- booleanprop_type -->
331
- <xs:complexType name="booleanprop_type">
332
- <xs:sequence>
333
- <xs:element name="boolean" type="boolean_type" minOccurs="1" maxOccurs="unbounded"/>
334
- </xs:sequence>
335
- <xs:attribute name="name" type="xs:string" use="required"/>
336
- </xs:complexType>
337
-
338
- <!-- image tag -->
339
- <xs:complexType name="image_type">
340
- <xs:simpleContent>
341
- <xs:extension base="xs:string"/>
342
- </xs:simpleContent>
343
- </xs:complexType>
344
-
345
- <!-- sound tag -->
346
- <xs:complexType name="sound_type">
347
- <xs:simpleContent>
348
- <xs:extension base="xs:string"/>
349
- </xs:simpleContent>
350
- </xs:complexType>
351
-
352
- <!-- movie tag -->
353
- <xs:complexType name="movie_type">
354
- <xs:simpleContent>
355
- <xs:extension base="xs:string"/>
356
- </xs:simpleContent>
357
- </xs:complexType>
358
-
359
- <!-- movie tag -->
360
- <xs:complexType name="document_type">
361
- <xs:simpleContent>
362
- <xs:extension base="xs:string"/>
363
- </xs:simpleContent>
364
- </xs:complexType>
365
-
366
- <!-- resource tag -->
367
- <xs:complexType name="resource_type">
368
- <xs:sequence>
369
- <xs:choice minOccurs="0" maxOccurs="1">
370
- <xs:element name="image" type="image_type" />
371
- <xs:element name="sound" type="sound_type" />
372
- <xs:element name="movie" type="sound_type" />
373
- <xs:element name="document" type="sound_type" />
374
- </xs:choice>
375
- <xs:choice maxOccurs="unbounded">
376
- <xs:element name="text-prop" type="textprop_type" minOccurs="0" maxOccurs="unbounded"/>
377
- <xs:element name="color-prop" type="colorprop_type" minOccurs="0" maxOccurs="unbounded"/>
378
- <xs:element name="date-prop" type="dateprop_type" minOccurs="0" maxOccurs="unbounded"/>
379
- <xs:element name="geometry-prop" type="geometryprop_type" minOccurs="0" maxOccurs="unbounded"/>
380
- <xs:element name="geoname-prop" type="geonameprop_type" minOccurs="0" maxOccurs="unbounded"/>
381
- <xs:element name="list-prop" type="listprop_type" minOccurs="0" maxOccurs="unbounded"/>
382
- <xs:element name="iconclass-prop" type="iconclassprop_type" minOccurs="0" maxOccurs="unbounded"/>
383
- <xs:element name="integer-prop" type="integerprop_type" minOccurs="0" maxOccurs="unbounded"/>
384
- <xs:element name="interval-prop" type="intervalprop_type" minOccurs="0" maxOccurs="unbounded"/>
385
- <xs:element name="period-prop" type="periodprop_type" minOccurs="0" maxOccurs="unbounded"/>
386
- <xs:element name="resptr-prop" type="resptrprop_type" minOccurs="0" maxOccurs="unbounded"/>
387
- <xs:element name="time-prop" type="timeprop_type" minOccurs="0" maxOccurs="unbounded"/>
388
- <xs:element name="decimal-prop" type="decimalprop_type" minOccurs="0" maxOccurs="unbounded"/>
389
- <xs:element name="uri-prop" type="uriprop_type" minOccurs="0" maxOccurs="unbounded"/>
390
- <xs:element name="boolean-prop" type="booleanprop_type" minOccurs="0" maxOccurs="unbounded"/>
391
- </xs:choice>
392
-
393
- </xs:sequence>
394
- <xs:attribute name="label" type="xs:string" use="required"/>
395
- <xs:attribute name="restype" type="xs:string" use="required"/>
396
- <xs:attribute name="id" type="xs:ID" use="required"/>
397
- <xs:attribute name="permissions" type="xs:NCName" use="required"></xs:attribute>
398
- </xs:complexType>
399
-
400
- <!-- data type for knora shortcode -->
401
- <xs:simpleType name="knorashortcode_type">
402
- <xs:restriction base="xs:token">
403
- <xs:pattern value="[0-9a-fA-F]{4}" />
404
- </xs:restriction>
405
- </xs:simpleType>
406
-
407
- <!-- data type for valid permissions_type" -->
408
- <xs:simpleType name="valid_permissions_type">
409
- <xs:restriction base="xs:string">
410
- <xs:enumeration value="RV"/>
411
- <xs:enumeration value="V"/>
412
- <xs:enumeration value="M"/>
413
- <xs:enumeration value="D"/>
414
- <xs:enumeration value="CR"/>
415
- </xs:restriction>
416
- </xs:simpleType>
417
-
418
- <!-- allow_type -->
419
- <xs:complexType name="allow_type">
420
- <xs:simpleContent>
421
- <xs:extension base="valid_permissions_type">
422
- <xs:attribute name="group" type="group_types" use="required"/>
423
- </xs:extension>
424
- </xs:simpleContent>
425
- </xs:complexType>
426
-
427
- <!-- permissions tag -->
428
- <xs:complexType name="permissions_type" mixed="true">
429
- <xs:sequence>
430
- <xs:element name="allow" type="allow_type" minOccurs="1" maxOccurs="unbounded"/>
431
- </xs:sequence>
432
- <xs:attribute name="id" type="xs:ID" use="required"/>
433
- </xs:complexType>
434
-
435
- <!-- complete document -->
436
- <xs:element name="knora">
437
- <xs:complexType>
438
- <xs:sequence>
439
- <xs:element name="permissions" type="permissions_type" minOccurs="0" maxOccurs="unbounded" />
440
- <xs:element name="resource" type="resource_type" minOccurs="1" maxOccurs="unbounded"/>
441
- </xs:sequence>
442
- <xs:attribute name="default-ontology" type="xs:string"/>
443
- <xs:attribute name="shortcode" type="knorashortcode_type"/>
444
- </xs:complexType>
445
- <xs:key name="permissionsId">
446
- <xs:selector xpath="./permissions"/>
447
- <xs:field xpath="@id"/>
448
- </xs:key>
449
- <xs:keyref name="permissionsIdref" refer="permissionsId">
450
- <xs:selector xpath="./resource | ./resource/*/*"/>
451
- <xs:field xpath="@permissions"/>
452
- </xs:keyref>
453
- </xs:element>
454
- </xs:schema>
@@ -1,83 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "http://knora.org/pyknora/ontology/knora-schema.json",
4
- "title": "Knora JSON schema",
5
- "description": "JSON Schema for Knora ontologies",
6
-
7
- "definitions": {
8
- "label": {
9
- "type": "object",
10
- "patternProperties": {
11
- "^(en|de|fr|it)": {
12
- "type": "string"
13
- }
14
- },
15
- "additionalProperties": false
16
- },
17
- "description": {
18
- "type": "object",
19
- "patternProperties": {
20
- "^(en|de|fr|it)": {
21
- "type": "string"
22
- }
23
- },
24
- "additionalProperties": false
25
- },
26
- "comment": {
27
- "type": "object",
28
- "patternProperties": {
29
- "^(en|de|fr|it)": {
30
- "type": "string"
31
- }
32
- },
33
- "additionalProperties": false
34
- },
35
- "node": {
36
- "type": "object",
37
- "properties": {
38
- "name": {
39
- "type": "string"
40
- },
41
- "labels": {
42
- "$ref": "#/definitions/label"
43
- },
44
- "comments": {
45
- "$ref": "#/definitions/comment"
46
- },
47
- "nodes": {
48
- "type": "array",
49
- "items": {
50
- "$ref": "#/definitions/node"
51
- }
52
- }
53
- },
54
- "required": [
55
- "name",
56
- "labels"
57
- ],
58
- "additionalProperties": false
59
- }
60
- },
61
- "type": "object",
62
- "properties": {
63
- "project": {
64
- "type": "object",
65
- "properties": {
66
- "shortcode": {
67
- "type": "string",
68
- "pattern": "^[0-9A-F]{4}$"
69
- },
70
- "lists": {
71
- "type": "array",
72
- "items": {
73
- "$ref": "#/definitions/node"
74
- }
75
- }
76
- },
77
- "required": ["shortcode", "lists"],
78
- "additionalProperties": false
79
- }
80
- },
81
- "required": ["project"],
82
- "additionalProperties": false
83
- }