commonmeta-py 0.23__py3-none-any.whl → 0.24__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. commonmeta/__init__.py +96 -0
  2. commonmeta/api_utils.py +77 -0
  3. commonmeta/author_utils.py +260 -0
  4. commonmeta/base_utils.py +121 -0
  5. commonmeta/cli.py +200 -0
  6. commonmeta/constants.py +587 -0
  7. commonmeta/crossref_utils.py +575 -0
  8. commonmeta/date_utils.py +193 -0
  9. commonmeta/doi_utils.py +273 -0
  10. commonmeta/metadata.py +320 -0
  11. commonmeta/readers/__init__.py +1 -0
  12. commonmeta/readers/cff_reader.py +199 -0
  13. commonmeta/readers/codemeta_reader.py +112 -0
  14. commonmeta/readers/commonmeta_reader.py +13 -0
  15. commonmeta/readers/crossref_reader.py +409 -0
  16. commonmeta/readers/crossref_xml_reader.py +505 -0
  17. commonmeta/readers/csl_reader.py +98 -0
  18. commonmeta/readers/datacite_reader.py +390 -0
  19. commonmeta/readers/datacite_xml_reader.py +359 -0
  20. commonmeta/readers/inveniordm_reader.py +218 -0
  21. commonmeta/readers/json_feed_reader.py +420 -0
  22. commonmeta/readers/kbase_reader.py +205 -0
  23. commonmeta/readers/ris_reader.py +103 -0
  24. commonmeta/readers/schema_org_reader.py +506 -0
  25. commonmeta/resources/cff_v1.2.0.json +1827 -0
  26. commonmeta/resources/commonmeta_v0.12.json +601 -0
  27. commonmeta/resources/commonmeta_v0.13.json +559 -0
  28. commonmeta/resources/commonmeta_v0.14.json +573 -0
  29. commonmeta/resources/crossref/AccessIndicators.xsd +47 -0
  30. commonmeta/resources/crossref/JATS-journalpublishing1-3d2-mathml3-elements.xsd +10130 -0
  31. commonmeta/resources/crossref/JATS-journalpublishing1-3d2-mathml3.xsd +48 -0
  32. commonmeta/resources/crossref/JATS-journalpublishing1-elements.xsd +8705 -0
  33. commonmeta/resources/crossref/JATS-journalpublishing1-mathml3-elements.xsd +8608 -0
  34. commonmeta/resources/crossref/JATS-journalpublishing1-mathml3.xsd +49 -0
  35. commonmeta/resources/crossref/JATS-journalpublishing1.xsd +6176 -0
  36. commonmeta/resources/crossref/clinicaltrials.xsd +61 -0
  37. commonmeta/resources/crossref/common5.3.1.xsd +1538 -0
  38. commonmeta/resources/crossref/crossref5.3.1.xsd +1949 -0
  39. commonmeta/resources/crossref/crossref_query_output3.0.xsd +1097 -0
  40. commonmeta/resources/crossref/fundref.xsd +49 -0
  41. commonmeta/resources/crossref/module-ali.xsd +39 -0
  42. commonmeta/resources/crossref/relations.xsd +444 -0
  43. commonmeta/resources/crossref-v0.2.json +60 -0
  44. commonmeta/resources/csl-data.json +538 -0
  45. commonmeta/resources/datacite-v4.5.json +829 -0
  46. commonmeta/resources/datacite-v4.5pr.json +608 -0
  47. commonmeta/resources/ietf-bcp-47.json +3025 -0
  48. commonmeta/resources/iso-8601.json +3182 -0
  49. commonmeta/resources/spdx/licenses.json +4851 -0
  50. commonmeta/resources/spdx-schema..json +903 -0
  51. commonmeta/resources/styles/apa.csl +1697 -0
  52. commonmeta/resources/styles/chicago-author-date.csl +684 -0
  53. commonmeta/resources/styles/harvard-cite-them-right.csl +321 -0
  54. commonmeta/resources/styles/ieee.csl +468 -0
  55. commonmeta/resources/styles/modern-language-association.csl +341 -0
  56. commonmeta/resources/styles/vancouver.csl +376 -0
  57. commonmeta/schema_utils.py +27 -0
  58. commonmeta/translators.py +47 -0
  59. commonmeta/utils.py +1108 -0
  60. commonmeta/writers/__init__.py +1 -0
  61. commonmeta/writers/bibtex_writer.py +149 -0
  62. commonmeta/writers/citation_writer.py +70 -0
  63. commonmeta/writers/commonmeta_writer.py +68 -0
  64. commonmeta/writers/crossref_xml_writer.py +17 -0
  65. commonmeta/writers/csl_writer.py +79 -0
  66. commonmeta/writers/datacite_writer.py +193 -0
  67. commonmeta/writers/inveniordm_writer.py +94 -0
  68. commonmeta/writers/ris_writer.py +58 -0
  69. commonmeta/writers/schema_org_writer.py +146 -0
  70. {commonmeta_py-0.23.dist-info → commonmeta_py-0.24.dist-info}/METADATA +56 -45
  71. commonmeta_py-0.24.dist-info/RECORD +75 -0
  72. {commonmeta_py-0.23.dist-info → commonmeta_py-0.24.dist-info}/WHEEL +1 -1
  73. commonmeta_py-0.24.dist-info/entry_points.txt +3 -0
  74. commonmeta_py-0.23.dist-info/RECORD +0 -5
  75. /commonmeta_py/__init__.py → /commonmeta/readers/bibtex_reader.py +0 -0
  76. {commonmeta_py-0.23.dist-info/licenses → commonmeta_py-0.24.dist-info}/LICENSE +0 -0
