Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

DataCite is an international initiative to promote science and research and a member of the International DOI Foundation. The members of DataCite act as registration agencies for DOIs. Some DataCite members provide own APIs to reserve and register DOIs, others let their clients use the API from DataCite directly. Starting with version 4.0 DSpace support registering, reserving, ... DOIs using the DataCite API directly or using the API from EZID which is a service of the University of California Digital Library. So starting with DSpace 4.0 it is possible to use DOIs with all DataCite members that let you use the DataCite API directly and with EZID.

Configure DSpace

...

to use DataCites API

If you use a DOI registration agency that let you use the API from DataCite directly, you can use the following instructions to configure DSpace. If you use EZID please look the instructions below.

To use DOIs within DSpace you have to configure several parts of DSpace. You'll have to enter your DOI prefix and the credentials to use the API from the DOI registration agency DataCite in dspace.cfg. If you use the DataCite API directly youYou'll have to configure the script which generates some metadata. Then you'll have to activate the DOI mechanism within DSpace. And last you have to configure a cronjob which transmits the information about new and changed DOIs to the registration agency.

...

Configuration File:[dspace]/config/dspace.cfg
Property:
identifier.doi.user
Example Value:
Code Block
identifier.doi.user = user123
Informational Note:Username to login into the API of the DOI registration agency. You can get it from you DOI registration agency.
Property:
identifier.doi.password
Example Value:
Code Block
identifier.doi.password = top-secret
Informational Note:Password to login into the API of the DOI registration agency. You can get it from you DOI registration agency.
Property:
identifier.doi.prefix
Example Value:
Code Block
identifier.doi.prefix = 10.5072
Informational Note:The prefix that you got from the DOI registration agency. All your DOIs start with the prefix, followed by a slash and a suffix generated from DSpace. The prefix can be compared with a name space within the DOI system.
Property:
identifier.doi.namespaceseparator
Example Value:
Code Block
identifier.doi.namespaceseparator = dspace-
Informational Note:The value can remain empty. If you want to use the same DOI prefix in several DSpace installations or with other tools that generate and register DOIs it is necessary to use a name space separator. All the DOIs that DSpace generates will start with the DOI prefix, followed by a slash, the name space separator and some number generated by DSpace. If for example your prefix is 10.5072 and you want all DOIs generated by DSpace to look like 10.5072/dspace-1023 you have to set this as in the example value above.

Identifier Service

Meta data conversion

 

'cron'

...

job for asynchronous reservation/registration

 

...

Command Line Interface

...

 

Limitations of DSpace DOI support

 

 

Configure DSpace to use EZID service for registration of DOIs

Sorry, this part is not documented yet.

Adding support for other Registration Agencies

 

 If you want DSpace to support other registration agencies you just have to write a java class that implements the interface DOIConnector ([dspace-source]/dspace-api/src/main/java/org/dspace/identifier/doi/DOIConnector.java). You might use the DataCiteConnector ([dspace-source]/dspace-api/src/main/java/org/dspace/identifier/doi/DataCiteConnector.java) as example. After developing your own DOIConnector you configure DSpace as if you were using the DataCite API directly. Just use your DOIConnector when configuring the IdentifierService instead of the DataCiteConnector.