Versions Compared

Key

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


Info
titleORCID API version compatibility

Please note that ORCID API 1.2 was turned off on August 1, 2018. To use the current ORCID API 2.x, you will need DSpace 5.9 or DSpace 6.3 or newer. Details: DS-3447.

Table of Contents
minLevel2
outlinetrue
stylenone

...

The ORCID integration adds ORCID compatibility to the existing solutions for Authority control in DSpace. String names of authors are still being stored in DSpace metadata. The authority key field is leveraged to store a uniquely generated internal ID that links the author to more extended metadata, including the ORCID ID and alternative author names.

...

Enabling the ORCID authority control

Warning
titleJSPUI Support

In DSpace 5.0 the functionality only includes user interface functionality for the DSpace XML User Interface. 

Warning
titleXMLUI Theme UI Support

In DSpace 5.0 the functionality only adds support includes user interface functionality for the XMLUI Mirage and Mirage 2 themes. Older XMLUI themes including Kubrick, Reference and Classic are currently unsupported. JSPUI is unsupported in 5.0 as well.

If you wish to enable this feature, some changes are required to the dspace.cfg file. The first step is to activate the authority as a valid option for authority control, this is done by adding/setting an additional plugin in the  plugin.named.org.dspace.content.authority.ChoiceAuthority property. An example of this can be found below.

Code Block
languagetext
plugin.named.org.dspace.content.authority.ChoiceAuthority = \
    org.dspace.content.authority.SolrAuthority = SolrAuthorAuthority

The feature relies on the following configuration parameters in dspace.cfg. To activate the default settings it suffices to remove the comment hashes ("#") for the following lines. See the section at the bottom of this page what these parameters mean exactly and how you can tweak the configuration.

Code Block
languagetext
solr.authority.server=${solr.server}/authority
choices.plugin.dc.contributor.author = SolrAuthorAuthority
choices.presentation.dc.contributor.author = authorLookup
authority.controlled.dc.contributor.author = true
authority.author.indexer.field.1=dc.contributor.author

The final part of configuration is to add the authority consumer in front of the list of event consumers. Add "authority" in front of the list as displayed below.

Code Block
languagetext
event.dispatcher.default.consumers = authority, versioning, discovery, eperson, harvester

...

When first enabled the authority index will be empty, to populate the authority index run the following script:

Code Block
languagebash
[dspace]/bin/dspace index-authority

...

Running this script again will update the index and keep the index clean. For example if an author occurs in a single item and that item is deleted the script will need to be run again to remove it from the index. When run again it will remove all records that no longer have a link to existing authors in the database. 


Submission of new DSpace items - Author lookup

...

For each of the ORCID authors a lookup will be done and their names will be added to the metadata. All the non-ORCID authors will be added as well. The authority keys and solr records are added when the reported changes are applied.

 


Storage of related metadata

...

The information in the authority cache can be updated by running the following command line operation:

Command used:
[dspace]/bin/dspace dsrun org.dspace.authority.UpdateAuthorities
Argumentsdescription
-iupdate specific solr records with the given internal ids (comma-separated)
-hprints this help message

This will iterate over every solr record currently in use (unless the -i argument is provided), query the ORCID web service for the latest data and update the information in the cache. If configured, the script will also update the metadata of the items in the repository where applicable.

The configuration property can be set in config/modules/solrauthority.cfg:

Code Block
languagetext
auto-update-items = false | true

...

In the Enabling the ORCID authority control section, you have been told to add this block of configuration.

Code Block
languagetext
solr.authority.server=${solr.server}/authority
choices.plugin.dc.contributor.author = SolrAuthorAuthority
choices.presentation.dc.contributor.author = authorLookup
authority.controlled.dc.contributor.author = true
authority.author.indexer.field.1=dc.contributor.author

...

  • With the authority.controlled property every metadata field that needs to be authority controlled is configured. This involves every type of authority control, not only the fields for ORCID integration.
  • The choices.plugin should be configured for each metadata field under authority control. Setting the value on SolrAuthorAuthority tells DSpace to use the solr authority cache for this metadatafield, cfr. Storage of related metadata.
  • The choices.presention should be configured for each metadata field as well. The traditional values for this property are select|suggest|lookup. A new value, authorLookup, has been added to be used in combination with the SolrAuthorAuthority choices plugin. While the other values can still be used, the authorLookup provides a richer user interface in the form of a popup on the submission page.
  • The browse indexes need to point to the new authority-controlled index: webui.browse.index.2 = author:metadata:dc.contributor.*,dc.creator:text should become webui.browse.index.2 = author:metadataAuthority:dc.contributor.author:textauthority
  • More existing configuration properties are available but their values are independent of this feature and their default values are usually fine: choices.closed , authority.required, authority.minconfidence .

For the cache update script, one property can be set in config/modules/solrauthority.cfg:

Code Block
languagetext
auto-update-items = false | true

...

The final part of configuration is to add the authority consumer in front of the list of event consumers. Add "authority" in front of the list as displayed below.

Code Block
languagetext
event.dispatcher.default.consumers = authority, versioning, discovery, eperson, harvester

...

It is found in the config/spring/api/orcid-authority-services.xml configuration file. Look for the <bean name="OrcidSource">, which is initialized with a URL of http://pub.orcid.org