invenio-vocabularies 6.5.0__tar.gz → 6.7.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of invenio-vocabularies might be problematic. Click here for more details.

Files changed (429) hide show
  1. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/.github/workflows/tests.yml +1 -1
  2. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/CHANGES.rst +25 -0
  3. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/PKG-INFO +28 -1
  4. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/__init__.py +1 -1
  5. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/FundingModal.js +3 -27
  6. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/config.py +27 -1
  7. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/affiliations.py +2 -1
  8. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/config.py +21 -10
  9. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/datastreams.py +103 -1
  10. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/awards.py +2 -1
  11. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/datastreams.py +7 -0
  12. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/jsonschemas/awards/award-v1.0.0.json +9 -0
  13. {invenio-vocabularies-6.5.0/invenio_vocabularies/contrib/awards/mappings/v7 → invenio-vocabularies-6.7.0/invenio_vocabularies/contrib/awards/mappings/os-v1}/awards/award-v1.0.0.json +22 -1
  14. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/mappings/os-v2/awards/award-v1.0.0.json +22 -1
  15. {invenio-vocabularies-6.5.0/invenio_vocabularies/contrib/awards/mappings/os-v1 → invenio-vocabularies-6.7.0/invenio_vocabularies/contrib/awards/mappings/v7}/awards/award-v1.0.0.json +22 -1
  16. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/schema.py +9 -3
  17. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/config.py +19 -12
  18. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/funders.py +2 -1
  19. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/config.py +13 -10
  20. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/jsonschemas/names/name-v1.0.0.json +28 -5
  21. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/os-v1/names/name-v2.0.0.json +15 -0
  22. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/os-v2/names/name-v2.0.0.json +15 -0
  23. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/names.py +1 -1
  24. invenio-vocabularies-6.7.0/invenio_vocabularies/contrib/names/permissions.py +30 -0
  25. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/schema.py +11 -2
  26. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/services.py +23 -14
  27. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/config.py +14 -2
  28. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/datastreams.py +4 -0
  29. invenio-vocabularies-6.7.0/invenio_vocabularies/contrib/subjects/euroscivoc/datastreams.py +79 -0
  30. invenio-vocabularies-6.7.0/invenio_vocabularies/contrib/subjects/gemet/__init__.py +9 -0
  31. invenio-vocabularies-6.7.0/invenio_vocabularies/contrib/subjects/gemet/datastreams.py +109 -0
  32. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/jsonschemas/subjects/subject-v1.0.0.json +13 -2
  33. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mesh/datastreams.py +7 -2
  34. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/schema.py +18 -3
  35. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/datastreams/readers.py +99 -9
  36. invenio-vocabularies-6.7.0/invenio_vocabularies/datastreams/transformers.py +118 -0
  37. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/factories.py +15 -0
  38. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/jobs.py +15 -0
  39. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/jsonschemas/vocabularies/definitions-v1.0.0.json +9 -0
  40. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/config.py +1 -7
  41. invenio-vocabularies-6.7.0/invenio_vocabularies/services/generators.py +38 -0
  42. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/permissions.py +6 -1
  43. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies.egg-info/PKG-INFO +28 -1
  44. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies.egg-info/SOURCES.txt +5 -0
  45. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies.egg-info/entry_points.txt +1 -0
  46. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies.egg-info/requires.txt +8 -1
  47. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/setup.cfg +7 -1
  48. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/conftest.py +25 -1
  49. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/affiliations/test_affiliations_datastreams.py +118 -0
  50. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/names/conftest.py +29 -0
  51. invenio-vocabularies-6.7.0/tests/contrib/names/test_name_permissions.py +86 -0
  52. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/names/test_names_api.py +0 -10
  53. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/names/test_names_resource.py +1 -4
  54. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/euroscivoc/test_subjects_euroscivoc_datastream.py +12 -7
  55. invenio-vocabularies-6.7.0/tests/contrib/subjects/gemet/test_subjects_gemet_datastream.py +92 -0
  56. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/services/test_permissions.py +20 -0
  57. invenio-vocabularies-6.5.0/invenio_vocabularies/contrib/names/permissions.py +0 -20
  58. invenio-vocabularies-6.5.0/invenio_vocabularies/contrib/subjects/euroscivoc/datastreams.py +0 -171
  59. invenio-vocabularies-6.5.0/invenio_vocabularies/datastreams/transformers.py +0 -63
  60. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/.dockerignore +0 -0
  61. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/.editorconfig +0 -0
  62. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/.git-blame-ignore-revs +0 -0
  63. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/.github/workflows/i18n-pull.yml +0 -0
  64. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/.github/workflows/i18n-push.yml +0 -0
  65. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/.github/workflows/pypi-publish.yml +0 -0
  66. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/.tx/config +0 -0
  67. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/AUTHORS.rst +0 -0
  68. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/CONTRIBUTING.rst +0 -0
  69. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/INSTALL.rst +0 -0
  70. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/LICENSE +0 -0
  71. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/MANIFEST.in +0 -0
  72. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/README.rst +0 -0
  73. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/babel.ini +0 -0
  74. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/Makefile +0 -0
  75. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/api.rst +0 -0
  76. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/authors.rst +0 -0
  77. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/changes.rst +0 -0
  78. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/conf.py +0 -0
  79. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/configuration.rst +0 -0
  80. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/contributing.rst +0 -0
  81. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/index.rst +0 -0
  82. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/installation.rst +0 -0
  83. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/license.rst +0 -0
  84. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/make.bat +0 -0
  85. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/requirements.txt +0 -0
  86. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/docs/usage.rst +0 -0
  87. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/gen-migration.sh +0 -0
  88. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/administration/__init__.py +0 -0
  89. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/administration/views/__init__.py +0 -0
  90. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/administration/views/vocabularies.py +0 -0
  91. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/17c703ce1eb7_create_names_table.py +0 -0
  92. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/4a9a4fd235f8_create_vocabulary_schemes.py +0 -0
  93. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/4f365fced43f_create_vocabularies_tables.py +0 -0
  94. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/55a700f897b6_add_names_and_afiliations_pid_column.py +0 -0
  95. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/6312f33645c1_create_affiliations_table.py +0 -0
  96. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/676dd587542d_create_funders_vocabulary_table.py +0 -0
  97. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/8ff82dfb0be8_create_vocabularies_branch.py +0 -0
  98. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/__init__.py +0 -0
  99. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/alembic/e1146238edd3_create_awards_table.py +0 -0
  100. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/.eslintrc.yml +0 -0
  101. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/.prettierrc +0 -0
  102. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/index.js +0 -0
  103. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/package.json +0 -0
  104. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/AwardResults.js +0 -0
  105. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/CustomAwardForm.js +0 -0
  106. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/FunderDropdown.js +0 -0
  107. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/FundingField.js +0 -0
  108. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/FundingField.test.js +0 -0
  109. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/FundingFieldItem.js +0 -0
  110. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/NoAwardResults.js +0 -0
  111. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/Funding/index.js +0 -0
  112. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/forms/index.js +0 -0
  113. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/contrib/index.js +0 -0
  114. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/js/invenio_vocabularies/src/index.js +0 -0
  115. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/translations/invenio_vocabularies/i18next-scanner.config.js +0 -0
  116. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/translations/invenio_vocabularies/i18next.js +0 -0
  117. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/translations/invenio_vocabularies/messages/index.js +0 -0
  118. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/translations/invenio_vocabularies/package.json +0 -0
  119. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/translations/invenio_vocabularies/scripts/compileCatalog.js +0 -0
  120. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/assets/semantic-ui/translations/invenio_vocabularies/scripts/initCatalog.js +0 -0
  121. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/cli.py +0 -0
  122. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/__init__.py +0 -0
  123. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/__init__.py +0 -0
  124. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/api.py +0 -0
  125. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/facets.py +0 -0
  126. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/jsonschemas/__init__.py +0 -0
  127. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/jsonschemas/affiliations/affiliation-v1.0.0.json +0 -0
  128. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/__init__.py +0 -0
  129. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/os-v1/__init__.py +0 -0
  130. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/os-v1/affiliations/affiliation-v1.0.0.json +0 -0
  131. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/os-v1/affiliations/affiliation-v2.0.0.json +0 -0
  132. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/os-v2/__init__.py +0 -0
  133. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/os-v2/affiliations/affiliation-v1.0.0.json +0 -0
  134. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/os-v2/affiliations/affiliation-v2.0.0.json +0 -0
  135. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/v7/__init__.py +0 -0
  136. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/mappings/v7/affiliations/affiliation-v1.0.0.json +0 -0
  137. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/models.py +0 -0
  138. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/resources.py +0 -0
  139. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/schema.py +0 -0
  140. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/affiliations/services.py +0 -0
  141. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/__init__.py +0 -0
  142. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/api.py +0 -0
  143. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/config.py +0 -0
  144. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/jsonschemas/__init__.py +0 -0
  145. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/mappings/__init__.py +0 -0
  146. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/mappings/os-v1/__init__.py +0 -0
  147. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/mappings/os-v2/__init__.py +0 -0
  148. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/mappings/v7/__init__.py +0 -0
  149. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/models.py +0 -0
  150. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/resources.py +0 -0
  151. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/serializer.py +0 -0
  152. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/awards/services.py +0 -0
  153. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/common/__init__.py +0 -0
  154. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/common/openaire/__init__.py +0 -0
  155. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/common/openaire/datastreams.py +0 -0
  156. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/common/ror/__init__.py +0 -0
  157. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/common/ror/datastreams.py +0 -0
  158. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/__init__.py +0 -0
  159. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/api.py +0 -0
  160. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/datastreams.py +0 -0
  161. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/facets.py +0 -0
  162. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/jsonschemas/__init__.py +0 -0
  163. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/jsonschemas/funders/funder-v1.0.0.json +0 -0
  164. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/__init__.py +0 -0
  165. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/os-v1/__init__.py +0 -0
  166. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/os-v1/funders/funder-v1.0.0.json +0 -0
  167. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/os-v1/funders/funder-v2.0.0.json +0 -0
  168. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/os-v2/__init__.py +0 -0
  169. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/os-v2/funders/funder-v1.0.0.json +0 -0
  170. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/os-v2/funders/funder-v2.0.0.json +0 -0
  171. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/v7/__init__.py +0 -0
  172. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/mappings/v7/funders/funder-v1.0.0.json +0 -0
  173. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/models.py +0 -0
  174. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/resources.py +0 -0
  175. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/schema.py +0 -0
  176. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/serializer.py +0 -0
  177. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/funders/services.py +0 -0
  178. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/__init__.py +0 -0
  179. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/api.py +0 -0
  180. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/datastreams.py +0 -0
  181. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/jsonschemas/__init__.py +0 -0
  182. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/__init__.py +0 -0
  183. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/os-v1/__init__.py +0 -0
  184. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/os-v1/names/name-v1.0.0.json +0 -0
  185. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/os-v2/__init__.py +0 -0
  186. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/os-v2/names/name-v1.0.0.json +0 -0
  187. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/v7/__init__.py +0 -0
  188. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/mappings/v7/names/name-v1.0.0.json +0 -0
  189. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/models.py +0 -0
  190. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/resources.py +0 -0
  191. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/names/s3client.py +0 -0
  192. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/__init__.py +0 -0
  193. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/api.py +0 -0
  194. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/euroscivoc/__init__.py +0 -0
  195. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/facets.py +0 -0
  196. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/jsonschemas/__init__.py +0 -0
  197. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mappings/__init__.py +0 -0
  198. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mappings/os-v1/__init__.py +0 -0
  199. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mappings/os-v1/subjects/subject-v1.0.0.json +0 -0
  200. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mappings/os-v2/__init__.py +0 -0
  201. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mappings/os-v2/subjects/subject-v1.0.0.json +0 -0
  202. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mappings/v7/__init__.py +0 -0
  203. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mappings/v7/subjects/subject-v1.0.0.json +0 -0
  204. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/mesh/__init__.py +0 -0
  205. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/models.py +0 -0
  206. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/resources.py +0 -0
  207. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/services.py +0 -0
  208. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/contrib/subjects/subjects.py +0 -0
  209. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/datastreams/__init__.py +0 -0
  210. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/datastreams/datastreams.py +0 -0
  211. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/datastreams/errors.py +0 -0
  212. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/datastreams/factories.py +0 -0
  213. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/datastreams/tasks.py +0 -0
  214. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/datastreams/writers.py +0 -0
  215. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/datastreams/xml.py +0 -0
  216. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/ext.py +0 -0
  217. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/fixtures.py +0 -0
  218. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/proxies.py +0 -0
  219. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/__init__.py +0 -0
  220. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/api.py +0 -0
  221. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/jsonschemas/__init__.py +0 -0
  222. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/jsonschemas/vocabularies/vocabulary-v1.0.0.json +0 -0
  223. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/mappings/__init__.py +0 -0
  224. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/mappings/os-v1/__init__.py +0 -0
  225. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/mappings/os-v1/vocabularies/vocabulary-v1.0.0.json +0 -0
  226. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/mappings/os-v2/__init__.py +0 -0
  227. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/mappings/os-v2/vocabularies/vocabulary-v1.0.0.json +0 -0
  228. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/mappings/v7/__init__.py +0 -0
  229. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/mappings/v7/vocabularies/vocabulary-v1.0.0.json +0 -0
  230. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/models.py +0 -0
  231. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/pidprovider.py +0 -0
  232. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/systemfields/__init__.py +0 -0
  233. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/systemfields/pid.py +0 -0
  234. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/records/systemfields/relations.py +0 -0
  235. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/resources/__init__.py +0 -0
  236. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/resources/config.py +0 -0
  237. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/resources/resource.py +0 -0
  238. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/resources/schema.py +0 -0
  239. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/resources/serializer.py +0 -0
  240. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/__init__.py +0 -0
  241. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/components.py +0 -0
  242. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/custom_fields/__init__.py +0 -0
  243. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/custom_fields/subject.py +0 -0
  244. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/custom_fields/vocabulary.py +0 -0
  245. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/facets.py +0 -0
  246. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/querystr.py +0 -0
  247. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/results.py +0 -0
  248. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/schema.py +0 -0
  249. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/service.py +0 -0
  250. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/services/tasks.py +0 -0
  251. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/templates/semantic-ui/invenio_vocabularies/subjects.html +0 -0
  252. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/templates/semantic-ui/invenio_vocabularies/vocabularies-list.html +0 -0
  253. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/templates/semantic-ui/invenio_vocabularies/vocabulary-details.html +0 -0
  254. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/af/LC_MESSAGES/messages.mo +0 -0
  255. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/af/LC_MESSAGES/messages.po +0 -0
  256. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ar/LC_MESSAGES/messages.mo +0 -0
  257. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ar/LC_MESSAGES/messages.po +0 -0
  258. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/bg/LC_MESSAGES/messages.mo +0 -0
  259. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/bg/LC_MESSAGES/messages.po +0 -0
  260. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ca/LC_MESSAGES/messages.mo +0 -0
  261. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ca/LC_MESSAGES/messages.po +0 -0
  262. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/cs/LC_MESSAGES/messages.mo +0 -0
  263. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/cs/LC_MESSAGES/messages.po +0 -0
  264. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/da/LC_MESSAGES/messages.mo +0 -0
  265. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/da/LC_MESSAGES/messages.po +0 -0
  266. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/de/LC_MESSAGES/messages.mo +0 -0
  267. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/de/LC_MESSAGES/messages.po +0 -0
  268. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/de_AT/LC_MESSAGES/messages.mo +0 -0
  269. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/de_AT/LC_MESSAGES/messages.po +0 -0
  270. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/de_DE/LC_MESSAGES/messages.mo +0 -0
  271. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/de_DE/LC_MESSAGES/messages.po +0 -0
  272. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/el/LC_MESSAGES/messages.mo +0 -0
  273. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/el/LC_MESSAGES/messages.po +0 -0
  274. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/en/LC_MESSAGES/messages.mo +0 -0
  275. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/en/LC_MESSAGES/messages.po +0 -0
  276. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/en_AT/LC_MESSAGES/messages.mo +0 -0
  277. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/en_AT/LC_MESSAGES/messages.po +0 -0
  278. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/en_HU/LC_MESSAGES/messages.mo +0 -0
  279. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/en_HU/LC_MESSAGES/messages.po +0 -0
  280. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/es/LC_MESSAGES/messages.mo +0 -0
  281. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/es/LC_MESSAGES/messages.po +0 -0
  282. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/es_CU/LC_MESSAGES/messages.mo +0 -0
  283. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/es_CU/LC_MESSAGES/messages.po +0 -0
  284. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/es_MX/LC_MESSAGES/messages.mo +0 -0
  285. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/es_MX/LC_MESSAGES/messages.po +0 -0
  286. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/et/LC_MESSAGES/messages.mo +0 -0
  287. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/et/LC_MESSAGES/messages.po +0 -0
  288. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/et_EE/LC_MESSAGES/messages.mo +0 -0
  289. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/et_EE/LC_MESSAGES/messages.po +0 -0
  290. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fa/LC_MESSAGES/messages.mo +0 -0
  291. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fa/LC_MESSAGES/messages.po +0 -0
  292. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fa_IR/LC_MESSAGES/messages.mo +0 -0
  293. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fa_IR/LC_MESSAGES/messages.po +0 -0
  294. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fr/LC_MESSAGES/messages.mo +0 -0
  295. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fr/LC_MESSAGES/messages.po +0 -0
  296. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fr_CI/LC_MESSAGES/messages.mo +0 -0
  297. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fr_CI/LC_MESSAGES/messages.po +0 -0
  298. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fr_FR/LC_MESSAGES/messages.mo +0 -0
  299. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/fr_FR/LC_MESSAGES/messages.po +0 -0
  300. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/gl/LC_MESSAGES/messages.mo +0 -0
  301. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/gl/LC_MESSAGES/messages.po +0 -0
  302. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/hi_IN/LC_MESSAGES/messages.mo +0 -0
  303. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/hi_IN/LC_MESSAGES/messages.po +0 -0
  304. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/hr/LC_MESSAGES/messages.mo +0 -0
  305. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/hr/LC_MESSAGES/messages.po +0 -0
  306. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/hu/LC_MESSAGES/messages.mo +0 -0
  307. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/hu/LC_MESSAGES/messages.po +0 -0
  308. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/hu_HU/LC_MESSAGES/messages.mo +0 -0
  309. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/hu_HU/LC_MESSAGES/messages.po +0 -0
  310. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/it/LC_MESSAGES/messages.mo +0 -0
  311. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/it/LC_MESSAGES/messages.po +0 -0
  312. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ja/LC_MESSAGES/messages.mo +0 -0
  313. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ja/LC_MESSAGES/messages.po +0 -0
  314. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ka/LC_MESSAGES/messages.mo +0 -0
  315. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ka/LC_MESSAGES/messages.po +0 -0
  316. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/lt/LC_MESSAGES/messages.mo +0 -0
  317. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/lt/LC_MESSAGES/messages.po +0 -0
  318. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/messages.pot +0 -0
  319. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ne/LC_MESSAGES/messages.mo +0 -0
  320. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ne/LC_MESSAGES/messages.po +0 -0
  321. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/no/LC_MESSAGES/messages.mo +0 -0
  322. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/no/LC_MESSAGES/messages.po +0 -0
  323. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/pl/LC_MESSAGES/messages.mo +0 -0
  324. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/pl/LC_MESSAGES/messages.po +0 -0
  325. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/pt/LC_MESSAGES/messages.mo +0 -0
  326. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/pt/LC_MESSAGES/messages.po +0 -0
  327. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ro/LC_MESSAGES/messages.mo +0 -0
  328. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ro/LC_MESSAGES/messages.po +0 -0
  329. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ru/LC_MESSAGES/messages.mo +0 -0
  330. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/ru/LC_MESSAGES/messages.po +0 -0
  331. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/rw/LC_MESSAGES/messages.mo +0 -0
  332. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/rw/LC_MESSAGES/messages.po +0 -0
  333. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/sk/LC_MESSAGES/messages.mo +0 -0
  334. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/sk/LC_MESSAGES/messages.po +0 -0
  335. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/sv/LC_MESSAGES/messages.mo +0 -0
  336. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/sv/LC_MESSAGES/messages.po +0 -0
  337. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/sv_SE/LC_MESSAGES/messages.mo +0 -0
  338. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/sv_SE/LC_MESSAGES/messages.po +0 -0
  339. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/tr/LC_MESSAGES/messages.mo +0 -0
  340. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/tr/LC_MESSAGES/messages.po +0 -0
  341. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/uk/LC_MESSAGES/messages.mo +0 -0
  342. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/uk/LC_MESSAGES/messages.po +0 -0
  343. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/uk_UA/LC_MESSAGES/messages.mo +0 -0
  344. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/uk_UA/LC_MESSAGES/messages.po +0 -0
  345. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/zh_CN/LC_MESSAGES/messages.mo +0 -0
  346. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/zh_CN/LC_MESSAGES/messages.po +0 -0
  347. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/zh_TW/LC_MESSAGES/messages.mo +0 -0
  348. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/translations/zh_TW/LC_MESSAGES/messages.po +0 -0
  349. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/views.py +0 -0
  350. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies/webpack.py +0 -0
  351. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies.egg-info/dependency_links.txt +0 -0
  352. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies.egg-info/not-zip-safe +0 -0
  353. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/invenio_vocabularies.egg-info/top_level.txt +0 -0
  354. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/pyproject.toml +0 -0
  355. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/requirements-feature.txt +0 -0
  356. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/run-js-linter.sh +0 -0
  357. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/run-tests.sh +0 -0
  358. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/setup.py +0 -0
  359. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/affiliations/conftest.py +0 -0
  360. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/affiliations/test_affiliations_api.py +0 -0
  361. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/affiliations/test_affiliations_jsonschema.py +0 -0
  362. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/affiliations/test_affiliations_resource.py +0 -0
  363. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/affiliations/test_affiliations_schema.py +0 -0
  364. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/affiliations/test_affiliations_service.py +0 -0
  365. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/awards/conftest.py +0 -0
  366. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/awards/test_awards_api.py +0 -0
  367. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/awards/test_awards_datastreams.py +0 -0
  368. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/awards/test_awards_jsonschema.py +0 -0
  369. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/awards/test_awards_resource.py +0 -0
  370. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/awards/test_awards_schema.py +0 -0
  371. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/awards/test_awards_service.py +0 -0
  372. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/common/openaire/test_openaire_datastreams.py +0 -0
  373. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/common/ror/test_ror_datastreams.py +0 -0
  374. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/funders/conftest.py +0 -0
  375. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/funders/test_funders_api.py +0 -0
  376. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/funders/test_funders_datastreams.py +0 -0
  377. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/funders/test_funders_jsonschema.py +0 -0
  378. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/funders/test_funders_resource.py +0 -0
  379. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/funders/test_funders_schema.py +0 -0
  380. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/funders/test_funders_service.py +0 -0
  381. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/names/test_names_datastreams.py +0 -0
  382. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/names/test_names_jsonschema.py +0 -0
  383. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/names/test_names_schema.py +0 -0
  384. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/names/test_names_service.py +0 -0
  385. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/conftest.py +0 -0
  386. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/test_subjects_api.py +0 -0
  387. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/test_subjects_datastreams.py +0 -0
  388. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/test_subjects_facets.py +0 -0
  389. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/test_subjects_jsonschema.py +0 -0
  390. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/test_subjects_resource.py +0 -0
  391. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/test_subjects_schema.py +0 -0
  392. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/contrib/subjects/test_subjects_service.py +0 -0
  393. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/custom_fields/test_custom_fields.py +0 -0
  394. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/datastreams/conftest.py +0 -0
  395. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/datastreams/test_datastreams.py +0 -0
  396. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/datastreams/test_datastreams_tasks.py +0 -0
  397. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/datastreams/test_fixtures.py +0 -0
  398. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/datastreams/test_readers.py +0 -0
  399. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/datastreams/test_transformers.py +0 -0
  400. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/datastreams/test_writers.py +0 -0
  401. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/datastreams/vocabularies.yaml +0 -0
  402. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/__init__.py +0 -0
  403. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/api.py +0 -0
  404. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/jsonschemas/__init__.py +0 -0
  405. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/jsonschemas/records/record-v1.0.0.json +0 -0
  406. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/mappings/__init__.py +0 -0
  407. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/mappings/v6/__init__.py +0 -0
  408. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/mappings/v6/records/record-v1.0.0.json +0 -0
  409. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/mappings/v7/__init__.py +0 -0
  410. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/mappings/v7/records/record-v1.0.0.json +0 -0
  411. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/mock_module/models.py +0 -0
  412. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/records/conftest.py +0 -0
  413. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/records/test_api.py +0 -0
  414. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/records/test_jsonschema.py +0 -0
  415. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/records/test_models.py +0 -0
  416. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/records/test_relationship.py +0 -0
  417. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/resources/conftest.py +0 -0
  418. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/resources/test_resources_get.py +0 -0
  419. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/resources/test_resources_l10n.py +0 -0
  420. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/resources/test_resources_search.py +0 -0
  421. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/resources/test_tasks_resources.py +0 -0
  422. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/services/conftest.py +0 -0
  423. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/services/test_labels.py +0 -0
  424. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/services/test_schema.py +0 -0
  425. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/services/test_service.py +0 -0
  426. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/test_alembic.py +0 -0
  427. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/test_cli.py +0 -0
  428. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/test_factory.py +0 -0
  429. {invenio-vocabularies-6.5.0 → invenio-vocabularies-6.7.0}/tests/test_invenio_vocabularies.py +0 -0
