Curation tasks and helper scripts for the CGSpace institutional repository.
Go to file
2020-08-02 22:55:23 +03:00
.idea Use gson 2.2.1 2020-08-01 20:21:25 +03:00
src/main CountryCodeTagger.java: Remove unused variable 2020-08-02 22:03:10 +03:00
.gitignore Add .gitignore 2020-07-31 22:01:05 +03:00
COPYING Initial commit 2020-07-31 21:40:15 +03:00
dspace-curation-tasks.iml Use gson 2.2.1 2020-08-01 20:21:25 +03:00
pom.xml Use gson 2.2.1 2020-08-01 20:21:25 +03:00
README.md README.md: Add more documentation and notes 2020-08-02 22:55:23 +03:00

DSpace Curation Tasks

Metadata curation tasks used on the CGSpace institutional repository:

  • CountryCodeTagger: add ISO 3166-1 Alpha2 country codes to items based on their existing country metadata

Tested on DSpace 5.8. Read more about the DSpace curation system.

Build and Install

To build the standalone jar:

$ mvn package

Copy the resulting jar to the DSpace lib directory:

$ cp target/dspace-curation-tasks-1.0-SNAPSHOT.jar ~/dspace/lib/dspace-curation-tasks-1.0-SNAPSHOT.jar

Invocation

Once the jar is installed and you have added appropriate configuration in ~/dspace/config/modules:

$ ~/dspace/bin/dspace curate -t countrycodetagger -i 10568/3 -r - -l 500 -s object

Note: it is very important to set the cache limit (-l) and the database transaction scope to something sensible (object) if you're curating a community or collection with more than a few hundred items.

Notes

This project was initially created according to the Maven Getting Started Guide:

$ mvn -B archetype:generate -DgroupId=org.cgiar.cgspace.ctasks -DartifactId=dspace-curation-tasks -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4

Todo

  • Integrate with main DSpace build
  • Make sure this doesn't work on items in the workflow
  • Port to DSpace 6
    • Remember to bump Gson version!
  • Check for existence of metadata field before trying to add metadata
  • Add tests

License

This work is licensed under the GPLv3.

This repository contains data from the Debian iso-codes project project, which is licensed under the GNU Lesser General Public License v2.1.