dsp-tools 16.6.1.post12__tar.gz → 18.1.0.post10__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.
Files changed (768) hide show
  1. dsp_tools-18.1.0.post10/PKG-INFO +90 -0
  2. dsp_tools-18.1.0.post10/docs/index.md +54 -0
  3. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/pyproject.toml +7 -8
  4. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/cli/args.py +14 -0
  5. dsp_tools-18.1.0.post10/src/dsp_tools/cli/call_action.py +82 -0
  6. dsp_tools-18.1.0.post10/src/dsp_tools/cli/call_action_files_only.py +74 -0
  7. dsp_tools-18.1.0.post10/src/dsp_tools/cli/call_action_with_network.py +204 -0
  8. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/cli/create_parsers.py +80 -41
  9. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/cli/entry_point.py +0 -4
  10. dsp_tools-18.1.0.post10/src/dsp_tools/cli/utils.py +87 -0
  11. dsp_tools-18.1.0.post10/src/dsp_tools/clients/CLAUDE.md +381 -0
  12. dsp_tools-18.1.0.post10/src/dsp_tools/clients/authentication_client_live.py +66 -0
  13. dsp_tools-18.1.0.post10/src/dsp_tools/clients/fuseki_metrics.py +60 -0
  14. dsp_tools-18.1.0.post10/src/dsp_tools/clients/group_user_clients.py +12 -0
  15. dsp_tools-18.1.0.post10/src/dsp_tools/clients/group_user_clients_live.py +50 -0
  16. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/legal_info_client_live.py +27 -37
  17. dsp_tools-18.1.0.post10/src/dsp_tools/clients/list_client.py +49 -0
  18. dsp_tools-18.1.0.post10/src/dsp_tools/clients/list_client_live.py +166 -0
  19. dsp_tools-18.1.0.post10/src/dsp_tools/clients/metadata_client.py +24 -0
  20. dsp_tools-18.1.0.post10/src/dsp_tools/clients/metadata_client_live.py +47 -0
  21. dsp_tools-18.1.0.post10/src/dsp_tools/clients/ontology_clients.py +36 -0
  22. dsp_tools-18.1.0.post10/src/dsp_tools/clients/ontology_create_client_live.py +120 -0
  23. dsp_tools-18.1.0.post10/src/dsp_tools/clients/ontology_get_client_live.py +80 -0
  24. dsp_tools-18.1.0.post10/src/dsp_tools/clients/project_client.py +10 -0
  25. dsp_tools-18.1.0.post10/src/dsp_tools/clients/project_client_live.py +37 -0
  26. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/communicate_problems.py +19 -0
  27. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/constants.py +7 -0
  28. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server/cardinalities.py +127 -0
  29. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server/group_users.py +56 -0
  30. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server/lists.py +163 -0
  31. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server/mappers.py +12 -0
  32. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/lists_only.py +47 -0
  33. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/input_problems.py +46 -0
  34. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/parsed_ontology.py +48 -0
  35. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/parsed_project.py +82 -0
  36. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/rdf_ontology.py +12 -0
  37. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/server_project_info.py +55 -0
  38. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing/parse_lists.py +45 -0
  39. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing/parse_ontology.py +108 -0
  40. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing/parse_project.py +148 -0
  41. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing/parsing_utils.py +40 -0
  42. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/serialisation/ontology.py +41 -0
  43. dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/serialisation/project.py +27 -0
  44. dsp_tools-18.1.0.post10/src/dsp_tools/commands/excel2json/CLAUDE.md +101 -0
  45. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/json_header.py +7 -4
  46. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/make_lists.py +9 -8
  47. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/models/serialise.py +9 -5
  48. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/models/input_error.py +30 -0
  49. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/models/json_header.py +37 -2
  50. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/models/ontology.py +4 -3
  51. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/project.py +52 -8
  52. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/properties.py +48 -36
  53. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/resources.py +28 -7
  54. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/utils.py +16 -0
  55. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2xml/excel2xml_lib.py +4 -4
  56. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/create_resources/upload_xml.py +14 -4
  57. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/project_create_all.py +68 -37
  58. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/project_create_default_permissions.py +8 -6
  59. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/project_create_ontologies.py +77 -107
  60. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/project_validate.py +3 -0
  61. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/project → dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/get}/get.py +15 -46
  62. dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/get/get_permissions.py +257 -0
  63. dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/get/get_permissions_legacy.py +89 -0
  64. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/context.py +1 -1
  65. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/listnode.py +0 -30
  66. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/resourceclass.py +0 -31
  67. dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/models/permissions_models.py +10 -0
  68. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/resume_xmlupload/resume_xmlupload.py +5 -5
  69. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/start_stack.py +15 -39
  70. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/mappers.py +1 -1
  71. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/models/api_responses.py +9 -16
  72. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/models/input_problems.py +3 -0
  73. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/models/validation.py +1 -0
  74. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/prepare_data/make_data_graph.py +4 -1
  75. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/prepare_data/prepare_data.py +51 -13
  76. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/process_validation_report/get_user_validation_message.py +60 -19
  77. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/process_validation_report/query_validation_result.py +1 -0
  78. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/shacl_cli_validator.py +3 -1
  79. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/sparql/value_shacl.py +1 -1
  80. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/validate_data.py +15 -3
  81. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/validation/get_validation_report.py +3 -2
  82. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/validation/validate_ontology.py +1 -1
  83. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/make_rdf_graph/constants.py +1 -1
  84. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/make_rdf_graph/make_values.py +2 -2
  85. dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/models/formatted_text_value.py +10 -0
  86. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/ingest.py +20 -19
  87. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/input_problems.py +6 -14
  88. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/upload_clients.py +0 -2
  89. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/prepare_xml_input/get_processed_resources.py +2 -1
  90. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/prepare_xml_input/iiif_uri_validator.py +0 -2
  91. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/prepare_xml_input/list_client.py +3 -0
  92. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/prepare_xml_input/prepare_xml_input.py +1 -1
  93. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/prepare_xml_input/transform_input_values.py +2 -2
  94. dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/richtext_id2iri.py +37 -0
  95. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/upload_config.py +2 -0
  96. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/xmlupload.py +65 -30
  97. dsp_tools-18.1.0.post10/src/dsp_tools/config/logger_config.py +68 -0
  98. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/custom_warnings.py +7 -0
  99. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/exceptions.py +81 -2
  100. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/data.xsd +21 -14
  101. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/project.json +3 -2
  102. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/start-stack/docker-compose.override.yml +1 -1
  103. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/start-stack/docker-compose.yml +28 -26
  104. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/start-stack/dsp-app-config.json +19 -0
  105. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/validate_data/api-shapes.ttl +14 -2
  106. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/ansi_colors.py +2 -0
  107. dsp_tools-18.1.0.post10/src/dsp_tools/utils/data_formats/iri_util.py +30 -0
  108. dsp_tools-18.1.0.post10/src/dsp_tools/utils/fuseki_bloating.py +63 -0
  109. dsp_tools-18.1.0.post10/src/dsp_tools/utils/json_parsing.py +46 -0
  110. dsp_tools-18.1.0.post10/src/dsp_tools/utils/rdflib_utils.py +10 -0
  111. dsp_tools-18.1.0.post10/src/dsp_tools/utils/replace_id_with_iri.py +66 -0
  112. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/request_utils.py +31 -0
  113. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/xml_parsing/get_parsed_resources.py +2 -5
  114. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/xml_parsing/parse_clean_validate_xml.py +15 -36
  115. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/CLAUDE.md +9 -5
  116. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/__init__.py +21 -21
  117. dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/helpers.py → dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/general_functions.py +10 -664
  118. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/circumvent_circular_imports.py +1 -1
  119. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/serialise_file_value.py +1 -1
  120. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/serialise_resource.py +1 -1
  121. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/serialise_values.py +1 -1
  122. dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/internal/type_aliases.py +11 -0
  123. dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/config_options.py +28 -0
  124. dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/date_formats.py +48 -0
  125. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/dsp_base_resources.py +1 -1
  126. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/file_values.py +1 -1
  127. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/values.py +1 -1
  128. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/licenses/other.py +5 -3
  129. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/licenses/recommended.py +4 -4
  130. dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/permissions.py +41 -0
  131. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/res.py +128 -6
  132. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/root.py +8 -2
  133. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/value_checkers.py +2 -1
  134. dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/value_converters.py +777 -0
  135. dsp_tools-16.6.1.post12/.darglint +0 -4
  136. dsp_tools-16.6.1.post12/.editorconfig +0 -11
  137. dsp_tools-16.6.1.post12/.github/actions/setup/action.yml +0 -16
  138. dsp_tools-16.6.1.post12/.github/actions/setup-from-wheel/action.yml +0 -35
  139. dsp_tools-16.6.1.post12/.github/dependabot.yml +0 -16
  140. dsp_tools-16.6.1.post12/.github/release-please-config.json +0 -44
  141. dsp_tools-16.6.1.post12/.github/release-please-manifest.json +0 -3
  142. dsp_tools-16.6.1.post12/.github/workflows/check-docs.yml +0 -30
  143. dsp_tools-16.6.1.post12/.github/workflows/check-pr-title.yml +0 -30
  144. dsp_tools-16.6.1.post12/.github/workflows/lint-code.yml +0 -37
  145. dsp_tools-16.6.1.post12/.github/workflows/publish-dev-release-to-pypi.yml +0 -34
  146. dsp_tools-16.6.1.post12/.github/workflows/publish-release-to-pypi.yml +0 -38
  147. dsp_tools-16.6.1.post12/.github/workflows/release-please.yml +0 -68
  148. dsp_tools-16.6.1.post12/.github/workflows/test-latest-be.yml +0 -33
  149. dsp_tools-16.6.1.post12/.github/workflows/tests-e2e.yml +0 -104
  150. dsp_tools-16.6.1.post12/.github/workflows/tests.yml +0 -69
  151. dsp_tools-16.6.1.post12/.github/workflows/update-codecov-of-main.yml +0 -41
  152. dsp_tools-16.6.1.post12/.gitignore +0 -76
  153. dsp_tools-16.6.1.post12/.markdownlint.yml +0 -48
  154. dsp_tools-16.6.1.post12/.pre-commit-config.yaml +0 -19
  155. dsp_tools-16.6.1.post12/.python-version +0 -1
  156. dsp_tools-16.6.1.post12/.vulture_whitelist.py +0 -31
  157. dsp_tools-16.6.1.post12/.yamlfmt.yml +0 -15
  158. dsp_tools-16.6.1.post12/.yamllint.yml +0 -37
  159. dsp_tools-16.6.1.post12/CHANGELOG.md +0 -2976
  160. dsp_tools-16.6.1.post12/CLAUDE.md +0 -176
  161. dsp_tools-16.6.1.post12/LICENSE +0 -674
  162. dsp_tools-16.6.1.post12/PKG-INFO +0 -145
  163. dsp_tools-16.6.1.post12/README.md +0 -260
  164. dsp_tools-16.6.1.post12/docs/assets/data_model_templates/json_header.xlsx +0 -0
  165. dsp_tools-16.6.1.post12/docs/assets/data_model_templates/lists/de.xlsx +0 -0
  166. dsp_tools-16.6.1.post12/docs/assets/data_model_templates/lists/en.xlsx +0 -0
  167. dsp_tools-16.6.1.post12/docs/assets/data_model_templates/lists/lists.xlsx +0 -0
  168. dsp_tools-16.6.1.post12/docs/assets/data_model_templates/rosetta (rosetta)/properties.xlsx +0 -0
  169. dsp_tools-16.6.1.post12/docs/assets/data_model_templates/rosetta (rosetta)/resources.xlsx +0 -0
  170. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-columns-correct.png +0 -0
  171. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-columns-incorrect.png +0 -0
  172. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-english.png +0 -0
  173. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-german.png +0 -0
  174. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-node-missing-node.png +0 -0
  175. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-sorting-incorrect.png +0 -0
  176. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-translation-incorrect.png +0 -0
  177. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-lists.png +0 -0
  178. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-properties.png +0 -0
  179. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-resources-details.png +0 -0
  180. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-resources-overview.png +0 -0
  181. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2xml-closeup.png +0 -0
  182. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2xml-module-docstring.png +0 -0
  183. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2xml-raw-data-category.png +0 -0
  184. dsp_tools-16.6.1.post12/docs/assets/images/img-excel2xml.png +0 -0
  185. dsp_tools-16.6.1.post12/docs/assets/images/img-xml-grid-for-geometry-prop.png +0 -0
  186. dsp_tools-16.6.1.post12/docs/assets/style/theme.css +0 -28
  187. dsp_tools-16.6.1.post12/docs/changelog.md +0 -1
  188. dsp_tools-16.6.1.post12/docs/cli-commands.md +0 -687
  189. dsp_tools-16.6.1.post12/docs/developers/architecture.md +0 -182
  190. dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/code-quality-tools.md +0 -24
  191. dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/general-formatting.md +0 -14
  192. dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-docstring-formatting.md +0 -79
  193. dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-formatting.md +0 -38
  194. dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-linting.md +0 -62
  195. dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-see-also.md +0 -53
  196. dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-type-checking.md +0 -35
  197. dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/security.md +0 -38
  198. dsp_tools-16.6.1.post12/docs/developers/decision-log.md +0 -51
  199. dsp_tools-16.6.1.post12/docs/developers/index.md +0 -9
  200. dsp_tools-16.6.1.post12/docs/developers/mkdocs.md +0 -86
  201. dsp_tools-16.6.1.post12/docs/developers/packaging.md +0 -123
  202. dsp_tools-16.6.1.post12/docs/developers/user-data.md +0 -101
  203. dsp_tools-16.6.1.post12/docs/excel2xml-module.md +0 -408
  204. dsp_tools-16.6.1.post12/docs/file-formats/excel2json.md +0 -441
  205. dsp_tools-16.6.1.post12/docs/file-formats/excel2xml.md +0 -26
  206. dsp_tools-16.6.1.post12/docs/file-formats/json-project/caveats.md +0 -69
  207. dsp_tools-16.6.1.post12/docs/file-formats/json-project/ontologies.md +0 -989
  208. dsp_tools-16.6.1.post12/docs/file-formats/json-project/overview.md +0 -779
  209. dsp_tools-16.6.1.post12/docs/file-formats/xml-data-file.md +0 -1383
  210. dsp_tools-16.6.1.post12/docs/index.md +0 -109
  211. dsp_tools-16.6.1.post12/docs/special-workflows/incremental-xmlupload.md +0 -94
  212. dsp_tools-16.6.1.post12/docs/start-stack.md +0 -80
  213. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/advanced-set-up.md +0 -97
  214. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/config-options.md +0 -3
  215. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/dsp-base-resources/audio-segment-resource.md +0 -4
  216. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/dsp-base-resources/link-resource.md +0 -4
  217. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/dsp-base-resources/region-resource.md +0 -4
  218. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/dsp-base-resources/video-segment-resource.md +0 -4
  219. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/helpers.md +0 -1
  220. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/licenses/other.md +0 -3
  221. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/licenses/recommended.md +0 -3
  222. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/resource.md +0 -3
  223. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/value-checkers.md +0 -1
  224. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/value-converters.md +0 -1
  225. dsp_tools-16.6.1.post12/docs/xmllib-api-reference/xmlroot.md +0 -3
  226. dsp_tools-16.6.1.post12/justfile +0 -165
  227. dsp_tools-16.6.1.post12/k6/.gitignore +0 -3
  228. dsp_tools-16.6.1.post12/k6/README.md +0 -59
  229. dsp_tools-16.6.1.post12/k6/justfile +0 -31
  230. dsp_tools-16.6.1.post12/k6/tests/excel2json.js +0 -40
  231. dsp_tools-16.6.1.post12/mkdocs.yml +0 -104
  232. dsp_tools-16.6.1.post12/scripts/bump_version.py +0 -64
  233. dsp_tools-16.6.1.post12/scripts/markdown_link_validator.py +0 -35
  234. dsp_tools-16.6.1.post12/src/dsp_tools/cli/call_action.py +0 -294
  235. dsp_tools-16.6.1.post12/src/dsp_tools/clients/authentication_client_live.py +0 -51
  236. dsp_tools-16.6.1.post12/src/dsp_tools/commands/project/create/project_create_lists.py +0 -200
  237. dsp_tools-16.6.1.post12/src/dsp_tools/commands/rosetta.py +0 -124
  238. dsp_tools-16.6.1.post12/src/dsp_tools/commands/template.py +0 -30
  239. dsp_tools-16.6.1.post12/src/dsp_tools/commands/validate_data/api_clients.py +0 -124
  240. dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/models/formatted_text_value.py +0 -35
  241. dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/project_client.py +0 -58
  242. dsp_tools-16.6.1.post12/src/dsp_tools/config/logger_config.py +0 -41
  243. dsp_tools-16.6.1.post12/src/dsp_tools/resources/0100-template-repo/template.json +0 -45
  244. dsp_tools-16.6.1.post12/src/dsp_tools/resources/0100-template-repo/template.xml +0 -15
  245. dsp_tools-16.6.1.post12/src/dsp_tools/utils/data_formats/iri_util.py +0 -14
  246. dsp_tools-16.6.1.post12/src/dsp_tools/utils/json_parsing.py +0 -36
  247. dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/internal/type_aliases.py +0 -11
  248. dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/models/config_options.py +0 -110
  249. dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/value_converters.py +0 -146
  250. dsp_tools-16.6.1.post12/test/benchmarking/test_stash_circular_references.py +0 -38
  251. dsp_tools-16.6.1.post12/test/conftest.py +0 -38
  252. dsp_tools-16.6.1.post12/test/distribution/test_cli_deps_resources.py +0 -101
  253. dsp_tools-16.6.1.post12/test/distribution/test_xmllib.py +0 -23
  254. dsp_tools-16.6.1.post12/test/e2e/commands/conftest.py +0 -23
  255. dsp_tools-16.6.1.post12/test/e2e/commands/ingest_xmlupload/__init__.py +0 -0
  256. dsp_tools-16.6.1.post12/test/e2e/commands/ingest_xmlupload/test_ingest_xmlupload.py +0 -98
  257. dsp_tools-16.6.1.post12/test/e2e/commands/test_create.py +0 -198
  258. dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/__init__.py +0 -0
  259. dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/conftest.py +0 -36
  260. dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_edge_cases.py +0 -186
  261. dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_generic_correct.py +0 -81
  262. dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_generic_violations.py +0 -541
  263. dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_generic_warning_and_info.py +0 -153
  264. dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_systematic.py +0 -30
  265. dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/util.py +0 -24
  266. dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/__init__.py +0 -0
  267. dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/conftest.py +0 -125
  268. dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/test_permissions.py +0 -160
  269. dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/test_resources.py +0 -214
  270. dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/test_values.py +0 -430
  271. dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/utils.py +0 -48
  272. dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/__init__.py +0 -0
  273. dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/artifacts.py +0 -32
  274. dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/containers.py +0 -171
  275. dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/ports.py +0 -46
  276. dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/setup.py +0 -71
  277. dsp_tools-16.6.1.post12/test/integration/__init__.py +0 -0
  278. dsp_tools-16.6.1.post12/test/integration/commands/__init__.py +0 -0
  279. dsp_tools-16.6.1.post12/test/integration/commands/excel2json/__init__.py +0 -0
  280. dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_json_header.py +0 -71
  281. dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_lists.py +0 -120
  282. dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_project.py +0 -63
  283. dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_properties.py +0 -356
  284. dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_resources.py +0 -248
  285. dsp_tools-16.6.1.post12/test/integration/commands/excel2xml/__init__.py +0 -0
  286. dsp_tools-16.6.1.post12/test/integration/commands/excel2xml/test_excel2xml_cli.py +0 -213
  287. dsp_tools-16.6.1.post12/test/integration/commands/ingest_xmlupload/__init__.py +0 -0
  288. dsp_tools-16.6.1.post12/test/integration/commands/ingest_xmlupload/test_ingest_xmlupload.py +0 -53
  289. dsp_tools-16.6.1.post12/test/integration/commands/project/__init__.py +0 -0
  290. dsp_tools-16.6.1.post12/test/integration/commands/project/test_create_project.py +0 -177
  291. dsp_tools-16.6.1.post12/test/integration/commands/project/test_models_project.py +0 -54
  292. dsp_tools-16.6.1.post12/test/integration/commands/project/test_project_create_default_permissions.py +0 -152
  293. dsp_tools-16.6.1.post12/test/integration/commands/test_generate_templates.py +0 -32
  294. dsp_tools-16.6.1.post12/test/integration/commands/test_rosetta.py +0 -22
  295. dsp_tools-16.6.1.post12/test/integration/commands/test_shacl_cli_validator.py +0 -39
  296. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/__init__.py +0 -0
  297. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/authentication_client_mock.py +0 -10
  298. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/connection_mock.py +0 -55
  299. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/stash/__init__.py +0 -0
  300. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/stash/test_upload_stash_with_mock.py +0 -234
  301. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_list_client_live.py +0 -256
  302. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_project_client_live.py +0 -37
  303. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_resource_creation.py +0 -562
  304. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_upload_config.py +0 -22
  305. dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_upload_state.py +0 -33
  306. dsp_tools-16.6.1.post12/test/integration/utils/__init__.py +0 -0
  307. dsp_tools-16.6.1.post12/test/integration/utils/xml_parsing/__init__.py +0 -0
  308. dsp_tools-16.6.1.post12/test/integration/utils/xml_parsing/test_parse_clean_validate_xml.py +0 -199
  309. dsp_tools-16.6.1.post12/test/integration/xmllib/__init__.py +0 -0
  310. dsp_tools-16.6.1.post12/test/integration/xmllib/test_helpers.py +0 -67
  311. dsp_tools-16.6.1.post12/test/integration/xmllib/test_internal_helpers.py +0 -57
  312. dsp_tools-16.6.1.post12/test/legacy_e2e/__init__.py +0 -0
  313. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/__init__.py +0 -0
  314. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/__init__.py +0 -0
  315. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_create_lists.py +0 -45
  316. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_group.py +0 -79
  317. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_listnode.py +0 -129
  318. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_ontology.py +0 -66
  319. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_propertyclass.py +0 -46
  320. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_resourceclass.py +0 -84
  321. dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_user.py +0 -95
  322. dsp_tools-16.6.1.post12/test/legacy_e2e/test_create_get_xmlupload.py +0 -510
  323. dsp_tools-16.6.1.post12/test/unittests/__init__.py +0 -0
  324. dsp_tools-16.6.1.post12/test/unittests/cli/__init__.py +0 -0
  325. dsp_tools-16.6.1.post12/test/unittests/cli/test_cli_with_mock.py +0 -807
  326. dsp_tools-16.6.1.post12/test/unittests/cli/test_helper_functions.py +0 -193
  327. dsp_tools-16.6.1.post12/test/unittests/clients/__init__.py +0 -0
  328. dsp_tools-16.6.1.post12/test/unittests/clients/test_connection_live.py +0 -351
  329. dsp_tools-16.6.1.post12/test/unittests/clients/test_legal_info_live.py +0 -177
  330. dsp_tools-16.6.1.post12/test/unittests/commands/__init__.py +0 -0
  331. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/__init__.py +0 -0
  332. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/conftest.py +0 -1
  333. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/json_header_fixtures.py +0 -247
  334. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/__init__.py +0 -0
  335. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/conftest.py +0 -1
  336. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/fixtures_excel_sheets.py +0 -404
  337. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/test_compliance_checks.py +0 -578
  338. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/test_make_lists.py +0 -570
  339. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/test_utils.py +0 -105
  340. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_json_header.py +0 -581
  341. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_models_json_header.py +0 -153
  342. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_models_lists_serialise.py +0 -118
  343. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_properties.py +0 -357
  344. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_resources.py +0 -228
  345. dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_utils.py +0 -264
  346. dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/__init__.py +0 -0
  347. dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/__init__.py +0 -0
  348. dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_escaped_chars.py +0 -37
  349. dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_list_mappings.py +0 -56
  350. dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_make_props.py +0 -629
  351. dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_prepare_value.py +0 -46
  352. dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_resource_types.py +0 -146
  353. dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/__init__.py +0 -0
  354. dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_apply_ingest_id.py +0 -85
  355. dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_bulk_ingest_client.py +0 -175
  356. dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_filechecker.py +0 -122
  357. dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_upload_failures.py +0 -80
  358. dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_user_information.py +0 -111
  359. dsp_tools-16.6.1.post12/test/unittests/commands/project/__init__.py +0 -0
  360. dsp_tools-16.6.1.post12/test/unittests/commands/project/get.py +0 -62
  361. dsp_tools-16.6.1.post12/test/unittests/commands/project/test_parse_project.py +0 -77
  362. dsp_tools-16.6.1.post12/test/unittests/commands/project/test_project_validate/__init__.py +0 -0
  363. dsp_tools-16.6.1.post12/test/unittests/commands/project/test_project_validate/test_default_permissions_overrule.py +0 -329
  364. dsp_tools-16.6.1.post12/test/unittests/commands/project/test_project_validate/test_project_validate.py +0 -55
  365. dsp_tools-16.6.1.post12/test/unittests/commands/test_id2iri.py +0 -246
  366. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/__init__.py +0 -0
  367. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/conftest.py +0 -3
  368. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/constants.py +0 -20
  369. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/fixtures/__init__.py +0 -0
  370. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/fixtures/lists.py +0 -89
  371. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/fixtures/onto.py +0 -331
  372. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/fixtures/validation_result.py +0 -1467
  373. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/models/__init__.py +0 -0
  374. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/models/test_api_response.py +0 -24
  375. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/sparql/__init__.py +0 -0
  376. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/sparql/test_cardinality_shacl.py +0 -259
  377. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/sparql/test_legal_info_shacl.py +0 -50
  378. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/sparql/test_value_shacl.py +0 -212
  379. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_api_clients.py +0 -121
  380. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_get_rdf_like_data.py +0 -570
  381. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_get_user_validation_message.py +0 -437
  382. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_make_data_graph.py +0 -437
  383. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_query_validation_result.py +0 -600
  384. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_reformat_validation_results.py +0 -209
  385. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_validate_data.py +0 -60
  386. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/validation/__init__.py +0 -0
  387. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/validation/test_check_duplicate_files.py +0 -131
  388. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/validation/test_check_for_unknown_classes.py +0 -113
  389. dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/validation/test_validate_ontology.py +0 -29
  390. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/__init__.py +0 -0
  391. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/get_processed_resources/__init__.py +0 -0
  392. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/get_processed_resources/test_get_processed_resources.py +0 -613
  393. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/get_processed_resources/test_transform_input_values.py +0 -152
  394. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/__init__.py +0 -0
  395. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/test_jsonld_utils.py +0 -87
  396. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/test_make_file_value.py +0 -167
  397. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/test_make_resource_and_values.py +0 -103
  398. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/test_make_values.py +0 -344
  399. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/models/__init__.py +0 -0
  400. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/models/test_ingest.py +0 -67
  401. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/models/test_input_problems.py +0 -105
  402. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/__init__.py +0 -0
  403. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_analyse_circular_reference_graph.py +0 -373
  404. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_create_info_for_graph_from_intermediary_resource.py +0 -165
  405. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_stash_circular_references_from_intermediary_resource.py +0 -156
  406. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_upload_stashed_resptr_props.py +0 -38
  407. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_upload_stashed_xml_texts.py +0 -156
  408. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_iiif_uri_validator.py +0 -131
  409. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_iri_resolver.py +0 -38
  410. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_resource_creation.py +0 -38
  411. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_upload_config.py +0 -39
  412. dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_xmlupload.py +0 -43
  413. dsp_tools-16.6.1.post12/test/unittests/error/__init__.py +0 -0
  414. dsp_tools-16.6.1.post12/test/unittests/error/test_xmllib_warnings_util.py +0 -116
  415. dsp_tools-16.6.1.post12/test/unittests/error/warnings.log +0 -0
  416. dsp_tools-16.6.1.post12/test/unittests/legacy_models/__init__.py +0 -0
  417. dsp_tools-16.6.1.post12/test/unittests/legacy_models/test_langstring.py +0 -101
  418. dsp_tools-16.6.1.post12/test/unittests/utils/__init__.py +0 -0
  419. dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/__init__.py +0 -0
  420. dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/test_date_util.py +0 -270
  421. dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/test_iri_util.py +0 -20
  422. dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/test_shared.py +0 -59
  423. dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/test_uri_util.py +0 -77
  424. dsp_tools-16.6.1.post12/test/unittests/utils/test_request_utils.py +0 -33
  425. dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/__init__.py +0 -0
  426. dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/conftest.py +0 -1
  427. dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/fixtures_parse_resource.py +0 -160
  428. dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/test_get_lookups.py +0 -42
  429. dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/test_get_parsed_resources.py +0 -761
  430. dsp_tools-16.6.1.post12/test/unittests/xmllib/__init__.py +0 -0
  431. dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/__init__.py +0 -0
  432. dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_checkers.py +0 -66
  433. dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_input_converters.py +0 -50
  434. dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_serialise_file_value.py +0 -121
  435. dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_serialise_resource.py +0 -181
  436. dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_serialise_values.py +0 -358
  437. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/__init__.py +0 -0
  438. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/__init__.py +0 -0
  439. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/test_file_values.py +0 -129
  440. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/test_geometry.py +0 -84
  441. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/test_migration_metadata.py +0 -54
  442. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/test_values.py +0 -237
  443. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/test_dsp_base_resources.py +0 -120
  444. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/test_resource.py +0 -504
  445. dsp_tools-16.6.1.post12/test/unittests/xmllib/models/test_root.py +0 -410
  446. dsp_tools-16.6.1.post12/test/unittests/xmllib/test_helpers.py +0 -914
  447. dsp_tools-16.6.1.post12/test/unittests/xmllib/test_value_checkers.py +0 -267
  448. dsp_tools-16.6.1.post12/test/unittests/xmllib/test_value_converters.py +0 -47
  449. dsp_tools-16.6.1.post12/testdata/bitstreams/README.txt +0 -4
  450. dsp_tools-16.6.1.post12/testdata/bitstreams/test with special chars /303/240/303/241/303/242/303/244 /303/250/303/251/303/252/303/253 /303/254/303/255/303/256/303/257 /303/262/303/263/303/264/303/266 /303/271/303/272/303/273/303/274 /303/247/303/261/303/237 0123456789 _-'()[]{}+=!<>| /346/274/242/343/201/214/352/270/200/341/210/255/330/250/331/212/330/251/320/261/344/270/255.png +0 -0
  451. dsp_tools-16.6.1.post12/testdata/bitstreams/test with uppercase extension.JPG +0 -0
  452. dsp_tools-16.6.1.post12/testdata/bitstreams/test with whitespaces.png +0 -0
  453. dsp_tools-16.6.1.post12/testdata/bitstreams/test,with,multiple,commas.png +0 -0
  454. dsp_tools-16.6.1.post12/testdata/bitstreams/test.7z +0 -0
  455. dsp_tools-16.6.1.post12/testdata/bitstreams/test.csv +0 -2
  456. dsp_tools-16.6.1.post12/testdata/bitstreams/test.doc +0 -0
  457. dsp_tools-16.6.1.post12/testdata/bitstreams/test.docx +0 -0
  458. dsp_tools-16.6.1.post12/testdata/bitstreams/test.epub +0 -0
  459. dsp_tools-16.6.1.post12/testdata/bitstreams/test.gif +0 -0
  460. dsp_tools-16.6.1.post12/testdata/bitstreams/test.gz +0 -0
  461. dsp_tools-16.6.1.post12/testdata/bitstreams/test.gzip +0 -0
  462. dsp_tools-16.6.1.post12/testdata/bitstreams/test.htm +0 -10
  463. dsp_tools-16.6.1.post12/testdata/bitstreams/test.html +0 -10
  464. dsp_tools-16.6.1.post12/testdata/bitstreams/test.jp2 +0 -0
  465. dsp_tools-16.6.1.post12/testdata/bitstreams/test.jpeg +0 -0
  466. dsp_tools-16.6.1.post12/testdata/bitstreams/test.jpg +0 -0
  467. dsp_tools-16.6.1.post12/testdata/bitstreams/test.json +0 -1
  468. dsp_tools-16.6.1.post12/testdata/bitstreams/test.mp3 +0 -0
  469. dsp_tools-16.6.1.post12/testdata/bitstreams/test.mp4 +0 -0
  470. dsp_tools-16.6.1.post12/testdata/bitstreams/test.odd +0 -6
  471. dsp_tools-16.6.1.post12/testdata/bitstreams/test.pdf +0 -0
  472. dsp_tools-16.6.1.post12/testdata/bitstreams/test.png +0 -0
  473. dsp_tools-16.6.1.post12/testdata/bitstreams/test.ppt +0 -0
  474. dsp_tools-16.6.1.post12/testdata/bitstreams/test.pptx +0 -0
  475. dsp_tools-16.6.1.post12/testdata/bitstreams/test.rng +0 -7
  476. dsp_tools-16.6.1.post12/testdata/bitstreams/test.tar +0 -0
  477. dsp_tools-16.6.1.post12/testdata/bitstreams/test.tar.gz +0 -0
  478. dsp_tools-16.6.1.post12/testdata/bitstreams/test.tgz +0 -0
  479. dsp_tools-16.6.1.post12/testdata/bitstreams/test.tif +0 -0
  480. dsp_tools-16.6.1.post12/testdata/bitstreams/test.tiff +0 -0
  481. dsp_tools-16.6.1.post12/testdata/bitstreams/test.txt +0 -5
  482. dsp_tools-16.6.1.post12/testdata/bitstreams/test.wav +0 -0
  483. dsp_tools-16.6.1.post12/testdata/bitstreams/test.with.multiple.dots.png +0 -0
  484. dsp_tools-16.6.1.post12/testdata/bitstreams/test.xls +0 -0
  485. dsp_tools-16.6.1.post12/testdata/bitstreams/test.xlsx +0 -0
  486. dsp_tools-16.6.1.post12/testdata/bitstreams/test.xml +0 -6
  487. dsp_tools-16.6.1.post12/testdata/bitstreams/test.xsd +0 -36
  488. dsp_tools-16.6.1.post12/testdata/bitstreams/test.xsl +0 -18
  489. dsp_tools-16.6.1.post12/testdata/bitstreams/test.z +0 -0
  490. dsp_tools-16.6.1.post12/testdata/bitstreams/test.zip +0 -0
  491. dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/dsp-ingest.xml +0 -68
  492. dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/dsp_ingest_no_mapping.xml +0 -4
  493. dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/e2e-sample-project/Bilder Projekt 2024/C/303/264t/303/251 gauche/Bild A (1).jpg +0 -0
  494. dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/e2e-sample-project/Bilder Projekt 2024/C/303/264t/303/251 gauche/Dokument B (2).pdf +0 -0
  495. dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/e2e-sample-project/data.xml +0 -40
  496. dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/e2e-sample-project/project.json +0 -50
  497. dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/mapping-00A2.csv +0 -5
  498. dsp_tools-16.6.1.post12/testdata/e2e/admin_user_data.ttl +0 -16
  499. dsp_tools-16.6.1.post12/testdata/e2e/repo_config.ttl +0 -50
  500. dsp_tools-16.6.1.post12/testdata/e2e/sipi.docker-config.lua +0 -14
  501. dsp_tools-16.6.1.post12/testdata/excel2json/excel2json-expected-output.json +0 -1151
  502. dsp_tools-16.6.1.post12/testdata/excel2json/excel2json_files/.hidden_file +0 -1
  503. dsp_tools-16.6.1.post12/testdata/excel2json/excel2json_files/json_header.xlsx +0 -0
  504. dsp_tools-16.6.1.post12/testdata/excel2json/excel2json_files/lists/list3.xlsx +0 -0
  505. dsp_tools-16.6.1.post12/testdata/excel2json/excel2json_files/lists/lists.xlsx +0 -0
  506. dsp_tools-16.6.1.post12/testdata/excel2json/expected_json_header.json +0 -78
  507. dsp_tools-16.6.1.post12/testdata/excel2json/lists-output-expected.json +0 -194
  508. dsp_tools-16.6.1.post12/testdata/excel2json/lists-section-expanded.json +0 -73
  509. dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-monolingual/de.xlsx +0 -0
  510. dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-multilingual/de.xlsx +0 -0
  511. dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-multilingual/en.xlsx +0 -0
  512. dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-multilingual/fr.xlsx +0 -0
  513. dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-multilingual-output-expected.json +0 -102
  514. dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/.hidden_file +0 -1
  515. dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/lists/de.xlsx +0 -0
  516. dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/lists/en.xlsx +0 -0
  517. dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/lists/fr.xlsx +0 -0
  518. dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/test-name (test_label)/.hidden_file +0 -1
  519. dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/test-name (test_label)/properties.xlsx +0 -0
  520. dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/test-name (test_label)/resources.xlsx +0 -0
  521. dsp_tools-16.6.1.post12/testdata/excel2xml/excel2xml-expected-output.xml +0 -140
  522. dsp_tools-16.6.1.post12/testdata/excel2xml/excel2xml-testdata.csv +0 -57
  523. dsp_tools-16.6.1.post12/testdata/excel2xml/excel2xml-testdata.xls +0 -0
  524. dsp_tools-16.6.1.post12/testdata/excel2xml/excel2xml-testdata.xlsx +0 -0
  525. dsp_tools-16.6.1.post12/testdata/id2iri/remove-resources/data.xml +0 -44
  526. dsp_tools-16.6.1.post12/testdata/id2iri/remove-resources/mapping.json +0 -4
  527. dsp_tools-16.6.1.post12/testdata/id2iri/test-id2iri-data.xml +0 -71
  528. dsp_tools-16.6.1.post12/testdata/id2iri/test-id2iri-mapping.json +0 -6
  529. dsp_tools-16.6.1.post12/testdata/invalid-testdata/bitstreams/test.gif +0 -0
  530. dsp_tools-16.6.1.post12/testdata/invalid-testdata/bitstreams/test.rtf +0 -20
  531. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/json_header_empty_sheet.xlsx +0 -0
  532. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/json_header_missing_sheet.xlsx +0 -0
  533. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_list_ids/list_duplicate_1.xlsx +0 -0
  534. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_list_ids/list_duplicate_2.xlsx +0 -0
  535. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_listname/list_duplicate_1.xlsx +0 -0
  536. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_listname/list_duplicate_2.xlsx +0 -0
  537. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_node_ids/list_duplicate_node_ids.xlsx +0 -0
  538. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_invalid_shape/list_missing_translation_column.xlsx +0 -0
  539. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_missing_translations/list_missing_translation_cell.xlsx +0 -0
  540. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-1/de.xlsx +0 -0
  541. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-1/en.xlsx +0 -0
  542. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-1/fr.xlsx +0 -0
  543. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-2/de.xlsx +0 -0
  544. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-2/en.xlsx +0 -0
  545. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-2/fr.xlsx +0 -0
  546. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-duplicate-name.xlsx +0 -0
  547. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-gui_attribute_format.xlsx +0 -0
  548. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-gui_attribute_values.xlsx +0 -0
  549. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-gui_element.xlsx +0 -0
  550. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-object.xlsx +0 -0
  551. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-super.xlsx +0 -0
  552. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-duplicate-classes-sheet.xlsx +0 -0
  553. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-duplicate-name.xlsx +0 -0
  554. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-invalid-cardinality.xlsx +0 -0
  555. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-invalid-missing-sheet.xlsx +0 -0
  556. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-invalid-property.xlsx +0 -0
  557. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-invalid-super.xlsx +0 -0
  558. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/boolean-prop-two-values.xlsx +0 -0
  559. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/empty-property.xlsx +0 -0
  560. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/id-propname-both.xlsx +0 -0
  561. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/id-propname-none.xlsx +0 -0
  562. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/missing-prop-permissions.xlsx +0 -0
  563. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/missing-resource-label.xlsx +0 -0
  564. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/missing-resource-permissions.xlsx +0 -0
  565. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/missing-restype.xlsx +0 -0
  566. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/no-bitstream-permissions.xlsx +0 -0
  567. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/nonexisting-proptype.xlsx +0 -0
  568. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/single-invalid-value-for-property.xlsx +0 -0
  569. dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/start-with-property-row.xlsx +0 -0
  570. dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/circular-ontology.json +0 -123
  571. dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/duplicate-listnames.json +0 -68
  572. dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/duplicate-property.json +0 -76
  573. dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/duplicate-resource.json +0 -77
  574. dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/invalid-super-property.json +0 -49
  575. dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/nonexisting-cardinality.json +0 -54
  576. dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/nonexisting-super-property.json +0 -65
  577. dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/nonexisting-super-resource.json +0 -65
  578. dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/duplicate-ark.xml +0 -23
  579. dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/duplicate-iri.xml +0 -23
  580. dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/duplicate-res-id.xml +0 -43
  581. dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/empty-label.xml +0 -15
  582. dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/invalid-resource-tag.xml +0 -15
  583. dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/invalid-resptr-characters.xml +0 -17
  584. dsp_tools-16.6.1.post12/testdata/json-project/test-list-lookup.json +0 -188
  585. dsp_tools-16.6.1.post12/testdata/json-project/test-project-e2e.json +0 -136
  586. dsp_tools-16.6.1.post12/testdata/json-project/test-project-limited-view.json +0 -74
  587. dsp_tools-16.6.1.post12/testdata/json-project/test-project-minimal.json +0 -43
  588. dsp_tools-16.6.1.post12/testdata/json-project/test-project-systematic.json +0 -876
  589. dsp_tools-16.6.1.post12/testdata/json-project/test_circles_onto.json +0 -150
  590. dsp_tools-16.6.1.post12/testdata/validate-data/erroneous_ontology/erroneous_ontology.xml +0 -96
  591. dsp_tools-16.6.1.post12/testdata/validate-data/erroneous_ontology/project_erroneous_ontology.json +0 -206
  592. dsp_tools-16.6.1.post12/testdata/validate-data/generic/cardinality_correct.xml +0 -48
  593. dsp_tools-16.6.1.post12/testdata/validate-data/generic/cardinality_violation.xml +0 -53
  594. dsp_tools-16.6.1.post12/testdata/validate-data/generic/content_correct.xml +0 -210
  595. dsp_tools-16.6.1.post12/testdata/validate-data/generic/content_violation.xml +0 -211
  596. dsp_tools-16.6.1.post12/testdata/validate-data/generic/dsp_inbuilt_correct.xml +0 -249
  597. dsp_tools-16.6.1.post12/testdata/validate-data/generic/dsp_inbuilt_violation.xml +0 -288
  598. dsp_tools-16.6.1.post12/testdata/validate-data/generic/every_violation_combination_once.xml +0 -291
  599. dsp_tools-16.6.1.post12/testdata/validate-data/generic/file_value_correct.xml +0 -328
  600. dsp_tools-16.6.1.post12/testdata/validate-data/generic/file_value_violation.xml +0 -165
  601. dsp_tools-16.6.1.post12/testdata/validate-data/generic/minimal_correct.xml +0 -239
  602. dsp_tools-16.6.1.post12/testdata/validate-data/generic/no_violations_with_info.xml +0 -31
  603. dsp_tools-16.6.1.post12/testdata/validate-data/generic/no_violations_with_warnings.xml +0 -74
  604. dsp_tools-16.6.1.post12/testdata/validate-data/generic/project.json +0 -699
  605. dsp_tools-16.6.1.post12/testdata/validate-data/generic/unique_value_violation.xml +0 -77
  606. dsp_tools-16.6.1.post12/testdata/validate-data/generic/unknown_classes.xml +0 -17
  607. dsp_tools-16.6.1.post12/testdata/validate-data/generic/value_type_violation.xml +0 -109
  608. dsp_tools-16.6.1.post12/testdata/validate-data/inheritance/inheritance_correct.xml +0 -39
  609. dsp_tools-16.6.1.post12/testdata/validate-data/inheritance/inheritance_violation.xml +0 -50
  610. dsp_tools-16.6.1.post12/testdata/validate-data/inheritance/project_inheritance.json +0 -131
  611. dsp_tools-16.6.1.post12/testdata/validate-data/knora-api-subset.ttl +0 -160
  612. dsp_tools-16.6.1.post12/testdata/validate-data/onto.ttl +0 -1806
  613. dsp_tools-16.6.1.post12/testdata/validate-data/onto_for_cardinality_checks.ttl +0 -1300
  614. dsp_tools-16.6.1.post12/testdata/validate-data/shacl_cli/data.ttl +0 -12
  615. dsp_tools-16.6.1.post12/testdata/validate-data/shacl_cli/shacl.ttl +0 -22
  616. dsp_tools-16.6.1.post12/testdata/validate-data/special_characters/project_special_characters.json +0 -138
  617. dsp_tools-16.6.1.post12/testdata/validate-data/special_characters/special_characters_correct.xml +0 -46
  618. dsp_tools-16.6.1.post12/testdata/validate-data/special_characters/special_characters_violation.xml +0 -53
  619. dsp_tools-16.6.1.post12/testdata/xml-data/generic_project_text_parsing.xml +0 -158
  620. dsp_tools-16.6.1.post12/testdata/xml-data/test-circular-references.xml +0 -306
  621. dsp_tools-16.6.1.post12/testdata/xml-data/test-data-e2e.xml +0 -136
  622. dsp_tools-16.6.1.post12/testdata/xml-data/test-data-minimal.xml +0 -14
  623. dsp_tools-16.6.1.post12/testdata/xml-data/test-data-systematic.xml +0 -1108
  624. dsp_tools-16.6.1.post12/uv.lock +0 -1908
  625. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/__init__.py +0 -0
  626. {dsp_tools-16.6.1.post12/scripts → dsp_tools-18.1.0.post10/src/dsp_tools/cli}/__init__.py +0 -0
  627. {dsp_tools-16.6.1.post12/src/dsp_tools/cli → dsp_tools-18.1.0.post10/src/dsp_tools/clients}/__init__.py +0 -0
  628. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/authentication_client.py +0 -0
  629. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/connection.py +0 -0
  630. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/connection_live.py +0 -0
  631. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/legal_info_client.py +0 -0
  632. {dsp_tools-16.6.1.post12/src/dsp_tools/clients → dsp_tools-18.1.0.post10/src/dsp_tools/commands}/__init__.py +0 -0
  633. {dsp_tools-16.6.1.post12/src/dsp_tools/commands → dsp_tools-18.1.0.post10/src/dsp_tools/commands/create}/__init__.py +0 -0
  634. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/excel2json → dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server}/__init__.py +0 -0
  635. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/excel2json/lists → dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models}/__init__.py +0 -0
  636. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/excel2json/lists/models → dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing}/__init__.py +0 -0
  637. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/excel2json/models → dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/serialisation}/__init__.py +0 -0
  638. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/ingest_xmlupload → dsp_tools-18.1.0.post10/src/dsp_tools/commands/excel2json}/__init__.py +0 -0
  639. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/ingest_xmlupload/create_resources → dsp_tools-18.1.0.post10/src/dsp_tools/commands/excel2json/lists}/__init__.py +0 -0
  640. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/compliance_checks.py +0 -0
  641. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/ingest_xmlupload/ingest_files → dsp_tools-18.1.0.post10/src/dsp_tools/commands/excel2json/lists/models}/__init__.py +0 -0
  642. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/models/deserialise.py +0 -0
  643. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/models/input_error.py +0 -0
  644. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/utils.py +0 -0
  645. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/ingest_xmlupload/upload_files → dsp_tools-18.1.0.post10/src/dsp_tools/commands/excel2json/models}/__init__.py +0 -0
  646. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/models/list_node_name.py +0 -0
  647. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/old_lists.py +0 -0
  648. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2xml/__init__.py +0 -0
  649. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2xml/excel2xml_cli.py +0 -0
  650. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2xml/propertyelement.py +0 -0
  651. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/id2iri.py +0 -0
  652. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/project → dsp_tools-18.1.0.post10/src/dsp_tools/commands/ingest_xmlupload}/__init__.py +0 -0
  653. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/bulk_ingest_client.py +0 -0
  654. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/project/create → dsp_tools-18.1.0.post10/src/dsp_tools/commands/ingest_xmlupload/create_resources}/__init__.py +0 -0
  655. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/create_resources/apply_ingest_id.py +0 -0
  656. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/create_resources/user_information.py +0 -0
  657. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/project/legacy_models → dsp_tools-18.1.0.post10/src/dsp_tools/commands/ingest_xmlupload/ingest_files}/__init__.py +0 -0
  658. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/ingest_files/ingest_files.py +0 -0
  659. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/project/models → dsp_tools-18.1.0.post10/src/dsp_tools/commands/ingest_xmlupload/upload_files}/__init__.py +0 -0
  660. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/upload_files/filechecker.py +0 -0
  661. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/upload_files/input_error.py +0 -0
  662. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/upload_files/upload_failures.py +0 -0
  663. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/upload_files/upload_files.py +0 -0
  664. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/resume_xmlupload → dsp_tools-18.1.0.post10/src/dsp_tools/commands/project}/__init__.py +0 -0
  665. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/validate_data → dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/create}/__init__.py +0 -0
  666. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/parse_project.py +0 -0
  667. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/validate_data/models → dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/get}/__init__.py +0 -0
  668. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/validate_data/prepare_data → dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/legacy_models}/__init__.py +0 -0
  669. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/group.py +0 -0
  670. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/helpers.py +0 -0
  671. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/model.py +0 -0
  672. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/ontology.py +0 -0
  673. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/project.py +0 -0
  674. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/propertyclass.py +0 -0
  675. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/user.py +0 -0
  676. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/validate_data/process_validation_report → dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/models}/__init__.py +0 -0
  677. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/models/permissions_client.py +0 -0
  678. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/models/project_definition.py +0 -0
  679. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/validate_data/sparql → dsp_tools-18.1.0.post10/src/dsp_tools/commands/resume_xmlupload}/__init__.py +0 -0
  680. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/CLAUDE.md +0 -0
  681. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/validate_data/validation → dsp_tools-18.1.0.post10/src/dsp_tools/commands/validate_data}/__init__.py +0 -0
  682. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/constants.py +0 -0
  683. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload → dsp_tools-18.1.0.post10/src/dsp_tools/commands/validate_data/models}/__init__.py +0 -0
  684. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/models/rdf_like_data.py +0 -0
  685. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/make_rdf_graph → dsp_tools-18.1.0.post10/src/dsp_tools/commands/validate_data/prepare_data}/__init__.py +0 -0
  686. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/prepare_data/get_rdf_like_data.py +0 -0
  687. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/models → dsp_tools-18.1.0.post10/src/dsp_tools/commands/validate_data/process_validation_report}/__init__.py +0 -0
  688. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/process_validation_report/reformat_validation_results.py +0 -0
  689. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/models/processed → dsp_tools-18.1.0.post10/src/dsp_tools/commands/validate_data/sparql}/__init__.py +0 -0
  690. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/sparql/cardinality_shacl.py +0 -0
  691. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/sparql/construct_shacl.py +0 -0
  692. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/sparql/legal_info_shacl.py +0 -0
  693. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/utils.py +0 -0
  694. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/prepare_xml_input → dsp_tools-18.1.0.post10/src/dsp_tools/commands/validate_data/validation}/__init__.py +0 -0
  695. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/validation/check_duplicate_files.py +0 -0
  696. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/validation/check_for_unknown_classes.py +0 -0
  697. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/CLAUDE.md +0 -0
  698. {dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/stash → dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload}/__init__.py +0 -0
  699. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/iri_resolver.py +0 -0
  700. {dsp_tools-16.6.1.post12/src/dsp_tools/config → dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/make_rdf_graph}/__init__.py +0 -0
  701. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/make_rdf_graph/jsonld_utils.py +0 -0
  702. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/make_rdf_graph/make_file_value.py +0 -0
  703. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/make_rdf_graph/make_resource_and_values.py +0 -0
  704. {dsp_tools-16.6.1.post12/src/dsp_tools/error → dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/models}/__init__.py +0 -0
  705. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/bitstream_info.py +0 -0
  706. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/lookup_models.py +0 -0
  707. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/permission.py +0 -0
  708. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/permissions_parsed.py +0 -0
  709. {dsp_tools-16.6.1.post12/src/dsp_tools/legacy_models → dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/models/processed}/__init__.py +0 -0
  710. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/processed/file_values.py +0 -0
  711. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/processed/res.py +0 -0
  712. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/processed/values.py +0 -0
  713. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/rdf_models.py +0 -0
  714. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/upload_state.py +0 -0
  715. {dsp_tools-16.6.1.post12/src/dsp_tools/utils → dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/prepare_xml_input}/__init__.py +0 -0
  716. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/prepare_xml_input/ark2iri.py +0 -0
  717. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/prepare_xml_input/read_validate_xml_file.py +0 -0
  718. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/resource_create_client.py +0 -0
  719. {dsp_tools-16.6.1.post12/src/dsp_tools/utils/data_formats → dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/stash}/__init__.py +0 -0
  720. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/analyse_circular_reference_graph.py +0 -0
  721. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/create_info_for_graph.py +0 -0
  722. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/graph_models.py +0 -0
  723. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/stash_circular_references.py +0 -0
  724. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/stash_models.py +0 -0
  725. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/upload_stashed_resptr_props.py +0 -0
  726. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/upload_stashed_xml_texts.py +0 -0
  727. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/write_diagnostic_info.py +0 -0
  728. {dsp_tools-16.6.1.post12/src/dsp_tools/utils/xml_parsing → dsp_tools-18.1.0.post10/src/dsp_tools/config}/__init__.py +0 -0
  729. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/config/warnings_config.py +0 -0
  730. {dsp_tools-16.6.1.post12/src/dsp_tools/utils/xml_parsing/models → dsp_tools-18.1.0.post10/src/dsp_tools/error}/__init__.py +0 -0
  731. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/problems.py +0 -0
  732. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/xmllib_errors.py +0 -0
  733. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/xmllib_warnings.py +0 -0
  734. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/xmllib_warnings_util.py +0 -0
  735. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/xsd_validation_error_msg.py +0 -0
  736. {dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/internal → dsp_tools-18.1.0.post10/src/dsp_tools/legacy_models}/__init__.py +0 -0
  737. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/legacy_models/datetimestamp.py +0 -0
  738. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/legacy_models/langstring.py +0 -0
  739. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/legacy_models/projectContext.py +0 -0
  740. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/py.typed +0 -0
  741. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/lists-only.json +0 -0
  742. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/properties-only.json +0 -0
  743. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/resources-only.json +0 -0
  744. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/start-stack/docker-compose.override-host.j2 +0 -0
  745. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/start-stack/dsp-app-config.override-host.j2 +0 -0
  746. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/validate_data/api-shapes-resource-cardinalities.ttl +0 -0
  747. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/validate_data/shacl-cli-image.yml +0 -0
  748. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/validate_data/validate-ontology.ttl +0 -0
  749. {dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/models → dsp_tools-18.1.0.post10/src/dsp_tools/utils}/__init__.py +0 -0
  750. {dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/models/internal → dsp_tools-18.1.0.post10/src/dsp_tools/utils/data_formats}/__init__.py +0 -0
  751. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/data_formats/date_util.py +0 -0
  752. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/data_formats/shared.py +0 -0
  753. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/data_formats/uri_util.py +0 -0
  754. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/rdflib_constants.py +0 -0
  755. {dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/models/licenses → dsp_tools-18.1.0.post10/src/dsp_tools/utils/xml_parsing}/__init__.py +0 -0
  756. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/xml_parsing/get_lookups.py +0 -0
  757. {dsp_tools-16.6.1.post12/test → dsp_tools-18.1.0.post10/src/dsp_tools/utils/xml_parsing/models}/__init__.py +0 -0
  758. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/xml_parsing/models/parsed_resource.py +0 -0
  759. {dsp_tools-16.6.1.post12/test/benchmarking → dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/internal}/__init__.py +0 -0
  760. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/checkers.py +0 -0
  761. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/constants.py +0 -0
  762. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/input_converters.py +0 -0
  763. {dsp_tools-16.6.1.post12/test/distribution → dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models}/__init__.py +0 -0
  764. {dsp_tools-16.6.1.post12/test/e2e → dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/internal}/__init__.py +0 -0
  765. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/geometry.py +0 -0
  766. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/migration_metadata.py +0 -0
  767. {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/serialise_permissions.py +0 -0
  768. {dsp_tools-16.6.1.post12/test/e2e/commands → dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/licenses}/__init__.py +0 -0
@@ -0,0 +1,90 @@
1
+ Metadata-Version: 2.3
2
+ Name: dsp-tools
3
+ Version: 18.1.0.post10
4
+ Summary: DSP-TOOLS is a Python package with a command line interface that helps you interact with a DaSCH service platform (DSP) server.
5
+ Author: DaSCH - Swiss National Data and Service Center for the Humanities
6
+ Author-email: DaSCH - Swiss National Data and Service Center for the Humanities <info@dasch.swiss>
7
+ Classifier: Programming Language :: Python :: 3.12
8
+ Classifier: Programming Language :: Python :: 3.13
9
+ Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
10
+ Classifier: Operating System :: OS Independent
11
+ Requires-Dist: argparse
12
+ Requires-Dist: dotenv
13
+ Requires-Dist: jinja2
14
+ Requires-Dist: jsonpath-ng
15
+ Requires-Dist: jsonschema
16
+ Requires-Dist: loguru
17
+ Requires-Dist: lxml
18
+ Requires-Dist: networkx
19
+ Requires-Dist: openpyxl
20
+ Requires-Dist: packaging
21
+ Requires-Dist: pandas[excel]
22
+ Requires-Dist: polars
23
+ Requires-Dist: pyld
24
+ Requires-Dist: pyyaml
25
+ Requires-Dist: rdflib
26
+ Requires-Dist: regex
27
+ Requires-Dist: requests
28
+ Requires-Dist: rustworkx
29
+ Requires-Dist: tqdm
30
+ Requires-Dist: typing-extensions
31
+ Requires-Python: >=3.12
32
+ Project-URL: Documentation, https://docs.dasch.swiss/latest/DSP-TOOLS/
33
+ Project-URL: Homepage, https://www.dasch.swiss/
34
+ Project-URL: Repository, https://github.com/dasch-swiss/dsp-tools.git
35
+ Description-Content-Type: text/markdown
36
+
37
+ [![DSP-TOOLS version on PyPI](https://img.shields.io/pypi/v/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
38
+ [![Supported Python versions](https://img.shields.io/pypi/pyversions/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
39
+ [![License](https://img.shields.io/pypi/l/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
40
+ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
41
+ [![uv](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json)](https://github.com/astral-sh/uv)
42
+ [![mypy](https://img.shields.io/badge/mypy-blue)](https://github.com/python/mypy)
43
+
44
+ # DSP-TOOLS Documentation
45
+
46
+ ## Installing `dsp-tools`
47
+
48
+ To install the latest version, run:
49
+
50
+ ```bash
51
+ pip3 install dsp-tools
52
+ ```
53
+
54
+ To update to the latest version run:
55
+
56
+ ```bash
57
+ pip3 install --upgrade dsp-tools
58
+ ```
59
+
60
+ > 🚨 If your Python version is older than ours,
61
+ > pip will silently install an outdated version of DSP-TOOLS.
62
+ > DSP-TOOLS requires one of these Python versions:
63
+ > [![](https://img.shields.io/pypi/pyversions/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
64
+ > The most recent version of DSP-TOOLS is
65
+ > [![](https://img.shields.io/pypi/v/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
66
+
67
+
68
+
69
+ The `dsp-tools` package provides you with functionalities in the command line
70
+ to interact with the [DSP-API](https://github.com/dasch-swiss/dsp-api), both remote and locally.
71
+ Additionally, it contains the `xmllib` which helps you construct the XML file required for a mass upload.
72
+
73
+
74
+ ## Where To Start?
75
+
76
+ `dsp-tools` provides you with the following core functionalities.
77
+
78
+ - **Running a Local Stack:** If you want to run your own DSP stack locally, take a look [here](./local-stack.md).
79
+ - **Data Modelling:** There are several ways to create a data model with `dsp-tools`
80
+ - Take a look at the technical specification for the [JSON file](./data-model/json-project/overview.md).
81
+ - Or take a look at our tool to [convert Excel files into the JSON format](./data-model/excel2json.md).
82
+ - You can create a data model on the DSP-APP. To re-use that data model on another server
83
+ you can use the CLI command described [here](./data-model/data-model-cli.md#get).
84
+ - **Data for Mass-Upload:**
85
+ - If you want to create the XML file required for a mass-upload onto DSP, take a look at the [`xmllib`](./xmllib-docs/overview.md).
86
+ - You can find an in-depth explanation of our XML file format [here](./data-file/xml-data-file.md).
87
+ Please note, that we recommend to use the `xmllib` library to create the file
88
+ as we will ensure interoperability between the DSP-API requirements and your input.
89
+ - If you want to validate and upload your XML file take a look [here](./data-file/data-file-commands.md).
90
+ Please note, that only DaSCH employees are permitted to upload data on a production server.
@@ -0,0 +1,54 @@
1
+ [![DSP-TOOLS version on PyPI](https://img.shields.io/pypi/v/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
2
+ [![Supported Python versions](https://img.shields.io/pypi/pyversions/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
3
+ [![License](https://img.shields.io/pypi/l/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
4
+ [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
5
+ [![uv](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json)](https://github.com/astral-sh/uv)
6
+ [![mypy](https://img.shields.io/badge/mypy-blue)](https://github.com/python/mypy)
7
+
8
+ # DSP-TOOLS Documentation
9
+
10
+ ## Installing `dsp-tools`
11
+
12
+ To install the latest version, run:
13
+
14
+ ```bash
15
+ pip3 install dsp-tools
16
+ ```
17
+
18
+ To update to the latest version run:
19
+
20
+ ```bash
21
+ pip3 install --upgrade dsp-tools
22
+ ```
23
+
24
+ > 🚨 If your Python version is older than ours,
25
+ > pip will silently install an outdated version of DSP-TOOLS.
26
+ > DSP-TOOLS requires one of these Python versions:
27
+ > [![](https://img.shields.io/pypi/pyversions/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
28
+ > The most recent version of DSP-TOOLS is
29
+ > [![](https://img.shields.io/pypi/v/dsp-tools.svg)](https://pypi.org/project/dsp-tools/)
30
+
31
+
32
+
33
+ The `dsp-tools` package provides you with functionalities in the command line
34
+ to interact with the [DSP-API](https://github.com/dasch-swiss/dsp-api), both remote and locally.
35
+ Additionally, it contains the `xmllib` which helps you construct the XML file required for a mass upload.
36
+
37
+
38
+ ## Where To Start?
39
+
40
+ `dsp-tools` provides you with the following core functionalities.
41
+
42
+ - **Running a Local Stack:** If you want to run your own DSP stack locally, take a look [here](./local-stack.md).
43
+ - **Data Modelling:** There are several ways to create a data model with `dsp-tools`
44
+ - Take a look at the technical specification for the [JSON file](./data-model/json-project/overview.md).
45
+ - Or take a look at our tool to [convert Excel files into the JSON format](./data-model/excel2json.md).
46
+ - You can create a data model on the DSP-APP. To re-use that data model on another server
47
+ you can use the CLI command described [here](./data-model/data-model-cli.md#get).
48
+ - **Data for Mass-Upload:**
49
+ - If you want to create the XML file required for a mass-upload onto DSP, take a look at the [`xmllib`](./xmllib-docs/overview.md).
50
+ - You can find an in-depth explanation of our XML file format [here](./data-file/xml-data-file.md).
51
+ Please note, that we recommend to use the `xmllib` library to create the file
52
+ as we will ensure interoperability between the DSP-API requirements and your input.
53
+ - If you want to validate and upload your XML file take a look [here](./data-file/data-file-commands.md).
54
+ Please note, that only DaSCH employees are permitted to upload data on a production server.
@@ -2,7 +2,7 @@
2
2
 
3
3
  [project]
4
4
  name = "dsp-tools"
5
- version = "16.6.1.post12"
5
+ version = "18.1.0.post10"
6
6
  description = "DSP-TOOLS is a Python package with a command line interface that helps you interact with a DaSCH service platform (DSP) server."
7
7
  authors = [
8
8
  { name = "DaSCH - Swiss National Data and Service Center for the Humanities", email = "info@dasch.swiss" },
@@ -51,15 +51,13 @@ dsp-tools = "dsp_tools.cli.entry_point:main" # definition of the CLI entry point
51
51
 
52
52
 
53
53
  [build-system]
54
- # Tells “frontend” build tools (like pip, build, or uv) what “backend” build tool to use (e.g. setuptools, hatchling).
55
- # The "backend" doesn't need to be installed. It will be installed by the "frontend" in a temporary, isolated
56
- # environment for use during the build process.
57
- requires = ["hatchling"]
58
- build-backend = "hatchling.build"
54
+ # Tells “frontend” build tools (like pip, build, or uv) what “backend” build tool to use.
55
+ requires = ["uv_build>=0.8.13"]
56
+ build-backend = "uv_build"
59
57
 
60
58
 
61
- [tool.uv]
62
- dev-dependencies = [
59
+ [dependency-groups]
60
+ dev = [
63
61
  "darglint",
64
62
  "docker",
65
63
  "mkdocs-include-markdown-plugin",
@@ -89,6 +87,7 @@ dev-dependencies = [
89
87
  "viztracer",
90
88
  "vulture",
91
89
  "yamllint",
90
+ "pytest-order",
92
91
  ]
93
92
 
94
93
 
@@ -1,6 +1,7 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  from dataclasses import dataclass
4
+ from dataclasses import field
4
5
  from enum import Enum
5
6
  from pathlib import Path
6
7
 
@@ -25,9 +26,22 @@ class ValidateDataConfig:
25
26
  ignore_duplicate_files_warning: bool
26
27
  is_on_prod_server: bool
27
28
  skip_ontology_validation: bool
29
+ do_not_request_resource_metadata_from_db: bool
28
30
 
29
31
 
30
32
  class ValidationSeverity(Enum):
31
33
  ERROR = 3
32
34
  WARNING = 2
33
35
  INFO = 1
36
+
37
+
38
+ @dataclass
39
+ class PathDependencies:
40
+ required_files: list[Path] = field(default_factory=list)
41
+ required_directories: list[Path] = field(default_factory=list)
42
+
43
+
44
+ @dataclass
45
+ class NetworkRequirements:
46
+ api_url: str
47
+ always_requires_docker: bool = False
@@ -0,0 +1,82 @@
1
+ import argparse
2
+
3
+ from loguru import logger
4
+
5
+ from dsp_tools.cli.call_action_files_only import call_excel2json
6
+ from dsp_tools.cli.call_action_files_only import call_excel2lists
7
+ from dsp_tools.cli.call_action_files_only import call_excel2properties
8
+ from dsp_tools.cli.call_action_files_only import call_excel2resources
9
+ from dsp_tools.cli.call_action_files_only import call_id2iri
10
+ from dsp_tools.cli.call_action_files_only import call_old_excel2json
11
+ from dsp_tools.cli.call_action_files_only import call_old_excel2lists
12
+ from dsp_tools.cli.call_action_with_network import call_create
13
+ from dsp_tools.cli.call_action_with_network import call_get
14
+ from dsp_tools.cli.call_action_with_network import call_ingest_files
15
+ from dsp_tools.cli.call_action_with_network import call_ingest_xmlupload
16
+ from dsp_tools.cli.call_action_with_network import call_resume_xmlupload
17
+ from dsp_tools.cli.call_action_with_network import call_start_stack
18
+ from dsp_tools.cli.call_action_with_network import call_stop_stack
19
+ from dsp_tools.cli.call_action_with_network import call_upload_files
20
+ from dsp_tools.cli.call_action_with_network import call_validate_data
21
+ from dsp_tools.cli.call_action_with_network import call_xmlupload
22
+
23
+
24
+ def call_requested_action(args: argparse.Namespace) -> bool: # noqa: PLR0912 (too many branches)
25
+ """
26
+ Call the appropriate function of DSP-TOOLS.
27
+
28
+ Args:
29
+ args: parsed CLI arguments
30
+
31
+ Raises:
32
+ BaseError: from the called function
33
+ InputError: from the called function
34
+ DockerNotReachableError: from the called function
35
+ LocalDspApiNotReachableError: from the called function
36
+ unexpected errors from the called methods and underlying libraries
37
+
38
+ Returns:
39
+ success status
40
+ """
41
+ match args.action:
42
+ # commands with Docker / API interactions
43
+ case "start-stack":
44
+ result = call_start_stack(args)
45
+ case "stop-stack":
46
+ result = call_stop_stack()
47
+ case "create":
48
+ result = call_create(args)
49
+ case "get":
50
+ result = call_get(args)
51
+ case "validate-data":
52
+ result = call_validate_data(args)
53
+ case "xmlupload":
54
+ result = call_xmlupload(args)
55
+ case "resume-xmlupload":
56
+ result = call_resume_xmlupload(args)
57
+ case "upload-files":
58
+ result = call_upload_files(args)
59
+ case "ingest-files":
60
+ result = call_ingest_files(args)
61
+ case "ingest-xmlupload":
62
+ result = call_ingest_xmlupload(args)
63
+ # commands that do not require docker
64
+ case "excel2json":
65
+ result = call_excel2json(args)
66
+ case "old-excel2json":
67
+ result = call_old_excel2json(args)
68
+ case "excel2lists":
69
+ result = call_excel2lists(args)
70
+ case "old-excel2lists":
71
+ result = call_old_excel2lists(args)
72
+ case "excel2resources":
73
+ result = call_excel2resources(args)
74
+ case "excel2properties":
75
+ result = call_excel2properties(args)
76
+ case "id2iri":
77
+ result = call_id2iri(args)
78
+ case _:
79
+ print(f"ERROR: Unknown action '{args.action}'")
80
+ logger.error(f"Unknown action '{args.action}'")
81
+ result = False
82
+ return result
@@ -0,0 +1,74 @@
1
+ import argparse
2
+ from pathlib import Path
3
+
4
+ from dsp_tools.cli.args import PathDependencies
5
+ from dsp_tools.cli.utils import check_path_dependencies
6
+ from dsp_tools.commands.excel2json.lists.make_lists import excel2lists
7
+ from dsp_tools.commands.excel2json.old_lists import old_excel2lists
8
+ from dsp_tools.commands.excel2json.project import excel2json
9
+ from dsp_tools.commands.excel2json.project import old_excel2json
10
+ from dsp_tools.commands.excel2json.properties import excel2properties
11
+ from dsp_tools.commands.excel2json.resources import excel2resources
12
+ from dsp_tools.commands.id2iri import id2iri
13
+
14
+
15
+ def call_id2iri(args: argparse.Namespace) -> bool:
16
+ check_path_dependencies(PathDependencies([Path(args.xmlfile), Path(args.mapping)]))
17
+ return id2iri(
18
+ xml_file=args.xmlfile,
19
+ json_file=args.mapping,
20
+ remove_resource_if_id_in_mapping=args.remove_resources,
21
+ )
22
+
23
+
24
+ def call_excel2properties(args: argparse.Namespace) -> bool:
25
+ check_path_dependencies(PathDependencies([Path(args.excelfile)]))
26
+ _, _, success = excel2properties(
27
+ excelfile=args.excelfile,
28
+ path_to_output_file=args.properties_section,
29
+ )
30
+ return success
31
+
32
+
33
+ def call_excel2resources(args: argparse.Namespace) -> bool:
34
+ check_path_dependencies(PathDependencies([Path(args.excelfile)]))
35
+ _, _, success = excel2resources(
36
+ excelfile=args.excelfile,
37
+ path_to_output_file=args.resources_section,
38
+ )
39
+ return success
40
+
41
+
42
+ def call_old_excel2lists(args: argparse.Namespace) -> bool:
43
+ check_path_dependencies(PathDependencies(required_directories=[Path(args.excelfolder)]))
44
+ _, success = old_excel2lists(
45
+ excelfolder=args.excelfolder,
46
+ path_to_output_file=args.lists_section,
47
+ verbose=args.verbose,
48
+ )
49
+ return success
50
+
51
+
52
+ def call_excel2lists(args: argparse.Namespace) -> bool:
53
+ check_path_dependencies(PathDependencies(required_directories=[Path(args.excelfolder)]))
54
+ _, success = excel2lists(
55
+ excelfolder=args.excelfolder,
56
+ path_to_output_file=args.lists_section,
57
+ )
58
+ return success
59
+
60
+
61
+ def call_excel2json(args: argparse.Namespace) -> bool:
62
+ check_path_dependencies(PathDependencies(required_directories=[Path(args.excelfolder)]))
63
+ return excel2json(
64
+ data_model_files=args.excelfolder,
65
+ path_to_output_file=args.project_definition,
66
+ )
67
+
68
+
69
+ def call_old_excel2json(args: argparse.Namespace) -> bool:
70
+ check_path_dependencies(PathDependencies(required_directories=[Path(args.excelfolder)]))
71
+ return old_excel2json(
72
+ data_model_files=args.excelfolder,
73
+ path_to_output_file=args.project_definition,
74
+ )
@@ -0,0 +1,204 @@
1
+ import argparse
2
+ from pathlib import Path
3
+
4
+ from dsp_tools.cli.args import NetworkRequirements
5
+ from dsp_tools.cli.args import PathDependencies
6
+ from dsp_tools.cli.args import ValidationSeverity
7
+ from dsp_tools.cli.utils import check_docker_health
8
+ from dsp_tools.cli.utils import check_input_dependencies
9
+ from dsp_tools.cli.utils import get_creds
10
+ from dsp_tools.commands.create.lists_only import create_lists_only
11
+ from dsp_tools.commands.excel2json.old_lists import validate_lists_section_with_schema
12
+ from dsp_tools.commands.ingest_xmlupload.create_resources.upload_xml import ingest_xmlupload
13
+ from dsp_tools.commands.ingest_xmlupload.ingest_files.ingest_files import ingest_files
14
+ from dsp_tools.commands.ingest_xmlupload.upload_files.upload_files import upload_files
15
+ from dsp_tools.commands.project.create.project_create_all import create_project
16
+ from dsp_tools.commands.project.create.project_validate import validate_project
17
+ from dsp_tools.commands.project.get.get import get_project
18
+ from dsp_tools.commands.resume_xmlupload.resume_xmlupload import resume_xmlupload
19
+ from dsp_tools.commands.start_stack import StackConfiguration
20
+ from dsp_tools.commands.start_stack import StackHandler
21
+ from dsp_tools.commands.validate_data.validate_data import validate_data
22
+ from dsp_tools.commands.xmlupload.upload_config import UploadConfig
23
+ from dsp_tools.commands.xmlupload.xmlupload import xmlupload
24
+ from dsp_tools.error.exceptions import InputError
25
+ from dsp_tools.utils.xml_parsing.parse_clean_validate_xml import parse_and_validate_xml_file
26
+
27
+
28
+ def call_start_stack(args: argparse.Namespace) -> bool:
29
+ check_docker_health()
30
+ stack_handler = StackHandler(
31
+ StackConfiguration(
32
+ max_file_size=args.max_file_size,
33
+ enforce_docker_system_prune=args.prune,
34
+ suppress_docker_system_prune=args.no_prune,
35
+ latest_dev_version=args.latest,
36
+ upload_test_data=args.with_test_data,
37
+ custom_host=args.custom_host,
38
+ )
39
+ )
40
+ return stack_handler.start_stack()
41
+
42
+
43
+ def call_stop_stack() -> bool:
44
+ check_docker_health()
45
+ stack_handler = StackHandler(StackConfiguration())
46
+ return stack_handler.stop_stack()
47
+
48
+
49
+ def call_upload_files(args: argparse.Namespace) -> bool:
50
+ xml_path = Path(args.xml_file)
51
+ image_dir = Path(args.imgdir)
52
+ network_requirements = NetworkRequirements(api_url=args.server)
53
+ path_requirements = PathDependencies([xml_path], required_directories=[image_dir])
54
+ check_input_dependencies(path_requirements, network_requirements)
55
+
56
+ return upload_files(
57
+ xml_file=xml_path,
58
+ creds=get_creds(args),
59
+ imgdir=image_dir,
60
+ )
61
+
62
+
63
+ def call_ingest_files(args: argparse.Namespace) -> bool:
64
+ check_input_dependencies(network_dependencies=NetworkRequirements(api_url=args.server))
65
+ return ingest_files(creds=get_creds(args), shortcode=args.shortcode)
66
+
67
+
68
+ def call_ingest_xmlupload(args: argparse.Namespace) -> bool:
69
+ xml_path = Path(args.xml_file)
70
+ required_files = [xml_path]
71
+ id2iri_file = args.id2iri_file
72
+ if id2iri_file:
73
+ required_files.append(Path(id2iri_file))
74
+ network_requirements = NetworkRequirements(args.server, always_requires_docker=True)
75
+ path_deps = PathDependencies(required_files)
76
+ check_input_dependencies(path_deps, network_requirements)
77
+
78
+ interrupt_after = args.interrupt_after if args.interrupt_after > 0 else None
79
+ return ingest_xmlupload(
80
+ xml_file=xml_path,
81
+ creds=get_creds(args),
82
+ interrupt_after=interrupt_after,
83
+ skip_validation=args.skip_validation,
84
+ skip_ontology_validation=args.skip_ontology_validation,
85
+ id2iri_file=id2iri_file,
86
+ do_not_request_resource_metadata_from_db=args.do_not_request_resource_metadata_from_db,
87
+ )
88
+
89
+
90
+ def call_xmlupload(args: argparse.Namespace) -> bool:
91
+ xml_path = Path(args.xmlfile)
92
+ required_files = [xml_path]
93
+ id2iri_file = args.id2iri_file
94
+ if id2iri_file:
95
+ required_files.append(Path(id2iri_file))
96
+ network_requirements = NetworkRequirements(args.server, always_requires_docker=True)
97
+ path_deps = PathDependencies(required_files, [Path(args.imgdir)])
98
+ check_input_dependencies(path_deps, network_requirements)
99
+
100
+ if args.validate_only:
101
+ if parse_and_validate_xml_file(xml_path):
102
+ print("The XML file is syntactically correct.")
103
+ return True
104
+ else:
105
+ return False # detailed error report has already been printed
106
+ else:
107
+ interrupt_after = args.interrupt_after if args.interrupt_after > 0 else None
108
+ match args.validation_severity:
109
+ case "info":
110
+ severity = ValidationSeverity.INFO
111
+ case "warning":
112
+ severity = ValidationSeverity.WARNING
113
+ case "error":
114
+ severity = ValidationSeverity.ERROR
115
+ case _:
116
+ raise InputError(
117
+ f"The entered validation severity '{args.validation_severity}' "
118
+ f"is not part of the allowed values: info, warning, error."
119
+ )
120
+ return xmlupload(
121
+ input_file=xml_path,
122
+ creds=get_creds(args),
123
+ imgdir=args.imgdir,
124
+ config=UploadConfig(
125
+ interrupt_after=interrupt_after,
126
+ skip_iiif_validation=args.no_iiif_uri_validation,
127
+ skip_validation=args.skip_validation,
128
+ ignore_duplicate_files_warning=args.ignore_duplicate_files_warning,
129
+ validation_severity=severity,
130
+ skip_ontology_validation=args.skip_ontology_validation,
131
+ do_not_request_resource_metadata_from_db=args.do_not_request_resource_metadata_from_db,
132
+ id2iri_file=id2iri_file,
133
+ ),
134
+ )
135
+
136
+
137
+ def call_validate_data(args: argparse.Namespace) -> bool:
138
+ xml_path = Path(args.xmlfile)
139
+ required_files = [xml_path]
140
+ id2iri_file = args.id2iri_file
141
+ if id2iri_file:
142
+ required_files.append(Path(id2iri_file))
143
+ network_requirements = NetworkRequirements(args.server, always_requires_docker=True)
144
+ path_deps = PathDependencies(required_files)
145
+ check_input_dependencies(path_deps, network_requirements)
146
+
147
+ return validate_data(
148
+ filepath=xml_path,
149
+ creds=get_creds(args),
150
+ save_graphs=args.save_graphs,
151
+ ignore_duplicate_files_warning=args.ignore_duplicate_files_warning,
152
+ skip_ontology_validation=args.skip_ontology_validation,
153
+ id2iri_file=id2iri_file,
154
+ do_not_request_resource_metadata_from_db=args.do_not_request_resource_metadata_from_db,
155
+ )
156
+
157
+
158
+ def call_resume_xmlupload(args: argparse.Namespace) -> bool:
159
+ # this does not need docker if not on localhost, as does not need to validate
160
+ check_input_dependencies(network_dependencies=NetworkRequirements(args.server))
161
+ return resume_xmlupload(
162
+ creds=get_creds(args),
163
+ skip_first_resource=args.skip_first_resource,
164
+ )
165
+
166
+
167
+ def call_get(args: argparse.Namespace) -> bool:
168
+ network_dependencies = NetworkRequirements(args.server)
169
+ path_dependencies = PathDependencies(required_directories=[Path(args.project_definition).parent])
170
+ check_input_dependencies(path_dependencies, network_dependencies)
171
+
172
+ return get_project(
173
+ project_identifier=args.project,
174
+ outfile_path=args.project_definition,
175
+ creds=get_creds(args),
176
+ verbose=args.verbose,
177
+ )
178
+
179
+
180
+ def call_create(args: argparse.Namespace) -> bool:
181
+ network_dependencies = NetworkRequirements(args.server)
182
+ path_dependencies = PathDependencies([Path(args.project_definition)])
183
+ check_input_dependencies(path_dependencies, network_dependencies)
184
+
185
+ success = False
186
+ match args.lists_only, args.validate_only:
187
+ case True, True:
188
+ success = validate_lists_section_with_schema(args.project_definition)
189
+ print("'Lists' section of the JSON project file is syntactically correct and passed validation.")
190
+ case True, False:
191
+ success = create_lists_only(
192
+ project_file_as_path_or_parsed=args.project_definition,
193
+ creds=get_creds(args),
194
+ )
195
+ case False, True:
196
+ success = validate_project(args.project_definition)
197
+ print("JSON project file is syntactically correct and passed validation.")
198
+ case False, False:
199
+ success = create_project(
200
+ project_file_as_path_or_parsed=args.project_definition,
201
+ creds=get_creds(args),
202
+ verbose=args.verbose,
203
+ )
204
+ return success