@@ -34,7 +34,7 @@ jobs:
34
34
  Python:
35
35
  uses: inveniosoftware/workflows/.github/workflows/tests-python.yml@master
36
36
  with:
37
- extras: "tests,oaipmh"
37
+ extras: "tests,oaipmh,rdf,sparql"
38
38
 
39
39
  JS:
40
40
  uses: inveniosoftware/workflows/.github/workflows/tests-js.yml@master
@@ -8,6 +8,31 @@
8
8
  Changes
9
9
  =======
10
10
 
11
+ Version v6.7.0 (released 2024-11-27)
12
+
13
+ - contrib: improve search accuracy for names, funders, affiliations
14
+ - names: add affiliation acronym in mappings and schema
15
+ * Dereferences the affiliation `acronym` when indexing names and serving
16
+ REST API results. This is useful for disambiguating authors in search.
17
+ - affiliations: move RDF and SPARQL as extra dependencies
18
+ * Moves `rdflib` and `SPARQLWrapper` to extras.
19
+ - affiliation: refactored edmo datastreams
20
+ - subjects: added datastream for GEMET vocabulary
21
+ - awards/schema.py: read app config for alternate funding validation (#429)
22
+ - awards: fix description field and mappings
23
+ - awards: add fields start/end date and description
24
+
25
+ Version v6.6.0 (released 2024-11-15)
26
+
27
+ - mesh: add title en if not present
28
+ - subjects: add subject to search fields
29
+ - jobs: add ORCID job
30
+ - global: Add unlisted tag
31
+ * This adds a new tag to the vocabularies to allow for unlisted
32
+ vocabularies. This is useful for vocabularies that are not meant to be
33
+ displayed in the UI.
34
+ * This requires to update the names mapping to add the props.
35
+
11
36
  Version v6.5.0 (released 2024-10-31)
12
37
 
13
38
  - subjects: euroscivoc: change default to latest version-less URL
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: invenio-vocabularies
3
- Version: 6.5.0
3
+ Version: 6.7.0
4
4
  Summary: Invenio module for managing vocabularies.
5
5
  Home-page: https://github.com/inveniosoftware/invenio-vocabularies
6
6
  Author: CERN
@@ -50,6 +50,31 @@ Description: ..
50
50
  Changes
51
51
  =======
52
52
 
53
+ Version v6.7.0 (released 2024-11-27)
54
+
55
+ - contrib: improve search accuracy for names, funders, affiliations
56
+ - names: add affiliation acronym in mappings and schema
57
+ * Dereferences the affiliation `acronym` when indexing names and serving
58
+ REST API results. This is useful for disambiguating authors in search.
59
+ - affiliations: move RDF and SPARQL as extra dependencies
60
+ * Moves `rdflib` and `SPARQLWrapper` to extras.
61
+ - affiliation: refactored edmo datastreams
62
+ - subjects: added datastream for GEMET vocabulary
63
+ - awards/schema.py: read app config for alternate funding validation (#429)
64
+ - awards: fix description field and mappings
65
+ - awards: add fields start/end date and description
66
+
67
+ Version v6.6.0 (released 2024-11-15)
68
+
69
+ - mesh: add title en if not present
70
+ - subjects: add subject to search fields
71
+ - jobs: add ORCID job
72
+ - global: Add unlisted tag
73
+ * This adds a new tag to the vocabularies to allow for unlisted
74
+ vocabularies. This is useful for vocabularies that are not meant to be
75
+ displayed in the UI.
76
+ * This requires to update the names mapping to add the props.
77
+
53
78
  Version v6.5.0 (released 2024-10-31)
54
79
 
55
80
  - subjects: euroscivoc: change default to latest version-less URL
@@ -332,6 +357,8 @@ Classifier: Development Status :: 5 - Production/Stable
332
357
  Requires-Python: >=3.7
333
358
  Provides-Extra: s3fs
334
359
  Provides-Extra: oaipmh
360
+ Provides-Extra: rdf
361
+ Provides-Extra: sparql
335
362
  Provides-Extra: tests
336
363
  Provides-Extra: elasticsearch7
337
364
  Provides-Extra: opensearch1
@@ -10,6 +10,6 @@
10
10
 
11
11
  from .ext import InvenioVocabularies
12
12
 
13
- __version__ = "6.5.0"
13
+ __version__ = "6.7.0"
14
14
 
15
15
  __all__ = ("__version__", "InvenioVocabularies")
@@ -52,37 +52,13 @@ const CustomFundingSchema = Yup.object().shape({
52
52
  id: Yup.string().required(i18next.t("Funder is required.")),
53
53
  }),
54
54
  award: Yup.object().shape({
55
- title: Yup.string().test({
56
- name: "testTitle",
57
- message: i18next.t("Title must be set alongside number."),
58
- test: function testTitle(value) {
59
- const { number } = this.parent;
60
-
61
- if (number && !value) {
62
- return false;
63
- }
64
-
65
- return true;
66
- },
67
- }),
68
- number: Yup.string().test({
69
- name: "testNumber",
70
- message: i18next.t("Number must be set alongside title."),
71
- test: function testNumber(value) {
72
- const { title } = this.parent;
73
-
74
- if (title && !value) {
75
- return false;
76
- }
77
-
78
- return true;
79
- },
80
- }),
55
+ title: Yup.string(),
56
+ number: Yup.string(),
81
57
  url: Yup.string()
82
58
  .url(i18next.t("URL must be valid."))
83
59
  .test({
84
60
  name: "validateUrlDependencies",
85
- message: i18next.t("URL must be set alongside title and number."),
61
+ message: i18next.t("URL must be set alongside title or number."),
86
62
  test: function testUrl(value) {
87
63
  const { title, number } = this.parent;
88
64
 
@@ -10,6 +10,8 @@
10
10
 
11
11
  """Vocabularies configuration."""
12
12
 
13
+ import re
14
+
13
15
  import idutils
14
16
  from invenio_i18n import lazy_gettext as _
15
17
 
@@ -19,6 +21,9 @@ from .datastreams.readers import (
19
21
  JsonLinesReader,
20
22
  JsonReader,
21
23
  OAIPMHReader,
24
+ RDFReader,
25
+ SimpleHTTPReader,
26
+ SPARQLReader,
22
27
  TarReader,
23
28
  XMLReader,
24
29
  YamlReader,
@@ -43,6 +48,8 @@ VOCABULARIES_IDENTIFIER_SCHEMES = {
43
48
  }
44
49
  """"Generic identifier schemes, usable by other vocabularies."""
45
50
 
51
+ edmo_regexp = re.compile(r"^https://edmo\.seadatanet\.org/report/\d+$")
52
+
46
53
 
47
54
  def is_pic(val):
48
55
  """Test if argument is a Participant Identification Code (PIC)."""
@@ -51,9 +58,15 @@ def is_pic(val):
51
58
  return val.isdigit()
52
59
 
53
60
 
61
+ def is_edmo(val):
62
+ """Test if argument is a European Directory of Marine Organisations (EDMO) identifier."""
63
+ return edmo_regexp.match(val)
64
+
65
+
54
66
  VOCABULARIES_AFFILIATION_SCHEMES = {
55
67
  **VOCABULARIES_IDENTIFIER_SCHEMES,
56
68
  "pic": {"label": _("PIC"), "validator": is_pic},
69
+ "edmo": {"label": _("EDMO"), "validator": is_edmo},
57
70
  }
58
71
  """Affiliations allowed identifier schemes."""
59
72
 
@@ -135,6 +148,9 @@ VOCABULARIES_DATASTREAM_READERS = {
135
148
  "jsonl": JsonLinesReader,
136
149
  "gzip": GzipReader,
137
150
  "tar": TarReader,
151
+ "http": SimpleHTTPReader,
152
+ "rdf": RDFReader,
153
+ "sparql": SPARQLReader,
138
154
  "yaml": YamlReader,
139
155
  "zip": ZipReader,
140
156
  "xml": XMLReader,
@@ -172,9 +188,19 @@ VOCABULARIES_TYPES_SEARCH = {
172
188
  }
173
189
  """Vocabulary type search configuration."""
174
190
 
175
- SUBJECTS_EUROSCIVOC_FILE_URL = "https://publications.europa.eu/resource/distribution/euroscivoc/rdf/skos_ap_eu/EuroSciVoc-skos-ap-eu.rdf"
191
+ VOCABULARIES_SUBJECTS_EUROSCIVOC_FILE_URL = "https://publications.europa.eu/resource/distribution/euroscivoc/rdf/skos_ap_eu/EuroSciVoc-skos-ap-eu.rdf"
176
192
  """Subject EuroSciVoc file download link."""
177
193
 
194
+ VOCABULARIES_SUBJECTS_GEMET_FILE_URL = (
195
+ "https://www.eionet.europa.eu/gemet/latest/gemet.rdf.gz"
196
+ )
197
+ """Subject GEMET file download link."""
198
+
199
+ VOCABULARIES_AFFILIATIONS_EDMO_COUNTRY_MAPPING = {
200
+ "Cape Verde": "Cabo Verde",
201
+ }
202
+ """Affiliations EDMO Country name remapping dictionary."""
203
+
178
204
  VOCABULARIES_ORCID_ACCESS_KEY = "TODO"
179
205
  """ORCID access key to access the s3 bucket."""
180
206
  VOCABULARIES_ORCID_SECRET_KEY = "TODO"
@@ -16,7 +16,8 @@ from invenio_records_resources.factories.factory import RecordTypeFactory
16
16
  from invenio_records_resources.records.systemfields import ModelPIDField
17
17
  from invenio_records_resources.resources.records.headers import etag_headers
18
18
 
19
- from ...services.permissions import PermissionPolicy
19
+ from invenio_vocabularies.services.permissions import PermissionPolicy
20
+
20
21
  from .config import AffiliationsSearchOptions, service_components
21
22
  from .schema import AffiliationSchema
22
23
 
@@ -13,7 +13,9 @@ from invenio_i18n import get_locale
13
13
  from invenio_i18n import lazy_gettext as _
14
14
  from invenio_records_resources.services import SearchOptions
15
15
  from invenio_records_resources.services.records.components import DataComponent
16
- from invenio_records_resources.services.records.params import SuggestQueryParser
16
+ from invenio_records_resources.services.records.queryparser import (
17
+ CompositeSuggestQueryParser,
18
+ )
17
19
  from werkzeug.local import LocalProxy
18
20
 
19
21
  from ...services.components import PIDComponent
@@ -21,23 +23,32 @@ from ...services.components import PIDComponent
21
23
  affiliation_schemes = LocalProxy(
22
24
  lambda: current_app.config["VOCABULARIES_AFFILIATION_SCHEMES"]
23
25
  )
24
- localized_title = LocalProxy(lambda: f"title.{get_locale()}^20")
26
+ affiliation_edmo_country_mappings = LocalProxy(
27
+ lambda: current_app.config["VOCABULARIES_AFFILIATIONS_EDMO_COUNTRY_MAPPING"]
28
+ )
29
+ localized_title = LocalProxy(lambda: f"title.{get_locale()}^2")
25
30
 
26
31
 
27
32
  class AffiliationsSearchOptions(SearchOptions):
28
33
  """Search options."""
29
34
 
30
- suggest_parser_cls = SuggestQueryParser.factory(
35
+ suggest_parser_cls = CompositeSuggestQueryParser.factory(
31
36
  fields=[
32
- "name^100",
33
- "acronym.keyword^100",
34
- "acronym^40",
37
+ # We boost the acronym fields, since they're smaller words and are more
38
+ # likely to be used in a query.
39
+ "acronym.keyword^50",
40
+ "acronym^10",
41
+ "name^10",
42
+ # Aliases can sometimes be shorter, so we boost them a bit.
43
+ "aliases^5",
35
44
  localized_title,
36
- "id^20",
37
- "aliases^20",
45
+ "id^2",
46
+ # Allow to search identifiers directly (e.g. ROR)
47
+ "identifiers.identifier",
48
+ "country",
49
+ "country_name",
50
+ "types",
38
51
  ],
39
- type="most_fields", # https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-multi-match-query.html#multi-match-types
40
- fuzziness="AUTO", # https://www.elastic.co/guide/en/elasticsearch/reference/current/common-options.html#fuzziness
41
52
  )
42
53
 
43
54
  sort_default = "bestmatch"
@@ -11,12 +11,14 @@
11
11
 
12
12
  from copy import deepcopy
13
13
 
14
+ import pycountry
14
15
  from flask import current_app
15
16
 
16
17
  from ...datastreams import StreamEntry
17
- from ...datastreams.errors import TransformerError, WriterError
18
+ from ...datastreams.errors import TransformerError
18
19
  from ...datastreams.transformers import BaseTransformer
19
20
  from ...datastreams.writers import ServiceWriter
21
+ from ..affiliations.config import affiliation_edmo_country_mappings
20
22
  from ..common.ror.datastreams import RORTransformer
21
23
 
22
24
 
@@ -119,6 +121,66 @@ class OpenAIREAffiliationsServiceWriter(ServiceWriter):
119
121
  return StreamEntry(self._service.update(self._identity, vocab_id, updated))
120
122
 
121
123
 
124
+ class EDMOOrganizationTransformer(BaseTransformer):
125
+ """Transformer class to convert EDMO RDF data to a dictionary format."""
126
+
127
+ def apply(self, stream_entry, **kwargs):
128
+ """Applies the transformation to the stream entry."""
129
+ record = stream_entry.entry
130
+ edmo_uri = record["org"]["value"]
131
+ id_ = "edmo:" + edmo_uri.split("/")[-1]
132
+ name = record["name"]["value"]
133
+ alt_name = record.get("altName", {}).get("value")
134
+ country_name = record.get("countryName", {}).get("value")
135
+ locality = record.get("locality", {}).get("value")
136
+ deprecated = record["deprecated"]["value"]
137
+
138
+ # Fix organizations with the old country name "Cape Verde".
139
+ # "Cabo Verde" is the new official name also used by ROR, e.g. https://api.ror.org/v2/organizations/001fphc23
140
+ if country_name in affiliation_edmo_country_mappings:
141
+ country_name = affiliation_edmo_country_mappings[country_name]
142
+
143
+ # Logic to convert a country name to a 2 letters country code.
144
+ country = None
145
+ if country_name:
146
+ country_dict = pycountry.countries.get(name=country_name)
147
+ if country_dict:
148
+ country = country_dict.alpha_2
149
+ else:
150
+ raise TransformerError([f"No alpha_2 country found for: {record}"])
151
+
152
+ # Mandatory fields
153
+ organization = {
154
+ "id": id_,
155
+ "identifiers": [
156
+ {
157
+ "scheme": "edmo",
158
+ "identifier": edmo_uri,
159
+ }
160
+ ],
161
+ "name": name,
162
+ "title": {
163
+ "en": name,
164
+ },
165
+ }
166
+
167
+ # Optional fields
168
+ if alt_name:
169
+ organization["acronym"] = alt_name
170
+
171
+ if country_name:
172
+ organization["country_name"] = country_name
173
+
174
+ if country:
175
+ organization["country"] = country
176
+
177
+ if locality:
178
+ organization["location_name"] = locality
179
+
180
+ stream_entry.entry = organization
181
+ return stream_entry
182
+
183
+
122
184
  VOCABULARIES_DATASTREAM_READERS = {}
123
185
  """Affiliations datastream readers."""
124
186
 
@@ -131,6 +193,7 @@ VOCABULARIES_DATASTREAM_WRITERS = {
131
193
  VOCABULARIES_DATASTREAM_TRANSFORMERS = {
132
194
  "ror-affiliations": AffiliationsRORTransformer,
133
195
  "openaire-organization": OpenAIREOrganizationTransformer,
196
+ "edmo-organization": EDMOOrganizationTransformer,
134
197
  }
135
198
  """Affiliations datastream transformers."""
136
199
 
@@ -196,3 +259,42 @@ DATASTREAM_CONFIG_OPENAIRE = {
196
259
  ],
197
260
  }
198
261
  """Alternative Data Stream configuration for OpenAIRE Affiliations."""
262
+
263
+ DATASTREAM_CONFIG_EDMO = {
264
+ "readers": [
265
+ {
266
+ "type": "sparql",
267
+ "args": {
268
+ "origin": "https://edmo.seadatanet.org/sparql/sparql",
269
+ "query": """
270
+ SELECT ?org ?name ?altName ?countryName ?locality ?deprecated
271
+ WHERE {
272
+ ?org a <http://www.w3.org/ns/org#Organization> .
273
+ ?org <http://www.w3.org/ns/org#name> ?name .
274
+ OPTIONAL { ?org <http://www.w3.org/2004/02/skos/core#altName> ?altName } .
275
+ OPTIONAL { ?org <http://www.w3.org/2006/vcard/ns#country-name> ?countryName } .
276
+ OPTIONAL { ?org <http://www.w3.org/2006/vcard/ns#locality> ?locality } .
277
+ OPTIONAL { ?org <http://www.w3.org/2002/07/owl#deprecated> ?deprecated } .
278
+ FILTER (!?deprecated)
279
+ }
280
+ """,
281
+ },
282
+ }
283
+ ],
284
+ "transformers": [
285
+ {
286
+ "type": "edmo-organization",
287
+ },
288
+ ],
289
+ "writers": [
290
+ {
291
+ "type": "async",
292
+ "args": {
293
+ "writer": {
294
+ "type": "affiliations-service",
295
+ }
296
+ },
297
+ },
298
+ ],
299
+ }
300
+ """Alternative Data Stream configuration for EDMO Affiliations."""
@@ -27,7 +27,8 @@ from invenio_records_resources.records.systemfields import (
27
27
  )
28
28
  from invenio_records_resources.resources.records.headers import etag_headers
29
29
 
30
- from ...services.permissions import PermissionPolicy
30
+ from invenio_vocabularies.services.permissions import PermissionPolicy
31
+
31
32
  from ..funders.api import Funder
32
33
  from ..subjects.api import Subject
33
34
  from .config import AwardsSearchOptions, service_components
@@ -117,6 +117,13 @@ class OpenAIREProjectTransformer(BaseTransformer):
117
117
  if acronym:
118
118
  award["acronym"] = acronym
119
119
 
120
+ if "startDate" in record:
121
+ award["start_date"] = record["startDate"]
122
+ if "endDate" in record:
123
+ award["end_date"] = record["endDate"]
124
+ if "summary" in record:
125
+ award["description"] = {"en": record["summary"]}
126
+
120
127
  stream_entry.entry = award
121
128
  return stream_entry
122
129
 
@@ -43,6 +43,15 @@
43
43
  "program": {
44
44
  "type": "string"
45
45
  },
46
+ "start_date": {
47
+ "type": "string"
48
+ },
49
+ "end_date": {
50
+ "type": "string"
51
+ },
52
+ "description": {
53
+ "$ref": "local://vocabularies/definitions-v1.0.0.json#/description"
54
+ },
46
55
  "subjects": {
47
56
  "description": "Award's subjects.",
48
57
  "type": "array",
@@ -9,6 +9,15 @@
9
9
  "type": "search_as_you_type"
10
10
  }
11
11
  }
12
+ },
13
+ {
14
+ "i18n_description": {
15
+ "path_match": "description.*",
16
+ "match_mapping_type": "string",
17
+ "mapping": {
18
+ "type": "text"
19
+ }
20
+ }
12
21
  }
13
22
  ],
14
23
  "dynamic": "strict",
@@ -58,9 +67,21 @@
58
67
  "acronym": {
59
68
  "type": "keyword",
60
69
  "fields": {
61
- "text": { "type": "text" }
70
+ "text": {
71
+ "type": "text"
72
+ }
62
73
  }
63
74
  },
75
+ "start_date": {
76
+ "type": "date"
77
+ },
78
+ "end_date": {
79
+ "type": "date"
80
+ },
81
+ "description": {
82
+ "type": "object",
83
+ "dynamic": "true"
84
+ },
64
85
  "program": {
65
86
  "type": "keyword"
66
87
  },
@@ -9,6 +9,15 @@
9
9
  "type": "search_as_you_type"
10
10
  }
11
11
  }
12
+ },
13
+ {
14
+ "i18n_description": {
15
+ "path_match": "description.*",
16
+ "match_mapping_type": "string",
17
+ "mapping": {
18
+ "type": "text"
19
+ }
20
+ }
12
21
  }
13
22
  ],
14
23
  "dynamic": "strict",
@@ -58,9 +67,21 @@
58
67
  "acronym": {
59
68
  "type": "keyword",
60
69
  "fields": {
61
- "text": { "type": "text" }
70
+ "text": {
71
+ "type": "text"
72
+ }
62
73
  }
63
74
  },
75
+ "start_date": {
76
+ "type": "date"
77
+ },
78
+ "end_date": {
79
+ "type": "date"
80
+ },
81
+ "description": {
82
+ "type": "object",
83
+ "dynamic": "true"
84
+ },
64
85
  "program": {
65
86
  "type": "keyword"
66
87
  },
@@ -9,6 +9,15 @@
9
9
  "type": "search_as_you_type"
10
10
  }
11
11
  }
12
+ },
13
+ {
14
+ "i18n_description": {
15
+ "path_match": "description.*",
16
+ "match_mapping_type": "string",
17
+ "mapping": {
18
+ "type": "text"
19
+ }
20
+ }
12
21
  }
