Versions Compared

Key

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

...

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'll get it from your 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'll get it from your DOI registration agency.
Property:
identifier.doi.prefix
Example Value:
Code Block
identifier.doi.prefix = 10.5072
Informational Note:The prefix you got from the DOI registration agency. All your DOIs start with this prefix, followed by a slash and a suffix generated from DSpace. The prefix can be compared with a namespace within the DOI system.
Property:
identifier.doi.namespaceseparator
Example Value:
Code Block
identifier.doi.namespaceseparator = dspace-
Informational Note:This property is optional. 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 namespace separator. All the DOIs that DSpace generates will start with the DOI prefix, followed by a slash, the namespace separator and some number generated by DSpace. For example, if 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.
Info

Please don't use the test prefix 10.5072 with DSpace. The test prefix 10.5072 differs from other prefixes: It answers GET requests for all DOIs even for DOIs that are unregistered. DSpace checks that it mint only unused DOIs and will create an Error: "Register DOI ... failed: DOI_ALREADY_EXISTS". Your registration agency can provide you an individual test prefix, that you can use for tests.

Metadata conversion

To reserve or register a DOI, DataCite requires that metadata be supplied which describe the object that the DOI addresses. The file [dspace]/config/crosswalks/DIM2DataCite.xsl controls the conversion of metadata from the DSpace internal format into the DataCite format. You have to add the name of your institution to this file:

...

Code Block
title\[dspace\]/config/spring/api/identifier-service.xml
<!--
    Copyright (c) 2002-2010, DuraSpace.  All rights reserved
    Licensed under the DuraSpace License.

    A copy of the DuraSpace License has been included in this
    distribution and is available at: http://www.dspace.org/license
-->

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

    <bean id="org.dspace.identifier.IdentifierService"
          class="org.dspace.identifier.IdentifierServiceImpl"
          autowire="byType"
          scope="singleton"/>

    <bean id="org.dspace.identifier.DOIIdentifierProvider"
        class="org.dspace.identifier.DOIIdentifierProvider"
        scope="singleton">
        <property name="configurationService"
            ref="org.dspace.services.ConfigurationService" />
        <property name="DOIConnector"
            ref="org.dspace.identifier.doi.DOIConnector" />
    </bean>

    <bean id="org.dspace.identifier.doi.DOIConnector"
        class="org.dspace.identifier.doi.DataCiteConnector"
        scope="singleton">
        <property name='DATACITE_SCHEME' value='https'/>
        <property name='DATACITE_HOST' value='mds.datacite.org'/>
        <property name='DATACITE_DOI_PATH' value='/mds/doi/' />
        <property name='DATACITE_METADATA_PATH' value='/mds/metadata/' />
        <property name='disseminationCrosswalkName' value="DataCite" />
    </bean>
</beans>

...

Please pay attention to configure the property DATACITE_HOST. Per default it is set to the DataCite test server. To reserve real DOIs you will probably have to change it to mds.datacite.org. Ask your registration agency if you're not sure about the correct address. Unfortunately the test and the production server have different paths to the API. For the test server you have to set the DATACITE_DOI_PATH to "/mds/doi/" and the DATACITE_METADATA_PATH  to "/mds/doi/", for the production server you have to remove the leading /mds from both properties.

DSpace should send updates to DataCite whenever the metadata of an item changes. To do so you have to change the dspace.cfg again. You should remove the comments in front of the two following properties or add them to the dspace.cfg:

...