Digital Object Identifier (DOI)¶
DataCite API is used to create DOI.
Configure the API access point in the
admin console > settings:
A record can be downloaded using the DataCite format from the API using: http://localhost:8080/geonetwork/srv/api/records/da165110-88fd-11da-a88f-000d939bc5d8/formatters/datacite?output=xml
Creating the DOI¶
Once configured, DOI can be created using the interface. DOI is created on demand. It means that a user must ask for creation of a DOI. When created, the task is notified by email to the reviewer of the group (by default, can be configured for administrator only).
The task is assigned to a specific user. An optional due date and comment can be defined:
After submission of the task, the task owner is notified by email (if the mail server is configured, see admin console > settings). The task can then be resolved in the admin console > information > versionning section.
For DOI creation, the task is a 2 steps actions:
First check if all prerequisite are covered (below the record is not valid in DataCite format)
The DataCite format requires some mandatory fields:
Identifier (with mandatory type sub-property)
Creator (with optional given name, family name, name identifier and affiliation sub-properties)
Title (with optional type sub-properties)
ResourceType (with mandatory general type description subproperty)
See http://schema.datacite.org/meta/kernel-4.1/doc/DataCite-MetadataKernel_v4.1.pdf for more details on the format.
A DOI may already be assigned for a record:
In such case the DOI needs to be removed first.
After validation, create the DOI
The DOI is then added to the metadata record:
The REST API allows to access the DOI related operations:
The check preconditions API returns exception if one of the pre requisite is not met:
DataCite API is not configured
Record is not public
Record already has a DOI
Record is not valid for DataCite (ie. XSD errors returned by DataCite XSD validation)
When a DOI is created, the response return the following details:
The DOI is added to the metadata record using the following encoding: