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.
- dsp_tools-18.1.0.post10/PKG-INFO +90 -0
- dsp_tools-18.1.0.post10/docs/index.md +54 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/pyproject.toml +7 -8
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/cli/args.py +14 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/cli/call_action.py +82 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/cli/call_action_files_only.py +74 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/cli/call_action_with_network.py +204 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/cli/create_parsers.py +80 -41
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/cli/entry_point.py +0 -4
- dsp_tools-18.1.0.post10/src/dsp_tools/cli/utils.py +87 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/CLAUDE.md +381 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/authentication_client_live.py +66 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/fuseki_metrics.py +60 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/group_user_clients.py +12 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/group_user_clients_live.py +50 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/legal_info_client_live.py +27 -37
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/list_client.py +49 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/list_client_live.py +166 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/metadata_client.py +24 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/metadata_client_live.py +47 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/ontology_clients.py +36 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/ontology_create_client_live.py +120 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/ontology_get_client_live.py +80 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/project_client.py +10 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/clients/project_client_live.py +37 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/communicate_problems.py +19 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/constants.py +7 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server/cardinalities.py +127 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server/group_users.py +56 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server/lists.py +163 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/create_on_server/mappers.py +12 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/lists_only.py +47 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/input_problems.py +46 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/parsed_ontology.py +48 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/parsed_project.py +82 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/rdf_ontology.py +12 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/models/server_project_info.py +55 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing/parse_lists.py +45 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing/parse_ontology.py +108 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing/parse_project.py +148 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/parsing/parsing_utils.py +40 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/serialisation/ontology.py +41 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/create/serialisation/project.py +27 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/excel2json/CLAUDE.md +101 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/json_header.py +7 -4
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/make_lists.py +9 -8
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/models/serialise.py +9 -5
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/models/input_error.py +30 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/models/json_header.py +37 -2
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/models/ontology.py +4 -3
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/project.py +52 -8
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/properties.py +48 -36
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/resources.py +28 -7
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/utils.py +16 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2xml/excel2xml_lib.py +4 -4
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/project_create_all.py +68 -37
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/project_create_ontologies.py +77 -107
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/project_validate.py +3 -0
- {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
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/get/get_permissions.py +257 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/get/get_permissions_legacy.py +89 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/context.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/listnode.py +0 -30
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/resourceclass.py +0 -31
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/project/models/permissions_models.py +10 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/resume_xmlupload/resume_xmlupload.py +5 -5
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/start_stack.py +15 -39
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/mappers.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/models/api_responses.py +9 -16
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/models/input_problems.py +3 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/models/validation.py +1 -0
- {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
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/shacl_cli_validator.py +3 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/sparql/value_shacl.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/validate_data.py +15 -3
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/validation/validate_ontology.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/make_rdf_graph/constants.py +1 -1
- {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
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/models/formatted_text_value.py +10 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/ingest.py +20 -19
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/input_problems.py +6 -14
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/upload_clients.py +0 -2
- {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
- {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
- {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
- {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
- {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
- dsp_tools-18.1.0.post10/src/dsp_tools/commands/xmlupload/richtext_id2iri.py +37 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/upload_config.py +2 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/xmlupload.py +65 -30
- dsp_tools-18.1.0.post10/src/dsp_tools/config/logger_config.py +68 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/custom_warnings.py +7 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/exceptions.py +81 -2
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/data.xsd +21 -14
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/project.json +3 -2
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/start-stack/docker-compose.override.yml +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/start-stack/docker-compose.yml +28 -26
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/start-stack/dsp-app-config.json +19 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/validate_data/api-shapes.ttl +14 -2
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/ansi_colors.py +2 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/utils/data_formats/iri_util.py +30 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/utils/fuseki_bloating.py +63 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/utils/json_parsing.py +46 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/utils/rdflib_utils.py +10 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/utils/replace_id_with_iri.py +66 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/request_utils.py +31 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/xml_parsing/get_parsed_resources.py +2 -5
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/CLAUDE.md +9 -5
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/__init__.py +21 -21
- 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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/circumvent_circular_imports.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/serialise_file_value.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/serialise_resource.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/serialise_values.py +1 -1
- dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/internal/type_aliases.py +11 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/config_options.py +28 -0
- dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/date_formats.py +48 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/dsp_base_resources.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/file_values.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/values.py +1 -1
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/licenses/other.py +5 -3
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/licenses/recommended.py +4 -4
- dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/permissions.py +41 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/res.py +128 -6
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/root.py +8 -2
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/value_checkers.py +2 -1
- dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/value_converters.py +777 -0
- dsp_tools-16.6.1.post12/.darglint +0 -4
- dsp_tools-16.6.1.post12/.editorconfig +0 -11
- dsp_tools-16.6.1.post12/.github/actions/setup/action.yml +0 -16
- dsp_tools-16.6.1.post12/.github/actions/setup-from-wheel/action.yml +0 -35
- dsp_tools-16.6.1.post12/.github/dependabot.yml +0 -16
- dsp_tools-16.6.1.post12/.github/release-please-config.json +0 -44
- dsp_tools-16.6.1.post12/.github/release-please-manifest.json +0 -3
- dsp_tools-16.6.1.post12/.github/workflows/check-docs.yml +0 -30
- dsp_tools-16.6.1.post12/.github/workflows/check-pr-title.yml +0 -30
- dsp_tools-16.6.1.post12/.github/workflows/lint-code.yml +0 -37
- dsp_tools-16.6.1.post12/.github/workflows/publish-dev-release-to-pypi.yml +0 -34
- dsp_tools-16.6.1.post12/.github/workflows/publish-release-to-pypi.yml +0 -38
- dsp_tools-16.6.1.post12/.github/workflows/release-please.yml +0 -68
- dsp_tools-16.6.1.post12/.github/workflows/test-latest-be.yml +0 -33
- dsp_tools-16.6.1.post12/.github/workflows/tests-e2e.yml +0 -104
- dsp_tools-16.6.1.post12/.github/workflows/tests.yml +0 -69
- dsp_tools-16.6.1.post12/.github/workflows/update-codecov-of-main.yml +0 -41
- dsp_tools-16.6.1.post12/.gitignore +0 -76
- dsp_tools-16.6.1.post12/.markdownlint.yml +0 -48
- dsp_tools-16.6.1.post12/.pre-commit-config.yaml +0 -19
- dsp_tools-16.6.1.post12/.python-version +0 -1
- dsp_tools-16.6.1.post12/.vulture_whitelist.py +0 -31
- dsp_tools-16.6.1.post12/.yamlfmt.yml +0 -15
- dsp_tools-16.6.1.post12/.yamllint.yml +0 -37
- dsp_tools-16.6.1.post12/CHANGELOG.md +0 -2976
- dsp_tools-16.6.1.post12/CLAUDE.md +0 -176
- dsp_tools-16.6.1.post12/LICENSE +0 -674
- dsp_tools-16.6.1.post12/PKG-INFO +0 -145
- dsp_tools-16.6.1.post12/README.md +0 -260
- dsp_tools-16.6.1.post12/docs/assets/data_model_templates/json_header.xlsx +0 -0
- dsp_tools-16.6.1.post12/docs/assets/data_model_templates/lists/de.xlsx +0 -0
- dsp_tools-16.6.1.post12/docs/assets/data_model_templates/lists/en.xlsx +0 -0
- dsp_tools-16.6.1.post12/docs/assets/data_model_templates/lists/lists.xlsx +0 -0
- dsp_tools-16.6.1.post12/docs/assets/data_model_templates/rosetta (rosetta)/properties.xlsx +0 -0
- dsp_tools-16.6.1.post12/docs/assets/data_model_templates/rosetta (rosetta)/resources.xlsx +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-columns-correct.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-columns-incorrect.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-english.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-german.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-node-missing-node.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-sorting-incorrect.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-list-translation-incorrect.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-lists.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-properties.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-resources-details.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2json-resources-overview.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2xml-closeup.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2xml-module-docstring.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2xml-raw-data-category.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-excel2xml.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/images/img-xml-grid-for-geometry-prop.png +0 -0
- dsp_tools-16.6.1.post12/docs/assets/style/theme.css +0 -28
- dsp_tools-16.6.1.post12/docs/changelog.md +0 -1
- dsp_tools-16.6.1.post12/docs/cli-commands.md +0 -687
- dsp_tools-16.6.1.post12/docs/developers/architecture.md +0 -182
- dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/code-quality-tools.md +0 -24
- dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/general-formatting.md +0 -14
- dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-docstring-formatting.md +0 -79
- dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-formatting.md +0 -38
- dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-linting.md +0 -62
- dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-see-also.md +0 -53
- dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/python-type-checking.md +0 -35
- dsp_tools-16.6.1.post12/docs/developers/code-quality-tools/security.md +0 -38
- dsp_tools-16.6.1.post12/docs/developers/decision-log.md +0 -51
- dsp_tools-16.6.1.post12/docs/developers/index.md +0 -9
- dsp_tools-16.6.1.post12/docs/developers/mkdocs.md +0 -86
- dsp_tools-16.6.1.post12/docs/developers/packaging.md +0 -123
- dsp_tools-16.6.1.post12/docs/developers/user-data.md +0 -101
- dsp_tools-16.6.1.post12/docs/excel2xml-module.md +0 -408
- dsp_tools-16.6.1.post12/docs/file-formats/excel2json.md +0 -441
- dsp_tools-16.6.1.post12/docs/file-formats/excel2xml.md +0 -26
- dsp_tools-16.6.1.post12/docs/file-formats/json-project/caveats.md +0 -69
- dsp_tools-16.6.1.post12/docs/file-formats/json-project/ontologies.md +0 -989
- dsp_tools-16.6.1.post12/docs/file-formats/json-project/overview.md +0 -779
- dsp_tools-16.6.1.post12/docs/file-formats/xml-data-file.md +0 -1383
- dsp_tools-16.6.1.post12/docs/index.md +0 -109
- dsp_tools-16.6.1.post12/docs/special-workflows/incremental-xmlupload.md +0 -94
- dsp_tools-16.6.1.post12/docs/start-stack.md +0 -80
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/advanced-set-up.md +0 -97
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/config-options.md +0 -3
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/dsp-base-resources/audio-segment-resource.md +0 -4
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/dsp-base-resources/link-resource.md +0 -4
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/dsp-base-resources/region-resource.md +0 -4
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/dsp-base-resources/video-segment-resource.md +0 -4
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/helpers.md +0 -1
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/licenses/other.md +0 -3
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/licenses/recommended.md +0 -3
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/resource.md +0 -3
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/value-checkers.md +0 -1
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/value-converters.md +0 -1
- dsp_tools-16.6.1.post12/docs/xmllib-api-reference/xmlroot.md +0 -3
- dsp_tools-16.6.1.post12/justfile +0 -165
- dsp_tools-16.6.1.post12/k6/.gitignore +0 -3
- dsp_tools-16.6.1.post12/k6/README.md +0 -59
- dsp_tools-16.6.1.post12/k6/justfile +0 -31
- dsp_tools-16.6.1.post12/k6/tests/excel2json.js +0 -40
- dsp_tools-16.6.1.post12/mkdocs.yml +0 -104
- dsp_tools-16.6.1.post12/scripts/bump_version.py +0 -64
- dsp_tools-16.6.1.post12/scripts/markdown_link_validator.py +0 -35
- dsp_tools-16.6.1.post12/src/dsp_tools/cli/call_action.py +0 -294
- dsp_tools-16.6.1.post12/src/dsp_tools/clients/authentication_client_live.py +0 -51
- dsp_tools-16.6.1.post12/src/dsp_tools/commands/project/create/project_create_lists.py +0 -200
- dsp_tools-16.6.1.post12/src/dsp_tools/commands/rosetta.py +0 -124
- dsp_tools-16.6.1.post12/src/dsp_tools/commands/template.py +0 -30
- dsp_tools-16.6.1.post12/src/dsp_tools/commands/validate_data/api_clients.py +0 -124
- dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/models/formatted_text_value.py +0 -35
- dsp_tools-16.6.1.post12/src/dsp_tools/commands/xmlupload/project_client.py +0 -58
- dsp_tools-16.6.1.post12/src/dsp_tools/config/logger_config.py +0 -41
- dsp_tools-16.6.1.post12/src/dsp_tools/resources/0100-template-repo/template.json +0 -45
- dsp_tools-16.6.1.post12/src/dsp_tools/resources/0100-template-repo/template.xml +0 -15
- dsp_tools-16.6.1.post12/src/dsp_tools/utils/data_formats/iri_util.py +0 -14
- dsp_tools-16.6.1.post12/src/dsp_tools/utils/json_parsing.py +0 -36
- dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/internal/type_aliases.py +0 -11
- dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/models/config_options.py +0 -110
- dsp_tools-16.6.1.post12/src/dsp_tools/xmllib/value_converters.py +0 -146
- dsp_tools-16.6.1.post12/test/benchmarking/test_stash_circular_references.py +0 -38
- dsp_tools-16.6.1.post12/test/conftest.py +0 -38
- dsp_tools-16.6.1.post12/test/distribution/test_cli_deps_resources.py +0 -101
- dsp_tools-16.6.1.post12/test/distribution/test_xmllib.py +0 -23
- dsp_tools-16.6.1.post12/test/e2e/commands/conftest.py +0 -23
- dsp_tools-16.6.1.post12/test/e2e/commands/ingest_xmlupload/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/e2e/commands/ingest_xmlupload/test_ingest_xmlupload.py +0 -98
- dsp_tools-16.6.1.post12/test/e2e/commands/test_create.py +0 -198
- dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/conftest.py +0 -36
- dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_edge_cases.py +0 -186
- dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_generic_correct.py +0 -81
- dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_generic_violations.py +0 -541
- dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_generic_warning_and_info.py +0 -153
- dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/test_systematic.py +0 -30
- dsp_tools-16.6.1.post12/test/e2e/commands/validate_data/util.py +0 -24
- dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/conftest.py +0 -125
- dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/test_permissions.py +0 -160
- dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/test_resources.py +0 -214
- dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/test_values.py +0 -430
- dsp_tools-16.6.1.post12/test/e2e/commands/xmlupload/utils.py +0 -48
- dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/artifacts.py +0 -32
- dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/containers.py +0 -171
- dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/ports.py +0 -46
- dsp_tools-16.6.1.post12/test/e2e/setup_testcontainers/setup.py +0 -71
- dsp_tools-16.6.1.post12/test/integration/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/commands/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/commands/excel2json/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_json_header.py +0 -71
- dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_lists.py +0 -120
- dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_project.py +0 -63
- dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_properties.py +0 -356
- dsp_tools-16.6.1.post12/test/integration/commands/excel2json/test_resources.py +0 -248
- dsp_tools-16.6.1.post12/test/integration/commands/excel2xml/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/commands/excel2xml/test_excel2xml_cli.py +0 -213
- dsp_tools-16.6.1.post12/test/integration/commands/ingest_xmlupload/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/commands/ingest_xmlupload/test_ingest_xmlupload.py +0 -53
- dsp_tools-16.6.1.post12/test/integration/commands/project/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/commands/project/test_create_project.py +0 -177
- dsp_tools-16.6.1.post12/test/integration/commands/project/test_models_project.py +0 -54
- dsp_tools-16.6.1.post12/test/integration/commands/project/test_project_create_default_permissions.py +0 -152
- dsp_tools-16.6.1.post12/test/integration/commands/test_generate_templates.py +0 -32
- dsp_tools-16.6.1.post12/test/integration/commands/test_rosetta.py +0 -22
- dsp_tools-16.6.1.post12/test/integration/commands/test_shacl_cli_validator.py +0 -39
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/authentication_client_mock.py +0 -10
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/connection_mock.py +0 -55
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/stash/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/stash/test_upload_stash_with_mock.py +0 -234
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_list_client_live.py +0 -256
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_project_client_live.py +0 -37
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_resource_creation.py +0 -562
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_upload_config.py +0 -22
- dsp_tools-16.6.1.post12/test/integration/commands/xmlupload/test_upload_state.py +0 -33
- dsp_tools-16.6.1.post12/test/integration/utils/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/utils/xml_parsing/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/utils/xml_parsing/test_parse_clean_validate_xml.py +0 -199
- dsp_tools-16.6.1.post12/test/integration/xmllib/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/integration/xmllib/test_helpers.py +0 -67
- dsp_tools-16.6.1.post12/test/integration/xmllib/test_internal_helpers.py +0 -57
- dsp_tools-16.6.1.post12/test/legacy_e2e/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_create_lists.py +0 -45
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_group.py +0 -79
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_listnode.py +0 -129
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_ontology.py +0 -66
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_propertyclass.py +0 -46
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_resourceclass.py +0 -84
- dsp_tools-16.6.1.post12/test/legacy_e2e/commands/project/test_user.py +0 -95
- dsp_tools-16.6.1.post12/test/legacy_e2e/test_create_get_xmlupload.py +0 -510
- dsp_tools-16.6.1.post12/test/unittests/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/cli/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/cli/test_cli_with_mock.py +0 -807
- dsp_tools-16.6.1.post12/test/unittests/cli/test_helper_functions.py +0 -193
- dsp_tools-16.6.1.post12/test/unittests/clients/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/clients/test_connection_live.py +0 -351
- dsp_tools-16.6.1.post12/test/unittests/clients/test_legal_info_live.py +0 -177
- dsp_tools-16.6.1.post12/test/unittests/commands/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/conftest.py +0 -1
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/json_header_fixtures.py +0 -247
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/conftest.py +0 -1
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/fixtures_excel_sheets.py +0 -404
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/test_compliance_checks.py +0 -578
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/test_make_lists.py +0 -570
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/lists/test_utils.py +0 -105
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_json_header.py +0 -581
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_models_json_header.py +0 -153
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_models_lists_serialise.py +0 -118
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_properties.py +0 -357
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_resources.py +0 -228
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2json/test_utils.py +0 -264
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_escaped_chars.py +0 -37
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_list_mappings.py +0 -56
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_make_props.py +0 -629
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_prepare_value.py +0 -46
- dsp_tools-16.6.1.post12/test/unittests/commands/excel2xml/excel2xml_lib/test_resource_types.py +0 -146
- dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_apply_ingest_id.py +0 -85
- dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_bulk_ingest_client.py +0 -175
- dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_filechecker.py +0 -122
- dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_upload_failures.py +0 -80
- dsp_tools-16.6.1.post12/test/unittests/commands/ingest_xmlupload/test_user_information.py +0 -111
- dsp_tools-16.6.1.post12/test/unittests/commands/project/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/project/get.py +0 -62
- dsp_tools-16.6.1.post12/test/unittests/commands/project/test_parse_project.py +0 -77
- dsp_tools-16.6.1.post12/test/unittests/commands/project/test_project_validate/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/project/test_project_validate/test_default_permissions_overrule.py +0 -329
- dsp_tools-16.6.1.post12/test/unittests/commands/project/test_project_validate/test_project_validate.py +0 -55
- dsp_tools-16.6.1.post12/test/unittests/commands/test_id2iri.py +0 -246
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/conftest.py +0 -3
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/constants.py +0 -20
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/fixtures/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/fixtures/lists.py +0 -89
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/fixtures/onto.py +0 -331
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/fixtures/validation_result.py +0 -1467
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/models/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/models/test_api_response.py +0 -24
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/sparql/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/sparql/test_cardinality_shacl.py +0 -259
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/sparql/test_legal_info_shacl.py +0 -50
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/sparql/test_value_shacl.py +0 -212
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_api_clients.py +0 -121
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_get_rdf_like_data.py +0 -570
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_get_user_validation_message.py +0 -437
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_make_data_graph.py +0 -437
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_query_validation_result.py +0 -600
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_reformat_validation_results.py +0 -209
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/test_validate_data.py +0 -60
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/validation/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/validation/test_check_duplicate_files.py +0 -131
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/validation/test_check_for_unknown_classes.py +0 -113
- dsp_tools-16.6.1.post12/test/unittests/commands/validate_data/validation/test_validate_ontology.py +0 -29
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/get_processed_resources/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/get_processed_resources/test_get_processed_resources.py +0 -613
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/get_processed_resources/test_transform_input_values.py +0 -152
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/test_jsonld_utils.py +0 -87
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/test_make_file_value.py +0 -167
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/test_make_resource_and_values.py +0 -103
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/make_rdf_graph/test_make_values.py +0 -344
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/models/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/models/test_ingest.py +0 -67
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/models/test_input_problems.py +0 -105
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_analyse_circular_reference_graph.py +0 -373
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_create_info_for_graph_from_intermediary_resource.py +0 -165
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_stash_circular_references_from_intermediary_resource.py +0 -156
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_upload_stashed_resptr_props.py +0 -38
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/stash/test_upload_stashed_xml_texts.py +0 -156
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_iiif_uri_validator.py +0 -131
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_iri_resolver.py +0 -38
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_resource_creation.py +0 -38
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_upload_config.py +0 -39
- dsp_tools-16.6.1.post12/test/unittests/commands/xmlupload/test_xmlupload.py +0 -43
- dsp_tools-16.6.1.post12/test/unittests/error/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/error/test_xmllib_warnings_util.py +0 -116
- dsp_tools-16.6.1.post12/test/unittests/error/warnings.log +0 -0
- dsp_tools-16.6.1.post12/test/unittests/legacy_models/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/legacy_models/test_langstring.py +0 -101
- dsp_tools-16.6.1.post12/test/unittests/utils/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/test_date_util.py +0 -270
- dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/test_iri_util.py +0 -20
- dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/test_shared.py +0 -59
- dsp_tools-16.6.1.post12/test/unittests/utils/data_formats/test_uri_util.py +0 -77
- dsp_tools-16.6.1.post12/test/unittests/utils/test_request_utils.py +0 -33
- dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/conftest.py +0 -1
- dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/fixtures_parse_resource.py +0 -160
- dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/test_get_lookups.py +0 -42
- dsp_tools-16.6.1.post12/test/unittests/utils/xml_parsing/test_get_parsed_resources.py +0 -761
- dsp_tools-16.6.1.post12/test/unittests/xmllib/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_checkers.py +0 -66
- dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_input_converters.py +0 -50
- dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_serialise_file_value.py +0 -121
- dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_serialise_resource.py +0 -181
- dsp_tools-16.6.1.post12/test/unittests/xmllib/internal/test_serialise_values.py +0 -358
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/__init__.py +0 -0
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/test_file_values.py +0 -129
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/test_geometry.py +0 -84
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/test_migration_metadata.py +0 -54
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/internal/test_values.py +0 -237
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/test_dsp_base_resources.py +0 -120
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/test_resource.py +0 -504
- dsp_tools-16.6.1.post12/test/unittests/xmllib/models/test_root.py +0 -410
- dsp_tools-16.6.1.post12/test/unittests/xmllib/test_helpers.py +0 -914
- dsp_tools-16.6.1.post12/test/unittests/xmllib/test_value_checkers.py +0 -267
- dsp_tools-16.6.1.post12/test/unittests/xmllib/test_value_converters.py +0 -47
- dsp_tools-16.6.1.post12/testdata/bitstreams/README.txt +0 -4
- 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
- dsp_tools-16.6.1.post12/testdata/bitstreams/test with uppercase extension.JPG +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test with whitespaces.png +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test,with,multiple,commas.png +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.7z +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.csv +0 -2
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.doc +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.docx +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.epub +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.gif +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.gz +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.gzip +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.htm +0 -10
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.html +0 -10
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.jp2 +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.jpeg +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.jpg +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.json +0 -1
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.mp3 +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.mp4 +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.odd +0 -6
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.pdf +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.png +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.ppt +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.pptx +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.rng +0 -7
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.tar +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.tar.gz +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.tgz +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.tif +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.tiff +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.txt +0 -5
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.wav +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.with.multiple.dots.png +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.xls +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.xml +0 -6
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.xsd +0 -36
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.xsl +0 -18
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.z +0 -0
- dsp_tools-16.6.1.post12/testdata/bitstreams/test.zip +0 -0
- dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/dsp-ingest.xml +0 -68
- dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/dsp_ingest_no_mapping.xml +0 -4
- 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
- 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
- dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/e2e-sample-project/data.xml +0 -40
- dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/e2e-sample-project/project.json +0 -50
- dsp_tools-16.6.1.post12/testdata/dsp-ingest-data/mapping-00A2.csv +0 -5
- dsp_tools-16.6.1.post12/testdata/e2e/admin_user_data.ttl +0 -16
- dsp_tools-16.6.1.post12/testdata/e2e/repo_config.ttl +0 -50
- dsp_tools-16.6.1.post12/testdata/e2e/sipi.docker-config.lua +0 -14
- dsp_tools-16.6.1.post12/testdata/excel2json/excel2json-expected-output.json +0 -1151
- dsp_tools-16.6.1.post12/testdata/excel2json/excel2json_files/.hidden_file +0 -1
- dsp_tools-16.6.1.post12/testdata/excel2json/excel2json_files/json_header.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/excel2json_files/lists/list3.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/excel2json_files/lists/lists.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/expected_json_header.json +0 -78
- dsp_tools-16.6.1.post12/testdata/excel2json/lists-output-expected.json +0 -194
- dsp_tools-16.6.1.post12/testdata/excel2json/lists-section-expanded.json +0 -73
- dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-monolingual/de.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-multilingual/de.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-multilingual/en.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-multilingual/fr.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/old-lists-multilingual-output-expected.json +0 -102
- dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/.hidden_file +0 -1
- dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/lists/de.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/lists/en.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/lists/fr.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/test-name (test_label)/.hidden_file +0 -1
- dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/test-name (test_label)/properties.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2json/old_excel2json_files/test-name (test_label)/resources.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2xml/excel2xml-expected-output.xml +0 -140
- dsp_tools-16.6.1.post12/testdata/excel2xml/excel2xml-testdata.csv +0 -57
- dsp_tools-16.6.1.post12/testdata/excel2xml/excel2xml-testdata.xls +0 -0
- dsp_tools-16.6.1.post12/testdata/excel2xml/excel2xml-testdata.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/id2iri/remove-resources/data.xml +0 -44
- dsp_tools-16.6.1.post12/testdata/id2iri/remove-resources/mapping.json +0 -4
- dsp_tools-16.6.1.post12/testdata/id2iri/test-id2iri-data.xml +0 -71
- dsp_tools-16.6.1.post12/testdata/id2iri/test-id2iri-mapping.json +0 -6
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/bitstreams/test.gif +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/bitstreams/test.rtf +0 -20
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/json_header_empty_sheet.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/json_header_missing_sheet.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_list_ids/list_duplicate_1.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_list_ids/list_duplicate_2.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_listname/list_duplicate_1.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_listname/list_duplicate_2.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_duplicate_node_ids/list_duplicate_node_ids.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_invalid_shape/list_missing_translation_column.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/lists_missing_translations/list_missing_translation_cell.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-1/de.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-1/en.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-1/fr.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-2/de.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-2/en.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/old-lists-invalid-2/fr.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-duplicate-name.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-gui_attribute_format.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-gui_attribute_values.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-gui_element.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-object.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/properties-invalid-super.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-duplicate-classes-sheet.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-duplicate-name.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-invalid-cardinality.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-invalid-missing-sheet.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-invalid-property.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2json/resources-invalid-super.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/boolean-prop-two-values.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/empty-property.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/id-propname-both.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/id-propname-none.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/missing-prop-permissions.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/missing-resource-label.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/missing-resource-permissions.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/missing-restype.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/no-bitstream-permissions.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/nonexisting-proptype.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/single-invalid-value-for-property.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/excel2xml/start-with-property-row.xlsx +0 -0
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/circular-ontology.json +0 -123
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/duplicate-listnames.json +0 -68
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/duplicate-property.json +0 -76
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/duplicate-resource.json +0 -77
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/invalid-super-property.json +0 -49
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/nonexisting-cardinality.json +0 -54
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/nonexisting-super-property.json +0 -65
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/json-project/nonexisting-super-resource.json +0 -65
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/duplicate-ark.xml +0 -23
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/duplicate-iri.xml +0 -23
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/duplicate-res-id.xml +0 -43
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/empty-label.xml +0 -15
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/invalid-resource-tag.xml +0 -15
- dsp_tools-16.6.1.post12/testdata/invalid-testdata/xml-data/invalid-resptr-characters.xml +0 -17
- dsp_tools-16.6.1.post12/testdata/json-project/test-list-lookup.json +0 -188
- dsp_tools-16.6.1.post12/testdata/json-project/test-project-e2e.json +0 -136
- dsp_tools-16.6.1.post12/testdata/json-project/test-project-limited-view.json +0 -74
- dsp_tools-16.6.1.post12/testdata/json-project/test-project-minimal.json +0 -43
- dsp_tools-16.6.1.post12/testdata/json-project/test-project-systematic.json +0 -876
- dsp_tools-16.6.1.post12/testdata/json-project/test_circles_onto.json +0 -150
- dsp_tools-16.6.1.post12/testdata/validate-data/erroneous_ontology/erroneous_ontology.xml +0 -96
- dsp_tools-16.6.1.post12/testdata/validate-data/erroneous_ontology/project_erroneous_ontology.json +0 -206
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/cardinality_correct.xml +0 -48
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/cardinality_violation.xml +0 -53
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/content_correct.xml +0 -210
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/content_violation.xml +0 -211
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/dsp_inbuilt_correct.xml +0 -249
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/dsp_inbuilt_violation.xml +0 -288
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/every_violation_combination_once.xml +0 -291
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/file_value_correct.xml +0 -328
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/file_value_violation.xml +0 -165
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/minimal_correct.xml +0 -239
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/no_violations_with_info.xml +0 -31
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/no_violations_with_warnings.xml +0 -74
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/project.json +0 -699
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/unique_value_violation.xml +0 -77
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/unknown_classes.xml +0 -17
- dsp_tools-16.6.1.post12/testdata/validate-data/generic/value_type_violation.xml +0 -109
- dsp_tools-16.6.1.post12/testdata/validate-data/inheritance/inheritance_correct.xml +0 -39
- dsp_tools-16.6.1.post12/testdata/validate-data/inheritance/inheritance_violation.xml +0 -50
- dsp_tools-16.6.1.post12/testdata/validate-data/inheritance/project_inheritance.json +0 -131
- dsp_tools-16.6.1.post12/testdata/validate-data/knora-api-subset.ttl +0 -160
- dsp_tools-16.6.1.post12/testdata/validate-data/onto.ttl +0 -1806
- dsp_tools-16.6.1.post12/testdata/validate-data/onto_for_cardinality_checks.ttl +0 -1300
- dsp_tools-16.6.1.post12/testdata/validate-data/shacl_cli/data.ttl +0 -12
- dsp_tools-16.6.1.post12/testdata/validate-data/shacl_cli/shacl.ttl +0 -22
- dsp_tools-16.6.1.post12/testdata/validate-data/special_characters/project_special_characters.json +0 -138
- dsp_tools-16.6.1.post12/testdata/validate-data/special_characters/special_characters_correct.xml +0 -46
- dsp_tools-16.6.1.post12/testdata/validate-data/special_characters/special_characters_violation.xml +0 -53
- dsp_tools-16.6.1.post12/testdata/xml-data/generic_project_text_parsing.xml +0 -158
- dsp_tools-16.6.1.post12/testdata/xml-data/test-circular-references.xml +0 -306
- dsp_tools-16.6.1.post12/testdata/xml-data/test-data-e2e.xml +0 -136
- dsp_tools-16.6.1.post12/testdata/xml-data/test-data-minimal.xml +0 -14
- dsp_tools-16.6.1.post12/testdata/xml-data/test-data-systematic.xml +0 -1108
- dsp_tools-16.6.1.post12/uv.lock +0 -1908
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/__init__.py +0 -0
- {dsp_tools-16.6.1.post12/scripts → dsp_tools-18.1.0.post10/src/dsp_tools/cli}/__init__.py +0 -0
- {dsp_tools-16.6.1.post12/src/dsp_tools/cli → dsp_tools-18.1.0.post10/src/dsp_tools/clients}/__init__.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/authentication_client.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/connection.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/connection_live.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/clients/legal_info_client.py +0 -0
- {dsp_tools-16.6.1.post12/src/dsp_tools/clients → dsp_tools-18.1.0.post10/src/dsp_tools/commands}/__init__.py +0 -0
- {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
- {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
- {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
- {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
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/compliance_checks.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/models/deserialise.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/models/input_error.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/lists/utils.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/models/list_node_name.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2json/old_lists.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2xml/__init__.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2xml/excel2xml_cli.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/excel2xml/propertyelement.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/id2iri.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/bulk_ingest_client.py +0 -0
- {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
- {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
- {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
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/ingest_xmlupload/upload_files/filechecker.py +0 -0
- {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
- {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
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/create/parse_project.py +0 -0
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/group.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/helpers.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/model.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/ontology.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/project.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/propertyclass.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/legacy_models/user.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/models/permissions_client.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/project/models/project_definition.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/CLAUDE.md +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/constants.py +0 -0
- {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
- {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
- {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
- {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
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/sparql/cardinality_shacl.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/sparql/construct_shacl.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/validate_data/utils.py +0 -0
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/CLAUDE.md +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/iri_resolver.py +0 -0
- {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
- {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
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/bitstream_info.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/lookup_models.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/permission.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/permissions_parsed.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/processed/file_values.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/processed/res.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/processed/values.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/rdf_models.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/models/upload_state.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/prepare_xml_input/ark2iri.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/resource_create_client.py +0 -0
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/graph_models.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/stash_circular_references.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/stash/stash_models.py +0 -0
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/commands/xmlupload/write_diagnostic_info.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/config/warnings_config.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/problems.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/xmllib_errors.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/xmllib_warnings.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/xmllib_warnings_util.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/error/xsd_validation_error_msg.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/legacy_models/datetimestamp.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/legacy_models/langstring.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/legacy_models/projectContext.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/py.typed +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/lists-only.json +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/properties-only.json +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/schema/resources-only.json +0 -0
- {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
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/validate_data/shacl-cli-image.yml +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/resources/validate_data/validate-ontology.ttl +0 -0
- {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
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/data_formats/date_util.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/data_formats/shared.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/data_formats/uri_util.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/rdflib_constants.py +0 -0
- {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
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/xml_parsing/get_lookups.py +0 -0
- {dsp_tools-16.6.1.post12/test → dsp_tools-18.1.0.post10/src/dsp_tools/utils/xml_parsing/models}/__init__.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/utils/xml_parsing/models/parsed_resource.py +0 -0
- {dsp_tools-16.6.1.post12/test/benchmarking → dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/internal}/__init__.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/checkers.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/constants.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/internal/input_converters.py +0 -0
- {dsp_tools-16.6.1.post12/test/distribution → dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models}/__init__.py +0 -0
- {dsp_tools-16.6.1.post12/test/e2e → dsp_tools-18.1.0.post10/src/dsp_tools/xmllib/models/internal}/__init__.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/geometry.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/migration_metadata.py +0 -0
- {dsp_tools-16.6.1.post12 → dsp_tools-18.1.0.post10}/src/dsp_tools/xmllib/models/internal/serialise_permissions.py +0 -0
- {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
|
+
[](https://pypi.org/project/dsp-tools/)
|
|
38
|
+
[](https://pypi.org/project/dsp-tools/)
|
|
39
|
+
[](https://pypi.org/project/dsp-tools/)
|
|
40
|
+
[](https://github.com/astral-sh/ruff)
|
|
41
|
+
[](https://github.com/astral-sh/uv)
|
|
42
|
+
[](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://pypi.org/project/dsp-tools/)
|
|
64
|
+
> The most recent version of DSP-TOOLS is
|
|
65
|
+
> [](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
|
+
[](https://pypi.org/project/dsp-tools/)
|
|
2
|
+
[](https://pypi.org/project/dsp-tools/)
|
|
3
|
+
[](https://pypi.org/project/dsp-tools/)
|
|
4
|
+
[](https://github.com/astral-sh/ruff)
|
|
5
|
+
[](https://github.com/astral-sh/uv)
|
|
6
|
+
[](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://pypi.org/project/dsp-tools/)
|
|
28
|
+
> The most recent version of DSP-TOOLS is
|
|
29
|
+
> [](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 = "
|
|
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
|
|
55
|
-
|
|
56
|
-
|
|
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
|
-
[
|
|
62
|
-
dev
|
|
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
|