Connectome-Implementation-Team / pid_resolver

Apache License 2.0
1 stars 0 forks source link

ORCID Authorship Assignment: Define Acceptable Distance #3

Closed tobiasschweizer closed 1 month ago

tobiasschweizer commented 1 month ago

Currently, the assignment of an ORCID profile to a DOI (DOI is listed in an ORCIC profile) requires an exact match of first and last name of an author with the metadata provided by the DOI RA.

 # match ORCID profiles by name
    author_orcid = list(
        filter(lambda orcid: orcid.family_name == family_name and orcid.given_name == given_name, orcid_info))

To improve the chance of a match, an argument could be introduced defining the acceptable distance, i.e. what would still be considered a match also if the strings are not identical.

Choices:

tobiasschweizer commented 1 month ago

Also integrate provenance information from ORCID profile (how the DOI was imported/assigned):

curl -L -H "Accept: application/orcid+json" "https://orcid.org/0000-0002-9016-1013" > orcid.json

."activities-summary".works.group[]."work-summary"[].source."source-name"

-> instead of requesting JSON-LD, request the ORCID native JSON format.

Get DOIs from native ORCID JSON: [."activities-summary".works.group[]."work-summary"[]."external-ids"."external-id"[] | select(."external-id-type" == "doi") | ."external-id-value"]

tobiasschweizer commented 1 month ago

eval cordis:


for doi in `jq -c '.[]' doi.json`; jq .$doi formatted.json >> eval.txt;