Bug in ORCID v2 implementation?

85 views
Skip to first unread message

Darryl Friesen

unread,
Aug 22, 2018, 1:56:45 PM8/22/18
to DSpace Technical Support

I was happy to see the return of ORCID in 6.3, however I'm experiencing some odd behavior which I think may be a bug.

Using the Lookup button, the initial interaction with the OCRID v2 API seems to work great

orcid_bug_01.png



A match is found, I can see the ORCID and I can add that person as an author. An entry is written in the Solr autority database.


orcid_bug_02.png

However, if the Lookup button is used again with that same author's name, not only is the current entry from authority control returned, but an additional hit from OCRID appears (shown in yellow in the image below).  To add to the confusion, the current hit from authority control does not show the ORCID, even though is it recorded in the Solr database.


orcid_bug_03.png


This differs from the previous behavior with DSpace and the ORCID v1 API.  I'm sure matches from the local authority control database would display the ORCID, and if a hit from the ORCID API matched an existing entry in authority control, it would not be displayed in italics as a new author.


If I go ahead and select the new italicized author in the above scenario, DSpace will create a duplicate entry in the authority control database.  The records will have different record IDs, but the data, including the ORCID ID, is the same.


orcid_bug_04.png



This process can repeat; each time you lookup an author, an additional new entry from ORCID will appear as new, and if selected, and additional authority control record will be created.

I'm seeing this behavior on my test server (running DSpace 6.4-SNAPSHOT checked out of GitHub lat week) but I also see the same behavior on the DSpace 6.3 demo site, so I don't believe it's an issue with my configuration.

Does this sound like a bug?  Is anyone else using ORCID v2 integration experiencing this behavior?

- Darryl


----------------------------------------------------------------------

Darryl Friesen, B.Sc., Programmer/Analyst    Darryl....@usask.ca

Library Systems & Information Technology,    http://library.usask.ca/

University of Saskatchewan Library

----------------------------------------------------------------------

"Go not to the Elves for counsel, for they will say both no and yes"


Qin Zhao

unread,
Aug 23, 2018, 5:21:01 AM8/23/18
to DSpace Technical Support
I got the same problem. 
orcid seemed not been saved in item authority, just only in solr index.
After re-indexing (called via command "dspace index-authority") all orcid informaiton were overwritten from item authority with null, and authority types changed from "orcid" to "person".
I think that the method setValue(SolrDocument document) in class Orcidv2AuthorityValue should be extended for orcid fields etc.

I add code like following in my project class, the lookup function works as well.

 @Override
    public void setValues(SolrDocument document) {
        super.setValues(document);
        this.setOrcid_id(ObjectUtils.toString(document.getFieldValue("orcid_id")));
for (String fieldName : document.getFieldNames()) {
String labelPrefix = "label_";
if (fieldName.startsWith(labelPrefix)) {
String label = fieldName.substring(labelPrefix.length());
Collection<Object> fieldValues = document.getFieldValues(fieldName);
for (Object o : fieldValues) {
addOtherMetadata(label,String.valueOf(o));
}
}
}
    }

Kind regards,
Qin Zhao
Reply all
Reply to author
Forward
0 new messages