@@ -0,0 +1,587 @@
1
+ """Constants for commonmeta-py"""
2
+ from typing import Optional, TypedDict, List
3
+
4
+
5
+ class Commonmeta(TypedDict):
6
+ """TypedDict for Commonmeta"""
7
+
8
+ id: str
9
+ type: str
10
+ url: str
11
+ creators: List[dict]
12
+ titles: List[dict]
13
+ publisher: dict
14
+ date: dict
15
+ additional_type: Optional[str]
16
+ subjects: Optional[List[dict]]
17
+ contributors: Optional[List[dict]]
18
+ language: Optional[str]
19
+ identifiers: Optional[List[dict]]
20
+ relations: Optional[List[dict]]
21
+ sizes: Optional[List[dict]]
22
+ formats: Optional[List[dict]]
23
+ version: Optional[str]
24
+ license: Optional[dict]
25
+ descriptions: Optional[List[dict]]
26
+ geo_locations: Optional[List[dict]]
27
+ funding_references: Optional[List[dict]]
28
+ references: Optional[List[dict]]
29
+ container: Optional[dict]
30
+ files: Optional[List[dict]]
31
+ agency: Optional[str]
32
+ state: str
33
+
34
+
35
+ # source: https://www.bibtex.com/e/entry-types/
36
+ BIB_TO_CM_TRANSLATIONS = {
37
+ "article": "JournalArticle",
38
+ "book": "Book",
39
+ "booklet": "Book",
40
+ "inbook": "BookChapter",
41
+ "inproceedings": "ProceedingsArticle",
42
+ "manual": "Report",
43
+ "mastersthesis": "Dissertation",
44
+ "misc": "Other",
45
+ "phdthesis": "Dissertation",
46
+ "proceedings": "Proceedings",
47
+ "techreport": "Report",
48
+ "unpublished": "Manuscript",
49
+ }
50
+
51
+ CM_TO_BIB_TRANSLATIONS = {
52
+ "Article": "article",
53
+ "Book": "book",
54
+ "BookChapter": "inbook",
55
+ "Dissertation": "phdthesis",
56
+ "JournalArticle": "article",
57
+ "Manuscript": "unpublished",
58
+ "Other": "misc",
59
+ "Proceedings": "proceedings",
60
+ "ProceedingsArticle": "inproceedings",
61
+ "Report": "techreport",
62
+ }
63
+
64
+ # source: https://docs.citationstyles.org/en/stable/specification.html?highlight=book#appendix-iii-types
65
+ CSL_TO_CM_TRANSLATIONS = {
66
+ "article": "Article",
67
+ "article-journal": "JournalArticle",
68
+ "article-magazine": "Article",
69
+ "article-newspaper": "Article",
70
+ "bill": "LegalDocument",
71
+ "book": "Book",
72
+ "broadcast": "Audiovisual",
73
+ "chapter": "BookChapter",
74
+ "classic": "Book",
75
+ "collection": "Collection",
76
+ "dataset": "Dataset",
77
+ "document": "Document",
78
+ "entry": "Entry",
79
+ "entry-dictionary": "Entry",
80
+ "entry-encyclopedia": "Entry",
81
+ "event": "Event",
82
+ "figure": "Figure",
83
+ "graphic": "Image",
84
+ "hearing": "LegalDocument",
85
+ "interview": "Document",
86
+ "legal_case": "LegalDocument",
87
+ "legislation": "LegalDocument",
88
+ "manuscript": "Manuscript",
89
+ "map": "Map",
90
+ "motion_picture": "Audiovisual",
91
+ "musical_score": "Document",
92
+ "pamphlet": "Document",
93
+ "paper-conference": "ProceedingsArticle",
94
+ "patent": "Patent",
95
+ "performance": "Performance",
96
+ "periodical": "Journal",
97
+ "personal_communication": "PersonalCommunication",
98
+ "post": "Post",
99
+ "post-weblog": "Article",
100
+ "regulation": "LegalDocument",
101
+ "report": "Report",
102
+ "review": "Review",
103
+ "review-book": "Review",
104
+ "software": "Software",
105
+ "song": "Audiovisual",
106
+ "speech": "Presentation",
107
+ "standard": "Standard",
108
+ "thesis": "Dissertation",
109
+ "treaty": "LegalDocument",
110
+ "webpage": "WebPage",
111
+ }
112
+
113
+ CM_TO_CSL_TRANSLATIONS = {
114
+ "Article": "article",
115
+ "JournalArticle": "article-journal",
116
+ "Book": "book",
117
+ "BookChapter": "chapter",
118
+ "Collection": "collection",
119
+ "Dataset": "dataset",
120
+ "Document": "document",
121
+ "Entry": "entry",
122
+ "Event": "event",
123
+ "Figure": "figure",
124
+ "Image": "graphic",
125
+ "LegalDocument": "legal_case",
126
+ "Manuscript": "manuscript",
127
+ "Map": "map",
128
+ "Audiovisual": "motion_picture",
129
+ "Patent": "patent",
130
+ "Performance": "performance",
131
+ "Journal": "periodical",
132
+ "PersonalCommunication": "personal_communication",
133
+ "Report": "report",
134
+ "Review": "review",
135
+ "Software": "software",
136
+ "Presentation": "speech",
137
+ "Standard": "standard",
138
+ "Dissertation": "thesis",
139
+ "WebPage": "webpage",
140
+ }
141
+
142
+ # source: http://api.crossref.org/types
143
+ CR_TO_CM_TRANSLATIONS = {
144
+ "book-chapter": "BookChapter",
145
+ "book-part": "BookPart",
146
+ "book-section": "BookSection",
147
+ "book-series": "BookSeries",
148
+ "book-set": "BookSet",
149
+ "book-track": "BookTrack",
150
+ "book": "Book",
151
+ "component": "Component",
152
+ "database": "Database",
153
+ "dataset": "Dataset",
154
+ "dissertation": "Dissertation",
155
+ "edited-book": "Book",
156
+ "grant": "Grant",
157
+ "journal-article": "JournalArticle",
158
+ "journal-issue": "JournalIssue",
159
+ "journal-volume": "JournalVolume",
160
+ "journal": "Journal",
161
+ "monograph": "Book",
162
+ "other": "Other",
163
+ "peer-review": "PeerReview",
164
+ "posted-content": "Article",
165
+ "proceedings-article": "ProceedingsArticle",
166
+ "proceedings-series": "ProceedingsSeries",
167
+ "proceedings": "Proceedings",
168
+ "reference-book": "Book",
169
+ "reference-entry": "Entry",
170
+ "report-component": "ReportComponent",
171
+ "report-series": "ReportSeries",
172
+ "report": "Report",
173
+ "standard": "Standard",
174
+ }
175
+
176
+ CM_TO_CR_TRANSLATIONS = {
177
+ "Article": "PostedContent",
178
+ "BookChapter": "BookChapter",
179
+ "BookSeries": "BookSeries",
180
+ "Book": "Book",
181
+ "Component": "Component",
182
+ "Dataset": "Dataset",
183
+ "Dissertation": "Dissertation",
184
+ "Grant": "Grant",
185
+ "JournalArticle": "JournalArticle",
186
+ "JournalIssue": "JournalIssue",
187
+ "JournalVolume": "JournalVolume",
188
+ "Journal": "Journal",
189
+ "ProceedingsArticle": "ProceedingsArticle",
190
+ "ProceedingsSeries": "ProceedingsSeries",
191
+ "Proceedings": "Proceedings",
192
+ "ReportComponent": "ReportComponent",
193
+ "ReportSeries": "ReportSeries",
194
+ "Report": "Report",
195
+ "Review": "PeerReview",
196
+ "Other": "Other",
197
+ }
198
+
199
+ # source: https://github.com/datacite/schema/blob/master/source/meta/kernel-4/include/datacite-resourceType-v4.xsd
200
+ DC_TO_CM_TRANSLATIONS = {
201
+ "Audiovisual": "Audiovisual",
202
+ "BlogPosting": "Article",
203
+ "Book": "Book",
204
+ "BookChapter": "BookChapter",
205
+ "Collection": "Collection",
206
+ "ComputationalNotebook": "ComputationalNotebook",
207
+ "ConferencePaper": "ProceedingsArticle",
208
+ "ConferenceProceeding": "Proceedings",
209
+ "DataPaper": "JournalArticle",
210
+ "Dataset": "Dataset",
211
+ "Dissertation": "Dissertation",
212
+ "Event": "Event",
213
+ "Image": "Image",
214
+ "Instrument": "Instrument",
215
+ "InteractiveResource": "InteractiveResource",
216
+ "Journal": "Journal",
217
+ "JournalArticle": "JournalArticle",
218
+ "Model": "Model",
219
+ "OutputManagementPlan": "OutputManagementPlan",
220
+ "PeerReview": "PeerReview",
221
+ "PhysicalObject": "PhysicalObject",
222
+ "Poster": "Presentation",
223
+ "Preprint": "Article",
224
+ "Report": "Report",
225
+ "Service": "Service",
226
+ "Software": "Software",
227
+ "Sound": "Sound",
228
+ "Standard": "Standard",
229
+ "StudyRegistration": "StudyRegistration",
230
+ "Text": "Document",
231
+ "Thesis": "Dissertation",
232
+ "Workflow": "Workflow",
233
+ "Other": "Other",
234
+ }
235
+
236
+ # https://github.com/zenodo/zenodo/blob/master/zenodo/modules/records/data/objecttypes.json
237
+ INVENIORDM_TO_CM_TRANSLATIONS = {
238
+ "book": "Book",
239
+ "section": "BookChapter",
240
+ "conferencepaper": "ProceedingsArticle",
241
+ "article": "JournalArticle",
242
+ "patent": "Patent",
243
+ "publication": "JournalArticle",
244
+ "report": "Report",
245
+ "softwaredocumentation": "Software",
246
+ "thesis": "Dissertation",
247
+ "technicalnote": "Report",
248
+ "workingpaper": "Report",
249
+ "datamanagementplan": "OutputManagementPlan",
250
+ "annotationcollection": "Collection",
251
+ "taxonomictreatment": "Collection",
252
+ "peerreview": "PeerReview",
253
+ "poster": "Presentation",
254
+ "presentation": "Presentation",
255
+ "dataset": "Dataset",
256
+ "figure": "Image",
257
+ "plot": "Image",
258
+ "drawing": "Image",
259
+ "photo": "Image",
260
+ "image": "Image",
261
+ "video": "Audiovisual",
262
+ "software": "Software",
263
+ "lesson": "InteractiveResource",
264
+ "physicalobject": "PhysicalObject",
265
+ "workflow": "Workflow",
266
+ "other": "Other",
267
+ }
268
+
269
+ CM_TO_INVENIORDM_TRANSLATIONS = {
270
+ "Article": "publication-preprint",
271
+ "Book": "book",
272
+ "Dataset": "dataset",
273
+ "Image": "image-other",
274
+ "JournalArticle": "publication-article",
275
+ "Presentation": "presentation",
276
+ "Software": "software",
277
+ "Other": "other",
278
+ }
279
+
280
+ CM_TO_DC_TRANSLATIONS = {
281
+ "Article": "Preprint",
282
+ "Audiovisual": "Audiovisual",
283
+ "Book": "Book",
284
+ "BookChapter": "BookChapter",
285
+ "Collection": "Collection",
286
+ "Dataset": "Dataset",
287
+ "Document": "Text",
288
+ "Entry": "Text",
289
+ "Event": "Event",
290
+ "Figure": "Image",
291
+ "Image": "Image",
292
+ "Instrument": "Instrument",
293
+ "JournalArticle": "JournalArticle",
294
+ "LegalDocument": "Text",
295
+ "Manuscript": "Text",
296
+ "Map": "Image",
297
+ "Patent": "Text",
298
+ "Performance": "Audiovisual",
299
+ "PersonalCommunication": "Text",
300
+ "Post": "Text",
301
+ "ProceedingsArticle": "ConferencePaper",
302
+ "Proceedings": "ConferenceProceeding",
303
+ "Report": "Report",
304
+ "Review": "PeerReview",
305
+ "Software": "Software",
306
+ "Sound": "Sound",
307
+ "Standard": "Standard",
308
+ "StudyRegistration": "StudyRegistration",
309
+ "WebPage": "Text",
310
+ }
311
+
312
+ RIS_TO_CM_TRANSLATIONS = {
313
+ "ABST": "Text",
314
+ "ADVS": "Text",
315
+ "AGGR": "Text",
316
+ "ANCIENT": "Text",
317
+ "ART": "Text",
318
+ "BILL": "Text",
319
+ "BLOG": "Text",
320
+ "BOOK": "Book",
321
+ "CASE": "Text",
322
+ "CHAP": "BookChapter",
323
+ "CHART": "Text",
324
+ "CLSWK": "Text",
325
+ "CTLG": "Collection",
326
+ "COMP": "Software",
327
+ "DATA": "Dataset",
328
+ "DBASE": "Database",
329
+ "DICT": "Dictionary",
330
+ "EBOOK": "Book",
331
+ "ECHAP": "BookChapter",
332
+ "EDBOOK": "Book",
333
+ "EJOUR": "JournalArticle",
334
+ "ELEC": "Text",
335
+ "ENCYC": "Encyclopedia",
336
+ "EQUA": "Equation",
337
+ "FIGURE": "Image",
338
+ "GEN": "CreativeWork",
339
+ "GOVDOC": "GovernmentDocument",
340
+ "GRANT": "Grant",
341
+ "HEAR": "Hearing",
342
+ "ICOMM": "Text",
343
+ "INPR": "Text",
344
+ "JFULL": "JournalArticle",
345
+ "JOUR": "JournalArticle",
346
+ "LEGAL": "LegalRuleOrRegulation",
347
+ "MANSCPT": "Text",
348
+ "MAP": "Map",
349
+ "MGZN": "MagazineArticle",
350
+ "MPCT": "Audiovisual",
351
+ "MULTI": "Audiovisual",
352
+ "MUSIC": "MusicScore",
353
+ "NEWS": "NewspaperArticle",
354
+ "PAMP": "Pamphlet",
355
+ "PAT": "Patent",
356
+ "PCOMM": "PersonalCommunication",
357
+ "RPRT": "Report",
358
+ "SER": "SerialPublication",
359
+ "SLIDE": "Slide",
360
+ "SOUND": "SoundRecording",
361
+ "STAND": "Standard",
362
+ "THES": "Dissertation",
363
+ "UNBILL": "UnenactedBill",
364
+ "UNPB": "UnpublishedWork",
365
+ "VIDEO": "Audiovisual",
366
+ "WEB": "WebPage",
367
+ }
368
+
369
+ CM_TO_RIS_TRANSLATIONS = {
370
+ "Article": "JOUR",
371
+ "Audiovisual": "VIDEO",
372
+ "Book": "BOOK",
373
+ "BookChapter": "CHAP",
374
+ "Collection": "CTLG",
375
+ "Dataset": "DATA",
376
+ "Dissertation": "THES",
377
+ "Document": "GEN",
378
+ "Entry": "DICT",
379
+ "Event": "GEN",
380
+ "Figure": "FIGURE",
381
+ "Image": "FIGURE",
382
+ "JournalArticle": "JOUR",
383
+ "LegalDocument": "GEN",
384
+ "Manuscript": "GEN",
385
+ "Map": "MAP",
386
+ "Patent": "PAT",
387
+ "Performance": "GEN",
388
+ "PersonalCommunication": "PCOMM",
389
+ "Post": "GEN",
390
+ "ProceedingsArticle": "CPAPER",
391
+ "Proceedings": "CONF",
392
+ "Report": "RPRT",
393
+ "Review": "GEN",
394
+ "Software": "COMP",
395
+ "Sound": "SOUND",
396
+ "Standard": "STAND",
397
+ "WebPage": "WEB",
398
+ }
399
+
400
+ SO_TO_CM_TRANSLATIONS = {
401
+ "Article": "Article",
402
+ "BlogPosting": "Article",
403
+ "Book": "Book",
404
+ "BookChapter": "BookChapter",
405
+ "CreativeWork": "Other",
406
+ "Dataset": "Dataset",
407
+ "DigitalDocument": "Document",
408
+ "Dissertation": "Dissertation",
409
+ "Instrument": "Instrument",
410
+ "NewsArticle": "Article",
411
+ "Legislation": "LegalDocument",
412
+ "Report": "Report",
413
+ "ScholarlyArticle": "JournalArticle",
414
+ "SoftwareSourceCode": "Software",
415
+ }
416
+
417
+ CM_TO_SO_TRANSLATIONS = {
418
+ "Article": "Article",
419
+ "Audiovisual": "CreativeWork",
420
+ "Book": "Book",
421
+ "BookChapter": "BookChapter",
422
+ "Collection": "CreativeWork",
423
+ "Dataset": "Dataset",
424
+ "Dissertation": "Dissertation",
425
+ "Document": "CreativeWork",
426
+ "Entry": "CreativeWork",
427
+ "Event": "CreativeWork",
428
+ "Figure": "CreativeWork",
429
+ "Image": "CreativeWork",
430
+ "Instrument": "Instrument",
431
+ "JournalArticle": "ScholarlyArticle",
432
+ "LegalDocument": "Legislation",
433
+ "Software": "SoftwareSourceCode",
434
+ "Presentation": "PresentationDigitalDocument",
435
+ }
436
+
437
+ SO_TO_DC_RELATION_TYPES = {
438
+ "citation": "References",
439
+ "isBasedOn": "IsSupplementedBy",
440
+ "sameAs": "IsIdenticalTo",
441
+ "isPartOf": "IsPartOf",
442
+ "hasPart": "HasPart",
443
+ "isPredecessor": "IsPreviousVersionOf",
444
+ "isSuccessor": "IsNewVersionOf",
445
+ }
446
+
447
+ SO_TO_DC_REVERSE_RELATION_TYPES = {
448
+ "citation": "IsReferencedBy",
449
+ "isBasedOn": "IsSupplementTo",
450
+ "sameAs": "IsIdenticalTo",
451
+ "isPartOf": "HasPart",
452
+ "hasPart": "IsPartOf",
453
+ "isPredecessor": "IsNewVersionOf",
454
+ "isSuccessor": "IsPreviousVersionOf",
455
+ }
456
+
457
+ CROSSREF_CONTAINER_TYPES = {
458
+ "book-chapter": "book",
459
+ "dataset": "database",
460
+ "journal-article": "journal",
461
+ "journal-issue": "journal",
462
+ "monograph": "book-series",
463
+ "proceedings-article": "proceedings",
464
+ "posted-content": "periodical",
465
+ }
466
+
467
+ COMMONMETA_CONTAINER_TYPES = {
468
+ "Article": "Periodical",
469
+ "BookChapter": "Book",
470
+ "Book": "BookSeries",
471
+ "Dataset": "Repository",
472
+ "JournalArticle": "Journal",
473
+ "JournalIssue": "Journal",
474
+ "Monograph": "Book",
475
+ "ProceedingsArticle": "Proceedings",
476
+ "Proceedings": "ProceedingsSeries",
477
+ "PostedContent": "Periodical",
478
+ }
479
+
480
+ CR_TO_CM_CONTAINER_TRANSLATIONS = {
481
+ "book": "Book",
482
+ "book-series": "BookSeries",
483
+ "database": "DataRepository",
484
+ "journal": "Journal",
485
+ "proceedings": "Proceedings",
486
+ "periodical": "Periodical",
487
+ }
488
+
489
+ DC_TO_CM_CONTAINER_TRANSLATIONS = {
490
+ "Book": "Book",
491
+ "BookSeries": "BookSeries",
492
+ "DataRepository": "DataRepository",
493
+ "Journal": "Journal",
494
+ "Periodical": "Periodical",
495
+ "Proceedings": "ProceedingsSeries",
496
+ "Repository": "Repository",
497
+ "Series": "Series",
498
+ }
499
+
500
+ DATACITE_CONTRIBUTOR_TYPES = {
501
+ "ContactPerson": "ContactPerson",
502
+ "DataCollector": "DataCollector",
503
+ "DataCurator": "DataCuration",
504
+ "DataManager": "DataManager",
505
+ "Distributor": "Distributor",
506
+ "Editor": "Editor",
507
+ "HostingInstitution": "HostingInstitution",
508
+ "Other": "Other",
509
+ "Producer": "Producer",
510
+ "ProjectLeader": "ProjectLeader",
511
+ "ProjectManager": "ProjectManager",
512
+ "ProjectMember": "ProjectMember",
513
+ "RegistrationAgency": "RegistrationAgency",
514
+ "RegistrationAuthority": "RegistrationAuthority",
515
+ "RelatedPerson": "RelatedPerson",
516
+ "ResearchGroup": "ResearchGroup",
517
+ "RightsHolder": "RightsHolder",
518
+ "Researcher": "Researcher",
519
+ "Sponsor": "Sponsor",
520
+ "Supervisor": "Supervision",
521
+ "WorkPackageLeader": "WorkPackageLeader",
522
+ }
523
+
524
+ # from commonmeta schema
525
+ COMMONMETA_RELATION_TYPES = [
526
+ "IsNewVersionOf",
527
+ "IsPreviousVersionOf",
528
+ "IsVersionOf",
529
+ "HasVersion",
530
+ "IsPartOf",
531
+ "HasPart",
532
+ "IsVariantFormOf",
533
+ "IsOriginalFormOf",
534
+ "IsIdenticalTo",
535
+ "IsTranslationOf",
536
+ "IsReviewedBy",
537
+ "Reviews",
538
+ "IsPreprintOf",
539
+ "HasPreprint",
540
+ "IsSupplementTo",
541
+ ]
542
+
543
+ # from commonmeta schema
544
+ COMMONMETA_CONTRIBUTOR_ROLES = [
545
+ "Author",
546
+ "Editor",
547
+ "Chair",
548
+ "Reviewer",
549
+ "ReviewAssistant",
550
+ "StatsReviewer",
551
+ "ReviewerExternal",
552
+ "Reader",
553
+ "Translator",
554
+ "ContactPerson",
555
+ "DataCollector",
556
+ "DataManager",
557
+ "Distributor",
558
+ "HostingInstitution",
559
+ "Producer",
560
+ "ProjectLeader",
561
+ "ProjectManager",
562
+ "ProjectMember",
563
+ "RegistrationAgency",
564
+ "RegistrationAuthority",
565
+ "RelatedPerson",
566
+ "ResearchGroup",
567
+ "RightsHolder",
568
+ "Researcher",
569
+ "Sponsor",
570
+ "WorkPackageLeader",
571
+ "Conceptualization",
572
+ "DataCuration",
573
+ "FormalAnalysis",
574
+ "FundingAcquisition",
575
+ "Investigation",
576
+ "Methodology",
577
+ "ProjectAdministration",
578
+ "Resources",
579
+ "Software",
580
+ "Supervision",
581
+ "Validation",
582
+ "Visualization",
583
+ "WritingOriginalDraft",
584
+ "WritingReviewEditing",
585
+ "Maintainer",
586
+ "Other",
587
+ ]