summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Czygan <martin.czygan@gmail.com>2020-07-10 18:29:00 +0200
committerMartin Czygan <martin.czygan@gmail.com>2020-07-10 18:29:00 +0200
commit2411bad315b48b99c19958ea3c393dc4d09d6486 (patch)
tree65f63f73b6be5d5b0972fc32bfd74334b7924a9b
parentdf8dcde8d5eaf530e35f1467951271bff7475e64 (diff)
downloadfatcat-2411bad315b48b99c19958ea3c393dc4d09d6486.tar.gz
fatcat-2411bad315b48b99c19958ea3c393dc4d09d6486.zip
datacite: document contributor types
-rw-r--r--python/fatcat_tools/importers/datacite.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/python/fatcat_tools/importers/datacite.py b/python/fatcat_tools/importers/datacite.py
index 7797812f..797ccf19 100644
--- a/python/fatcat_tools/importers/datacite.py
+++ b/python/fatcat_tools/importers/datacite.py
@@ -296,6 +296,31 @@ class DataciteImporter(EntityImporter):
contributors = attributes.get('contributors', []) or [] # Much fewer than creators.
contribs = self.parse_datacite_creators(creators, doi=doi)
+
+ # Beside creators, we have contributors in datacite. Sample:
+ # ContactPerson, DataCollector, DataCurator, DataManager, Distributor,
+ # Editor, Funder, HostingInstitution, Other, Producer, ProjectLeader,
+ # ProjectMember, RelatedPerson, ResearchGroup, Researcher,
+ # RightsHolder, Sponsor, Supervisor
+ #
+ # Datacite schema:
+ # https://schema.datacite.org/meta/kernel-4.3/doc/DataCite-MetadataKernel_v4.3.pdf#page=32
+ # -- could be used as a form of controlled vocab?
+ #
+ # Currently (07/2020) in release_contrib:
+ #
+ # select count(*), role from release_contrib group by role;
+ # count | role
+ # -----------+------------
+ # 500269665 | author
+ # 4386563 | editor
+ # 17871 | translator
+ # 10870584 |
+ # (4 rows)
+ #
+ # Related: https://guide.fatcat.wiki/entity_release.html -- role
+ # (string, of a set): the type of contribution, from a controlled
+ # vocabulary. TODO: vocabulary needs review.
contribs_extra_contributors = self.parse_datacite_creators(contributors, set_index=False, doi=doi)
# Unfortunately, creators and contributors might overlap, refs GH59.