Class EZIDIdentifierProvider

java.lang.Object
org.dspace.identifier.IdentifierProvider
org.dspace.identifier.EZIDIdentifierProvider

public class EZIDIdentifierProvider extends IdentifierProvider
Provide service for DOIs through DataCite using the EZID service.

Configuration of this class is is in two parts.

Installation-specific configuration (credentials and the "shoulder" value which forms a prefix of the site's DOIs) is supplied from property files in [DSpace]/config**.

identifier.doi.ezid.shoulder
base of the site's DOIs. Example: 10.5072/FK2
identifier.doi.ezid.user
EZID username.
identifier.doi.ezid.password
EZID password.
identifier.doi.ezid.publisher
A default publisher, for Items not previously published. EZID requires a publisher.

Then there are properties injected using Spring:

  • There is a Map (with the property name "crosswalk") from EZID metadata field names into DSpace field names, injected by Spring. Specify the fully-qualified names of all metadata fields to be looked up on a DSpace object and their values set on mapped fully-qualified names in the object's DataCite metadata.
  • A second map ("crosswalkTransform") provides Transform instances mapped from EZID metadata field names. This allows the crosswalk to rewrite field values where the form maintained by DSpace is not directly usable in EZID metadata.
  • Optional: A boolean property ("generateDataciteXML") that controls the creation and inclusion of DataCite xml schema during the metadata crosswalking. The default "DataCite" dissemination plugin uses DIM2DataCite.xsl for crosswalking. Default value: false.
  • Optional: A string property ("disseminationCrosswalkName") that can be used to set the name of the dissemination crosswalk plugin for metadata crosswalking. Default value: "DataCite".
Author:
mwood