13
22
  ],
14
23
  "dynamic": "strict",
@@ -58,9 +67,21 @@
58
67
  "acronym": {
59
68
  "type": "keyword",
60
69
  "fields": {
61
- "text": { "type": "text" }
70
+ "text": {
71
+ "type": "text"
72
+ }
62
73
  }
63
74
  },
75
+ "start_date": {
76
+ "type": "date"
77
+ },
78
+ "end_date": {
79
+ "type": "date"
80
+ },
81
+ "description": {
82
+ "type": "object",
83
+ "dynamic": "true"
84
+ },
64
85
  "program": {
65
86
  "type": "keyword"
66
87
  },
@@ -12,7 +12,7 @@ from functools import partial
12
12
 
13
13
  from invenio_i18n import lazy_gettext as _
14
14
  from marshmallow import Schema, ValidationError, fields, validate, validates_schema
15
- from marshmallow_utils.fields import IdentifierSet, SanitizedUnicode
15
+ from marshmallow_utils.fields import IdentifierSet, ISODateString, SanitizedUnicode
16
16
  from marshmallow_utils.schemas import IdentifierSchema
17
17
 
18
18
  from ...services.schema import (
@@ -61,6 +61,10 @@ class AwardSchema(BaseVocabularySchema, ModePIDFieldVocabularyMixin):
61
61
 
62
62
  organizations = fields.List(fields.Nested(AwardOrganizationRelationSchema))
63
63
 
64
+ start_date = ISODateString()
65
+
66
+ end_date = ISODateString()
67
+
64
68
  id = SanitizedUnicode(
65
69
  validate=validate.Length(min=1, error=_("PID cannot be blank."))
66
70
  )
@@ -90,9 +94,11 @@ class AwardRelationSchema(Schema):
90
94
  id_ = data.get("id")
91
95
  number = data.get("number")
92
96
  title = data.get("title")
93
- if not id_ and not (number and title):
97
+
98
+ if not id_ and not (number or title):
94
99
  raise ValidationError(
95
- _("An existing id or number/title must be present."), "award"
100
+ _("An existing id or either number or title must be present."),
101
+ "award",
96
102
  )
97
103
 
98
104
 
@@ -13,7 +13,9 @@ from invenio_i18n import get_locale
13
13
  from invenio_i18n import lazy_gettext as _
14
14
  from invenio_records_resources.services import SearchOptions
15
15
  from invenio_records_resources.services.records.components import DataComponent
16
- from invenio_records_resources.services.records.params import SuggestQueryParser
16
+ from invenio_records_resources.services.records.queryparser import (
17
+ CompositeSuggestQueryParser,
18
+ )
17
19
  from werkzeug.local import LocalProxy
18
20
 
19
21
  from ...services.components import ModelPIDComponent
@@ -23,24 +25,29 @@ funder_schemes = LocalProxy(lambda: current_app.config["VOCABULARIES_FUNDER_SCHE
23
25
  funder_fundref_doi_prefix = LocalProxy(
24
26
  lambda: current_app.config["VOCABULARIES_FUNDER_DOI_PREFIX"]
25
27
  )
26
- localized_title = LocalProxy(lambda: f"title.{get_locale()}^20")
28
+ localized_title = LocalProxy(lambda: f"title.{get_locale()}^2")
27
29
 
28
30
 
29
31
  class FundersSearchOptions(SearchOptions):
30
32
  """Search options."""
31
33
 
32
- suggest_parser_cls = SuggestQueryParser.factory(
34
+ suggest_parser_cls = CompositeSuggestQueryParser.factory(
33
35
  fields=[
34
- "name^100",
35
- "acronym.keyword^100",
36
- "acronym^40",
36
+ # We boost the acronym fields, since they're smaller words and are more
37
+ # likely to be used in a query.
38
+ "acronym.keyword^50",
39
+ "acronym^10",
40
+ "name^10",
41
+ # Aliases can sometimes be shorter, so we boost them a bit.
42
+ "aliases^5",
37
43
  localized_title,
38
- "id^20",
39
- "aliases^20",
40
- "identifiers.identifier^10",
41
- ],
42
- type="most_fields", # https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-multi-match-query.html#multi-match-types
43
- fuzziness="AUTO", # https://www.elastic.co/guide/en/elasticsearch/reference/current/common-options.html#fuzziness
44
+ "id^2",
45
+ # Allow to search identifiers directly (e.g. ROR)
46
+ "identifiers.identifier",
47
+ "country",
48
+ "country_name",
49
+ "types",
50
+ ]
44
51
  )
45
52
 
46
53
  sort_default = "bestmatch"
@@ -21,7 +21,8 @@ from invenio_records_resources.factories.factory import RecordTypeFactory
21
21
  from invenio_records_resources.records.systemfields import ModelPIDField
22
22
  from invenio_records_resources.resources.records.headers import etag_headers
23
23
 
24
- from ...services.permissions import PermissionPolicy
24
+ from invenio_vocabularies.services.permissions import PermissionPolicy
25
+
25
26
  from .config import FundersSearchOptions, service_components
26
27
  from .schema import FunderSchema
27
28
  from .serializer import FunderL10NItemSchema