commonmeta-ruby 3.4.5 → 3.5.1

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 (54) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +8 -8
  3. data/csl-data.json +538 -0
  4. data/lib/commonmeta/author_utils.rb +103 -71
  5. data/lib/commonmeta/crossref_utils.rb +31 -25
  6. data/lib/commonmeta/metadata.rb +8 -14
  7. data/lib/commonmeta/metadata_utils.rb +4 -3
  8. data/lib/commonmeta/readers/bibtex_reader.rb +3 -3
  9. data/lib/commonmeta/readers/cff_reader.rb +7 -6
  10. data/lib/commonmeta/readers/codemeta_reader.rb +3 -3
  11. data/lib/commonmeta/readers/crossref_reader.rb +131 -124
  12. data/lib/commonmeta/readers/crossref_xml_reader.rb +7 -6
  13. data/lib/commonmeta/readers/csl_reader.rb +3 -4
  14. data/lib/commonmeta/readers/datacite_reader.rb +5 -5
  15. data/lib/commonmeta/readers/json_feed_reader.rb +8 -4
  16. data/lib/commonmeta/readers/npm_reader.rb +2 -2
  17. data/lib/commonmeta/readers/ris_reader.rb +1 -1
  18. data/lib/commonmeta/readers/schema_org_reader.rb +6 -4
  19. data/lib/commonmeta/schema_utils.rb +1 -1
  20. data/lib/commonmeta/utils.rb +4 -2
  21. data/lib/commonmeta/version.rb +1 -1
  22. data/lib/commonmeta/writers/bibtex_writer.rb +1 -1
  23. data/lib/commonmeta/writers/cff_writer.rb +5 -4
  24. data/lib/commonmeta/writers/codemeta_writer.rb +4 -2
  25. data/lib/commonmeta/writers/csv_writer.rb +4 -2
  26. data/lib/commonmeta/writers/datacite_writer.rb +1 -1
  27. data/lib/commonmeta/writers/jats_writer.rb +9 -5
  28. data/lib/commonmeta/writers/ris_writer.rb +2 -1
  29. data/lib/commonmeta/writers/schema_org_writer.rb +7 -4
  30. data/resources/{commonmeta_v0.9.3.json → commonmeta_v0.10.3.json} +138 -55
  31. data/resources/csl-citation.json +99 -0
  32. data/spec/author_utils_spec.rb +16 -16
  33. data/spec/cli_spec.rb +1 -1
  34. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_crossref_metadata/missing_contributor.yml +307 -0
  35. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_datacite_metadata/SoftwareSourceCode.yml +76 -0
  36. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_item_metadata/archived_wordpress_post.yml +119 -0
  37. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/book_oup.yml +107 -0
  38. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/write_metadata_as_crossref/journal_article_plos.yml +407 -0
  39. data/spec/metadata_spec.rb +2 -2
  40. data/spec/readers/bibtex_reader_spec.rb +5 -5
  41. data/spec/readers/cff_reader_spec.rb +127 -127
  42. data/spec/readers/codemeta_reader_spec.rb +11 -11
  43. data/spec/readers/crossref_reader_spec.rb +844 -835
  44. data/spec/readers/crossref_xml_reader_spec.rb +899 -901
  45. data/spec/readers/csl_reader_spec.rb +33 -33
  46. data/spec/readers/datacite_reader_spec.rb +106 -103
  47. data/spec/readers/json_feed_reader_spec.rb +68 -40
  48. data/spec/readers/npm_reader_spec.rb +32 -33
  49. data/spec/readers/ris_reader_spec.rb +36 -36
  50. data/spec/readers/schema_org_reader_spec.rb +289 -288
  51. data/spec/writers/codemeta_writer_spec.rb +19 -20
  52. data/spec/writers/crossref_xml_writer_spec.rb +73 -37
  53. data/spec/writers/datacite_writer_spec.rb +2 -1
  54. metadata +10 -3
@@ -0,0 +1,107 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.crossref.org/works/10.1093/oxfordhb/9780198746140.013.5/transform/application/vnd.crossref.unixsd+xml
6
+ body:
7
+ encoding: ASCII-8BIT
8
+ string: ''
9
+ headers:
10
+ Connection:
11
+ - close
12
+ Host:
13
+ - api.crossref.org
14
+ User-Agent:
15
+ - http.rb/5.1.1
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Fri, 08 Sep 2023 12:38:33 GMT
23
+ Transfer-Encoding:
24
+ - chunked
25
+ Link:
26
+ - <http://dx.doi.org/10.1093/oxfordhb/9780198746140.013.5>; rel="canonical"
27
+ Access-Control-Expose-Headers:
28
+ - Link
29
+ Access-Control-Allow-Headers:
30
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
31
+ Accept-Ranges, Cache-Control
32
+ Access-Control-Allow-Origin:
33
+ - "*"
34
+ Server:
35
+ - Jetty(9.4.40.v20210413)
36
+ X-Ratelimit-Limit:
37
+ - '50'
38
+ X-Ratelimit-Interval:
39
+ - 1s
40
+ X-Api-Pool:
41
+ - public
42
+ X-Rate-Limit-Limit:
43
+ - '50'
44
+ X-Rate-Limit-Interval:
45
+ - 1s
46
+ Permissions-Policy:
47
+ - interest-cohort=()
48
+ Connection:
49
+ - close
50
+ body:
51
+ encoding: ASCII-8BIT
52
+ string: !binary |-
53
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNyb3NzcmVmX3Jlc3VsdCB4bWxucz0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIiB2ZXJzaW9uPSIzLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIGh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3NjaGVtYXMvY3Jvc3NyZWZfcXVlcnlfb3V0cHV0My4wLnhzZCI+DQogIDxxdWVyeV9yZXN1bHQ+DQogICAgPGhlYWQ+DQogICAgICA8ZG9pX2JhdGNoX2lkPm5vbmU8L2RvaV9iYXRjaF9pZD4NCiAgICA8L2hlYWQ+DQogICAgPGJvZHk+DQogICAgICA8cXVlcnkgc3RhdHVzPSJyZXNvbHZlZCI+DQogICAgICAgIDxkb2kgdHlwZT0iYm9va190aXRsZSI+MTAuMTA5My9veGZvcmRoYi85NzgwMTk4NzQ2MTQwLjAxMy41PC9kb2k+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwdWJsaXNoZXItbmFtZSIgdHlwZT0ic3RyaW5nIj5PeGZvcmQgVW5pdmVyc2l0eSBQcmVzcyAoT1VQKTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwcmVmaXgtbmFtZSIgdHlwZT0ic3RyaW5nIj5PeGZvcmQgVW5pdmVyc2l0eSBQcmVzczwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJtZW1iZXItaWQiIHR5cGU9Im51bWJlciI+Mjg2PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImNpdGF0aW9uLWlkIiB0eXBlPSJudW1iZXIiPjk3NjQ3MzU0PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImJvb2staWQiIHR5cGU9Im51bWJlciI+MzAyMzQ1NDwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJzZXJpZXMtaWQiIHR5cGU9Im51bWJlciI+MTQzNjE1MjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJkZXBvc2l0LXRpbWVzdGFtcCIgdHlwZT0ibnVtYmVyIj4yMDIyMDcwNTE2MTMwMDwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJvd25lci1wcmVmaXgiIHR5cGU9InN0cmluZyI+MTAuMTA5MzwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJsYXN0LXVwZGF0ZSIgdHlwZT0iZGF0ZSI+MjAyMi0wOC0wMlQxNzowODozN1o8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0iY3JlYXRlZCIgdHlwZT0iZGF0ZSI+MjAxOC0wNC0wNVQxNDozMDowN1o8L2NybS1pdGVtPg0KICAgICAgICA8Y3JtLWl0ZW0gbmFtZT0iY2l0ZWRieS1jb3VudCIgdHlwZT0ibnVtYmVyIj4xPC9jcm0taXRlbT4NCiAgICAgICAgPGRvaV9yZWNvcmQ+DQogICAgICAgICAgPGNyb3NzcmVmIHhtbG5zPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSBodHRwOi8vZG9pLmNyb3NzcmVmLm9yZy9zY2hlbWFzL3VuaXhyZWYxLjEueHNkIj4NCiAgICAgICAgICAgIDxib29rIGJvb2tfdHlwZT0iZWRpdGVkX2Jvb2siPg0KICAgICAgICAgICAgICA8Ym9va19zZXRfbWV0YWRhdGEgbGFuZ3VhZ2U9ImVuIiBtZXRhZGF0YV9kaXN0cmlidXRpb25fb3B0cz0icXVlcnkiIHJlZmVyZW5jZV9kaXN0cmlidXRpb25fb3B0cz0ibm9uZSI+DQogICAgICAgICAgICAgICAgPHNldF9tZXRhZGF0YT4NCiAgICAgICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgICAgIDx0aXRsZT5PeGZvcmQgSGFuZGJvb2tzIE9ubGluZTwvdGl0bGU+DQogICAgICAgICAgICAgICAgICAgIDxvcmlnaW5hbF9sYW5ndWFnZV90aXRsZT5PeGZvcmQgSGFuZGJvb2tzIE9ubGluZTwvb3JpZ2luYWxfbGFuZ3VhZ2VfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgICAgIDxub2lzYm4gcmVhc29uPSJzaW1wbGVfc2VyaWVzIiAvPg0KICAgICAgICAgICAgICAgIDwvc2V0X21ldGFkYXRhPg0KICAgICAgICAgICAgICAgIDxjb250cmlidXRvcnM+DQogICAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iZWRpdG9yIiBsYW5ndWFnZT0iZW4iIHNlcXVlbmNlPSJmaXJzdCI+DQogICAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkRhbmllbDwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+Q296b3J0PC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJlZGl0b3IiIGxhbmd1YWdlPSJlbiIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5KYW1lcyBNYXJrPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgICA8c3VybmFtZT5TaGllbGRzPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIGxhbmd1YWdlPSJlbiIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5CYXJicmEgUi48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkNsYXl0b248L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDwvY29udHJpYnV0b3JzPg0KICAgICAgICAgICAgICAgIDx0aXRsZXM+DQogICAgICAgICAgICAgICAgICA8dGl0bGU+VGhlIENoYW5naW5nIFdheSBvZiB0aGUgQm9kaGlzYXR0dmE8L3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPG9yaWdpbmFsX2xhbmd1YWdlX3RpdGxlPlRoZSBDaGFuZ2luZyBXYXkgb2YgdGhlIEJvZGhpc2F0dHZhPC9vcmlnaW5hbF9sYW5ndWFnZV90aXRsZT4NCiAgICAgICAgICAgICAgICA8L3RpdGxlcz4NCiAgICAgICAgICAgICAgICA8YWJzdHJhY3QgeG1sbnM9Imh0dHA6Ly93d3cubmNiaS5ubG0ubmloLmdvdi9KQVRTMSI+DQogICAgICAgICAgICAgICAgICA8cD5UaGlzIGNoYXB0ZXIgZXhwbG9yZXMgdGhlIG5hdHVyZSBvZiB0aGUgY29ubmVjdGlvbnMgYmV0d2VlbiBjb250ZW1wb3JhcnkgdW5kZXJzdGFuZGluZ3Mgb2YgdGhlIGJvZGhpc2F0dHZhIHBhdGggYXMgc29jaWFsbHkgZW5nYWdlZCwgYW5kIHRoZSBjYW5vbmljYWwgTWFoxIF5xIFuYSB0cmFkaXRpb24gaW4gSW5kaWHigJR0aGUgVWdyYXBhcmlw4bmbY2NoxIEtc8WrdHJhIGFuZCB0aGUgd29ya3Mgb2YgxZrEgW50aWRldmEuIFRoZXNlIGNhbm9uaWNhbCB0cmVhdG1lbnRzIG9mIHRoZSBib2RoaXNhdHR2YeKAmXMgY2FyZWVyIGFyZSBjb21wYXJlZCB3aXRoIGEgY29udGVtcG9yYXJ5IHVuZGVyc3RhbmRpbmcgYXMgcmVmbGVjdGVkIGluIHRoZSBjb21tZW50YXJ5IG9uIMWaxIFudGlkZXZh4oCZcyBCb2RoaWNhcnnEgXZhdMSBcmEgYnkgUGVtYSBDaMO2ZHLDtm4uIFRoaXMgYW5hbHlzaXMgcmV2ZWFscyBkaXN0aW5jdCB2aXNpb25zIG9mIHRoZSBib2RoaXNhdHR2YSwgZnJvbSB0aGUgVWdyYeKAmXMgZWxpdGUgc3VwZXJoZXJvLCB0byDFmsSBbnRpZGV2YeKAmXMgc2FpbnRseSBib2RoaXNhdHR2YSwgdG8gdGhlIG1vZGVybiB2aWV3IG9mIHRoZSBib2RoaXNhdHR2YSBhcyBzb2NpYWwgYWN0aXZpc3QuIFRoZSBjYXJlZXIgb2YgdGhlIGJvZGhpc2F0dHZhIGlzIGZ1cnRoZXJtb3JlIHNob3duIHRvIGludm9sdmUgYSByYW5nZSBvZiB0eXBlcyBvZiBzb2NpYWwgZW5nYWdlbWVudC4gV2hpbGUgdGhlIGNhbm9uaWNhbCB0ZXh0cyBzdXBwb3J0IHRoZSBpZGVhbCBvZiBpbWJ1aW5nIGFsbCBkYWlseSBhY3Rpdml0aWVzIHdpdGggYW4gYWx0cnVpc3RpYyBtb3RpdmUsIGFzIHdlbGwgYXMgZW5kb3JzaW5nIHNlbGZsZXNzIHNlcnZpY2UgdG8gbWVldCB0aGUgbmVlZHMgYW5kIHdhbnRzIG9mIHNlbnRpZW50IGJlaW5ncywgb25seSB0aGUgY29udGVtcG9yYXJ5IHJlYWRpbmcgb2YgdGhlIGJvZGhpc2F0dHZhIHBhdGggYWR2b2NhdGVzIHNvY2lhbCBhY3Rpb24gdG8gYWRkcmVzcyBzeXN0ZW1pYyBjYXVzZXMgb2YgY29sbGVjdGl2ZSBzdWZmZXJpbmcuPC9wPg0KICAgICAgICAgICAgICAgIDwvYWJzdHJhY3Q+DQogICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgPHB1YmxpY2F0aW9uX2RhdGU+DQogICAgICAgICAgICAgICAgICA8bW9udGg+MDQ8L21vbnRoPg0KICAgICAgICAgICAgICAgICAgPGRheT4wNTwvZGF5Pg0KICAgICAgICAgICAgICAgICAgPHllYXI+MjAxODwveWVhcj4NCiAgICAgICAgICAgICAgICA8L3B1YmxpY2F0aW9uX2RhdGU+DQogICAgICAgICAgICAgICAgPG5vaXNibiByZWFzb249InNpbXBsZV9zZXJpZXMiIC8+DQogICAgICAgICAgICAgICAgPHB1Ymxpc2hlcj4NCiAgICAgICAgICAgICAgICAgIDxwdWJsaXNoZXJfbmFtZT5PeGZvcmQgVW5pdmVyc2l0eSBQcmVzczwvcHVibGlzaGVyX25hbWU+DQogICAgICAgICAgICAgICAgPC9wdWJsaXNoZXI+DQogICAgICAgICAgICAgICAgPGRvaV9kYXRhPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMDkzL294Zm9yZGhiLzk3ODAxOTg3NDYxNDAuMDEzLjU8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDxyZXNvdXJjZSBtaW1lX3R5cGU9InRleHQvaHRtbCI+aHR0cHM6Ly9hY2FkZW1pYy5vdXAuY29tL2VkaXRlZC12b2x1bWUvMjgwODEvY2hhcHRlci8yMTIxMTY0MTU8L3Jlc291cmNlPg0KICAgICAgICAgICAgICAgIDwvZG9pX2RhdGE+DQogICAgICAgICAgICAgIDwvYm9va19zZXRfbWV0YWRhdGE+DQogICAgICAgICAgICA8L2Jvb2s+DQogICAgICAgICAgPC9jcm9zc3JlZj4NCiAgICAgICAgPC9kb2lfcmVjb3JkPg0KICAgICAgPC9xdWVyeT4NCiAgICA8L2JvZHk+DQogIDwvcXVlcnlfcmVzdWx0Pg0KPC9jcm9zc3JlZl9yZXN1bHQ+
54
+ recorded_at: Fri, 08 Sep 2023 12:38:33 GMT
55
+ - request:
56
+ method: get
57
+ uri: https://doi.org/ra/10.1093
58
+ body:
59
+ encoding: ASCII-8BIT
60
+ string: ''
61
+ headers:
62
+ Connection:
63
+ - close
64
+ Host:
65
+ - doi.org
66
+ User-Agent:
67
+ - http.rb/5.1.1
68
+ response:
69
+ status:
70
+ code: 200
71
+ message: OK
72
+ headers:
73
+ Date:
74
+ - Fri, 08 Sep 2023 12:38:33 GMT
75
+ Content-Type:
76
+ - application/json;charset=UTF-8
77
+ Transfer-Encoding:
78
+ - chunked
79
+ Connection:
80
+ - close
81
+ Permissions-Policy:
82
+ - interest-cohort=(),browsing-topics=()
83
+ Cf-Cache-Status:
84
+ - DYNAMIC
85
+ Report-To:
86
+ - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=CJu8UZPC1uKKemDoP6wOVhPXYI6BdK9DAEU1B23uCzbS%2FnvgMgFAAThp0MNrmafDA6suQg1ktV5ZjJKvPcB6VQgm56mbliBi2gmTTOg3HW3q0CeFWw5ck0L95%2BgXmFdtoUhskQ0%3D"}],"group":"cf-nel","max_age":604800}'
87
+ Nel:
88
+ - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}'
89
+ Strict-Transport-Security:
90
+ - max-age=31536000; includeSubDomains; preload
91
+ Server:
92
+ - cloudflare
93
+ Cf-Ray:
94
+ - 80373fcdadab0a5f-AMS
95
+ Alt-Svc:
96
+ - h3=":443"; ma=86400
97
+ body:
98
+ encoding: UTF-8
99
+ string: |-
100
+ [
101
+ {
102
+ "DOI": "10.1093",
103
+ "RA": "Crossref"
104
+ }
105
+ ]
106
+ recorded_at: Fri, 08 Sep 2023 12:38:34 GMT
107
+ recorded_with: VCR 6.2.0
@@ -0,0 +1,407 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://doi.org/ra/10.1371
6
+ body:
7
+ encoding: ASCII-8BIT
8
+ string: ''
9
+ headers:
10
+ Connection:
11
+ - close
12
+ Host:
13
+ - doi.org
14
+ User-Agent:
15
+ - http.rb/5.1.1
16
+ response:
17
+ status:
18
+ code: 200
19
+ message: OK
20
+ headers:
21
+ Date:
22
+ - Fri, 08 Sep 2023 12:42:54 GMT
23
+ Content-Type:
24
+ - application/json;charset=UTF-8
25
+ Transfer-Encoding:
26
+ - chunked
27
+ Connection:
28
+ - close
29
+ Permissions-Policy:
30
+ - interest-cohort=(),browsing-topics=()
31
+ Cf-Cache-Status:
32
+ - DYNAMIC
33
+ Report-To:
34
+ - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=Vg9jJRoD8Bx%2F%2FtAJtsL%2Bjc5hyQRjXstObTEF7JWwOO4SO0zjBXT1SgkRWZb2YFtwZBSJDzLRmzXdMTcTLXE41WwyDIa9LQ0ityFcC5A0xQ3zV%2BjNuMcrqsUaW4zS4JC9kTT5440%3D"}],"group":"cf-nel","max_age":604800}'
35
+ Nel:
36
+ - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}'
37
+ Strict-Transport-Security:
38
+ - max-age=31536000; includeSubDomains; preload
39
+ Server:
40
+ - cloudflare
41
+ Cf-Ray:
42
+ - 80374628ad4041bc-AMS
43
+ Alt-Svc:
44
+ - h3=":443"; ma=86400
45
+ body:
46
+ encoding: UTF-8
47
+ string: |-
48
+ [
49
+ {
50
+ "DOI": "10.1371",
51
+ "RA": "Crossref"
52
+ }
53
+ ]
54
+ recorded_at: Fri, 08 Sep 2023 12:42:54 GMT
55
+ - request:
56
+ method: get
57
+ uri: https://api.crossref.org/works/10.1371/journal.pone.0000030
58
+ body:
59
+ encoding: ASCII-8BIT
60
+ string: ''
61
+ headers:
62
+ Connection:
63
+ - close
64
+ Host:
65
+ - api.crossref.org
66
+ User-Agent:
67
+ - http.rb/5.1.1
68
+ response:
69
+ status:
70
+ code: 200
71
+ message: OK
72
+ headers:
73
+ Date:
74
+ - Fri, 08 Sep 2023 12:42:54 GMT
75
+ Content-Type:
76
+ - application/json
77
+ Transfer-Encoding:
78
+ - chunked
79
+ Access-Control-Expose-Headers:
80
+ - Link
81
+ Access-Control-Allow-Headers:
82
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
83
+ Accept-Ranges, Cache-Control
84
+ Access-Control-Allow-Origin:
85
+ - "*"
86
+ Server:
87
+ - Jetty(9.4.40.v20210413)
88
+ X-Ratelimit-Limit:
89
+ - '50'
90
+ X-Ratelimit-Interval:
91
+ - 1s
92
+ X-Api-Pool:
93
+ - public
94
+ X-Rate-Limit-Limit:
95
+ - '50'
96
+ X-Rate-Limit-Interval:
97
+ - 1s
98
+ Permissions-Policy:
99
+ - interest-cohort=()
100
+ Connection:
101
+ - close
102
+ body:
103
+ encoding: UTF-8
104
+ string: '{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,9,7]],"date-time":"2023-09-07T13:30:02Z","timestamp":1694093402929},"reference-count":73,"publisher":"Public
105
+ Library of Science (PLoS)","issue":"1","license":[{"start":{"date-parts":[[2006,12,20]],"date-time":"2006-12-20T00:00:00Z","timestamp":1166572800000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":["www.plosone.org"],"crossmark-restriction":false},"short-container-title":["PLoS
106
+ ONE"],"DOI":"10.1371\/journal.pone.0000030","type":"journal-article","created":{"date-parts":[[2006,12,20]],"date-time":"2006-12-20T19:38:57Z","timestamp":1166643537000},"page":"e30","update-policy":"http:\/\/dx.doi.org\/10.1371\/journal.pone.corrections_policy","source":"Crossref","is-referenced-by-count":63,"title":["Triose
107
+ Phosphate Isomerase Deficiency Is Caused by Altered Dimerization\u2013Not
108
+ Catalytic Inactivity\u2013of the Mutant Enzymes"],"prefix":"10.1371","volume":"1","author":[{"given":"Markus","family":"Ralser","sequence":"first","affiliation":[]},{"given":"Gino","family":"Heeren","sequence":"additional","affiliation":[]},{"given":"Michael","family":"Breitenbach","sequence":"additional","affiliation":[]},{"given":"Hans","family":"Lehrach","sequence":"additional","affiliation":[]},{"given":"Sylvia","family":"Krobitsch","sequence":"additional","affiliation":[]}],"member":"340","published-online":{"date-parts":[[2006,12,20]]},"reference":[{"key":"ref1","doi-asserted-by":"crossref","first-page":"229","DOI":"10.1056\/NEJM196502042720503","article-title":"Hereditary
109
+ Hemolytic Anemia with Triosephosphate Isomerase Deficiency.","volume":"272","author":"AS
110
+ Schneider","year":"1965","journal-title":"N Engl J Med"},{"key":"ref2","doi-asserted-by":"crossref","first-page":"119","DOI":"10.1053\/beha.2000.0061","article-title":"Triosephosphate
111
+ isomerase deficiency: historical perspectives and molecular aspects.","volume":"13","author":"AS
112
+ Schneider","year":"2000","journal-title":"Baillieres Best Pract Res Clin Haematol"},{"key":"ref3","doi-asserted-by":"crossref","first-page":"82","DOI":"10.1006\/bcmd.1996.0011","article-title":"Hematologically
113
+ important mutations: triosephosphate isomerase.","volume":"22","author":"A
114
+ Schneider","year":"1996","journal-title":"Blood Cells Mol Dis"},{"key":"ref4","doi-asserted-by":"crossref","first-page":"30","DOI":"10.1042\/bst0300030","article-title":"Triosephosphate
115
+ isomerase deficiency: a neurodegenerative misfolding disease.","volume":"30","author":"J
116
+ Olah","year":"2002","journal-title":"Biochem Soc Trans"},{"key":"ref5","first-page":"308","article-title":"Molecular
117
+ analysis of a series of alleles in humans with reduced activity at the triosephosphate
118
+ isomerase locus.","volume":"58","author":"M Watanabe","year":"1996","journal-title":"Am
119
+ J Hum Genet"},{"key":"ref6","doi-asserted-by":"crossref","first-page":"303","DOI":"10.1111\/j.1469-1809.1987.tb01065.x","article-title":"Frequency
120
+ and distribution of rare electrophoretic mobility variants in a population
121
+ of human newborns in Ann Arbor, Michigan.","volume":"51 ( Pt 4)","author":"HW
122
+ Mohrenweiser","year":"1987","journal-title":"Ann Hum Genet"},{"key":"ref7","doi-asserted-by":"crossref","first-page":"960","DOI":"10.1203\/00006450-198211000-00012","article-title":"Elevated
123
+ frequency of carriers for triosephosphate isomerase deficiency in newborn
124
+ infants.","volume":"16","author":"HW Mohrenweiser","year":"1982","journal-title":"Pediatr
125
+ Res"},{"key":"ref8","doi-asserted-by":"crossref","first-page":"336","DOI":"10.1007\/BF00291364","article-title":"Prevalence
126
+ of partial deficiency of red cell triosephosphate isomerase in Germany\u2013a
127
+ study of 3000 people.","volume":"67","author":"SW Eber","year":"1984","journal-title":"Hum
128
+ Genet"},{"key":"ref9","first-page":"663","article-title":"Search for mutations
129
+ altering protein charge and\/or function in children of atomic bomb survivors:
130
+ final report.","volume":"42","author":"JV Neel","year":"1988","journal-title":"Am
131
+ J Hum Genet"},{"key":"ref10","doi-asserted-by":"crossref","first-page":"5046","DOI":"10.1073\/pnas.78.8.5046","article-title":"Frequency
132
+ of enzyme deficiency variants in erythrocytes of newborn infants.","volume":"78","author":"HW
133
+ Mohrenweiser","year":"1981","journal-title":"Proc Natl Acad Sci U S A"},{"key":"ref11","doi-asserted-by":"crossref","first-page":"195","DOI":"10.1111\/j.1365-2362.1979.tb00923.x","article-title":"Hereditary
134
+ deficiency of triosephosphate isomerase in four unrelated families.","volume":"9","author":"SW
135
+ Eber","year":"1979","journal-title":"Eur J Clin Invest"},{"key":"ref12","doi-asserted-by":"crossref","first-page":"837","DOI":"10.1093\/genetics\/123.4.837","article-title":"Characterization
136
+ of triosephosphate isomerase mutants with reduced enzyme activity in Mus musculus.","volume":"123","author":"S
137
+ Merkle","year":"1989","journal-title":"Genetics"},{"key":"ref13","doi-asserted-by":"crossref","first-page":"437","DOI":"10.1006\/jtbi.1996.0184","article-title":"Triosephosphate
138
+ isomerase deficiency: predictions and facts.","volume":"182","author":"F Orosz","year":"1996","journal-title":"J
139
+ Theor Biol"},{"key":"ref14","doi-asserted-by":"crossref","first-page":"7903","DOI":"10.1073\/pnas.83.20.7903","article-title":"Human
140
+ triose-phosphate isomerase deficiency: a single amino acid substitution results
141
+ in a thermolabile enzyme.","volume":"83","author":"IO Daar","year":"1986","journal-title":"Proc
142
+ Natl Acad Sci U S A"},{"key":"ref15","doi-asserted-by":"crossref","first-page":"290","DOI":"10.1002\/(SICI)1098-1004(1997)10:4<290::AID-HUMU4>3.0.CO;2-L","article-title":"Evidence
143
+ for founder effect of the Glu104Asp substitution and identification of new
144
+ mutations in triosephosphate isomerase deficiency.","volume":"10","author":"R
145
+ Arya","year":"1997","journal-title":"Hum Mutat"},{"key":"ref16","doi-asserted-by":"crossref","first-page":"634","DOI":"10.1007\/BF02265287","article-title":"Human
146
+ triosephosphate isomerase: substitution of Arg for Gly at position 122 in
147
+ a thermolabile electromorph variant, TPI-Manchester.","volume":"88","author":"BA
148
+ Perry","year":"1992","journal-title":"Hum Genet"},{"key":"ref17","first-page":"1130","article-title":"Triose
149
+ phosphate isomerase deficiency in 3 French families: two novel null alleles,
150
+ a frameshift mutation (TPI Alfortville) and an alteration in the initiation
151
+ codon (TPI Paris).","volume":"96","author":"C Valentin","year":"2000","journal-title":"Blood"},{"key":"ref18","first-page":"1260","article-title":"Human
152
+ triosephosphate isomerase deficiency resulting from mutation of Phe-240.","volume":"52","author":"ML
153
+ Chang","year":"1993","journal-title":"Am J Hum Genet"},{"key":"ref19","doi-asserted-by":"crossref","first-page":"486","DOI":"10.1007\/BF00216456","article-title":"Hereditary
154
+ triosephosphate isomerase (TPI) deficiency: two severely affected brothers
155
+ one with and one without neurological symptoms.","volume":"92","author":"S
156
+ Hollan","year":"1993","journal-title":"Hum Genet"},{"key":"ref20","first-page":"929","article-title":"[Glycolytic
157
+ enzyme defects and neurodegeneration].","volume":"192","author":"S Hollan","year":"1998","journal-title":"C
158
+ R Seances Soc Biol Fil"},{"key":"ref21","doi-asserted-by":"crossref","first-page":"10362","DOI":"10.1073\/pnas.94.19.10362","article-title":"Search
159
+ for the pathogenesis of the differing phenotype in two compound heterozygote
160
+ Hungarian brothers with the same genotypic triosephosphate isomerase deficiency.","volume":"94","author":"S
161
+ Hollan","year":"1997","journal-title":"Proc Natl Acad Sci U S A"},{"key":"ref22","doi-asserted-by":"crossref","first-page":"268","DOI":"10.1073\/pnas.92.1.268","article-title":"Erythrocyte
162
+ lipids in triose-phosphate isomerase deficiency.","volume":"92","author":"S
163
+ Hollan","year":"1995","journal-title":"Proc Natl Acad Sci U S A"},{"key":"ref23","doi-asserted-by":"crossref","first-page":"1026","DOI":"10.1073\/pnas.97.3.1026","article-title":"Enhanced
164
+ association of mutant triosephosphate isomerase to red cell membranes and
165
+ to brain microtubules.","volume":"97","author":"F Orosz","year":"2000","journal-title":"Proc
166
+ Natl Acad Sci U S A"},{"key":"ref24","doi-asserted-by":"crossref","first-page":"119","DOI":"10.1016\/0378-1119(95)00037-7","article-title":"Yeast
167
+ vectors for the controlled expression of heterologous proteins in different
168
+ genetic backgrounds.","volume":"156","author":"D Mumberg","year":"1995","journal-title":"Gene"},{"key":"ref25","doi-asserted-by":"crossref","first-page":"747","DOI":"10.1016\/j.bbrc.2006.06.151","article-title":"An
169
+ efficient and economic enhancer mix for PCR.","volume":"347","author":"M Ralser","year":"2006","journal-title":"Biochem
170
+ Biophys Res Commun"},{"key":"ref26","doi-asserted-by":"crossref","first-page":"115","DOI":"10.1002\/(SICI)1097-0061(19980130)14:2<115::AID-YEA204>3.0.CO;2-2","article-title":"Designer
171
+ deletion strains derived from <italic>Saccharomyces cerevisiae<\/italic> S288C:
172
+ a useful set of strains and plasmids for PCR-mediated gene disruption and
173
+ other applications.","volume":"14","author":"CB Brachmann","year":"1998","journal-title":"Yeast"},{"key":"ref27","doi-asserted-by":"crossref","first-page":"853","DOI":"10.1016\/j.molcel.2004.09.016","article-title":"A
174
+ protein interaction network links GIT1, an enhancer of huntingtin aggregation,
175
+ to Huntington&apos;s disease.","volume":"15","author":"H Goehler","year":"2004","journal-title":"Mol
176
+ Cell"},{"key":"ref28","doi-asserted-by":"crossref","first-page":"339","DOI":"10.1007\/BF00340712","article-title":"High
177
+ efficiency transformation of intact yeast cells using single stranded nucleic
178
+ acids as a carrier.","volume":"16","author":"RH Schiestl","year":"1989","journal-title":"Curr
179
+ Genet"},{"key":"ref29","doi-asserted-by":"crossref","first-page":"591","DOI":"10.1021\/bp960043c","article-title":"Glycerol
180
+ production in a triose phosphate isomerase deficient mutant of <italic>Saccharomyces
181
+ cerevisiae<\/italic>.","volume":"12","author":"C Compagno","year":"1996","journal-title":"Biotechnol
182
+ Prog"},{"key":"ref30","doi-asserted-by":"crossref","first-page":"2814","DOI":"10.1128\/AEM.68.6.2814-2821.2002","article-title":"Metabolic
183
+ engineering of glycerol production in <italic>Saccharomyces cerevisiae<\/italic>.","volume":"68","author":"KM
184
+ Overkamp","year":"2002","journal-title":"Appl Environ Microbiol"},{"key":"ref31","doi-asserted-by":"crossref","first-page":"152","DOI":"10.1128\/JB.139.1.152-160.1979","article-title":"Physiological
185
+ effects of seven different blocks in glycolysis in <italic>Saccharomyces cerevisiae<\/italic>.","volume":"139","author":"M
186
+ Ciriacy","year":"1979","journal-title":"J Bacteriol"},{"key":"ref32","doi-asserted-by":"crossref","first-page":"332","DOI":"10.1016\/j.abb.2004.01.003","article-title":"Hypoxic
187
+ up-regulation of triosephosphate isomerase expression in mouse brain capillary
188
+ endothelial cells.","volume":"423","author":"R Yamaji","year":"2004","journal-title":"Arch
189
+ Biochem Biophys"},{"key":"ref33","doi-asserted-by":"crossref","first-page":"8","DOI":"10.1186\/1472-6750-4-8","article-title":"Rapid
190
+ isolation of yeast genomic DNA: Bust n&apos; Grab.","volume":"4","author":"S
191
+ Harju","year":"2004","journal-title":"BMC Biotechnol"},{"key":"ref34","doi-asserted-by":"crossref","first-page":"2893","DOI":"10.1093\/hmg\/ddi321","article-title":"Ataxin-2
192
+ and huntingtin interact with endophilin-A complexes to function in plastin-associated
193
+ pathways.","volume":"14","author":"M Ralser","year":"2005","journal-title":"Hum
194
+ Mol Genet"},{"key":"ref35","doi-asserted-by":"crossref","first-page":"157","DOI":"10.1016\/j.femsyr.2004.05.008","article-title":"The
195
+ role of respiration, reactive oxygen species and oxidative stress in mother
196
+ cell-specific ageing of yeast strains defective in the RAS signalling pathway.","volume":"5","author":"G
197
+ Heeren","year":"2004","journal-title":"FEMS Yeast Res"},{"key":"ref36","doi-asserted-by":"crossref","first-page":"165","DOI":"10.2144\/05392BM01","article-title":"Generation
198
+ of a yeast two-hybrid strain suitable for competitive protein binding analysis.","volume":"39","author":"M
199
+ Ralser","year":"2005","journal-title":"Biotechniques"},{"key":"ref37","doi-asserted-by":"crossref","first-page":"475","DOI":"10.1016\/S0021-9258(18)62514-1","article-title":"A
200
+ kinetic study of glycolytic enzyme synthesis in yeast.","volume":"246","author":"PK
201
+ Maitra","year":"1971","journal-title":"J Biol Chem"},{"key":"ref38","doi-asserted-by":"crossref","first-page":"346","DOI":"10.1107\/S1744309105008341","article-title":"Structure
202
+ of a high-resolution crystal form of human triosephosphate isomerase: improvement
203
+ of crystals using the gel-tube method.","volume":"61","author":"T Kinoshita","year":"2005","journal-title":"Acta
204
+ Crystallograph Sect F Struct Biol Cryst Commun"},{"key":"ref39","doi-asserted-by":"crossref","first-page":"41805","DOI":"10.1074\/jbc.M505181200","article-title":"Genetic
205
+ perturbation of glycolysis results in inhibition of de novo inositol biosynthesis.","volume":"280","author":"Y
206
+ Shi","year":"2005","journal-title":"J Biol Chem"},{"key":"ref40","doi-asserted-by":"crossref","first-page":"3106","DOI":"10.1182\/blood.V98.10.3106","article-title":"Distinct
207
+ behavior of mutant triosephosphate isomerase in hemolysate and in isolated
208
+ form: molecular basis of enzyme deficiency.","volume":"98","author":"F Orosz","year":"2001","journal-title":"Blood"},{"key":"ref41","doi-asserted-by":"crossref","first-page":"442","DOI":"10.1007\/s00438-003-0941-0","article-title":"Interrelations
209
+ between the efficiency of translation start sites and other sequence features
210
+ of yeast mRNAs.","volume":"270","author":"AV Kochetov","year":"2003","journal-title":"Mol
211
+ Genet Genomics"},{"key":"ref42","doi-asserted-by":"crossref","first-page":"2662","DOI":"10.1073\/pnas.92.7.2662","article-title":"Adherence
212
+ to the first-AUG rule when a second AUG codon follows closely upon the first.","volume":"92","author":"M
213
+ Kozak","year":"1995","journal-title":"Proc Natl Acad Sci U S A"},{"key":"ref43","doi-asserted-by":"crossref","first-page":"491","DOI":"10.1007\/s00438-005-1152-7","article-title":"The
214
+ role of alternative translation start sites in the generation of human protein
215
+ diversity.","volume":"273","author":"AV Kochetov","year":"2005","journal-title":"Mol
216
+ Genet Genomics"},{"key":"ref44","first-page":"226","article-title":"Neural
217
+ network prediction of translation initiation sites in eukaryotes: perspectives
218
+ for EST and genome analysis.","volume":"5","author":"AG Pedersen","year":"1997","journal-title":"Proc
219
+ Int Conf Intell Syst Mol Biol"},{"key":"ref45","doi-asserted-by":"crossref","first-page":"15","DOI":"10.1016\/S0378-1119(01)00552-2","article-title":"Nonsense-mediated
220
+ mRNA decay in <italic>Saccharomyces cerevisiae<\/italic>.","volume":"274","author":"CI
221
+ Gonzalez","year":"2001","journal-title":"Gene"},{"key":"ref46","doi-asserted-by":"crossref","first-page":"5820","DOI":"10.1128\/MCB.15.10.5820","article-title":"Correlation
222
+ of two-hybrid affinity data with in vitro measurements.","volume":"15","author":"J
223
+ Estojak","year":"1995","journal-title":"Mol Cell Biol"},{"key":"ref47","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1006\/abio.2000.4672","article-title":"Uses
224
+ of lacZ to study gene function: evaluation of beta-galactosidase assays employed
225
+ in the yeast two-hybrid system.","volume":"285","author":"IG Serebriiskii","year":"2000","journal-title":"Anal
226
+ Biochem"},{"key":"ref48","doi-asserted-by":"crossref","first-page":"1166","DOI":"10.1111\/j.1365-2958.2001.02317.x","article-title":"Aged
227
+ mother cells of <italic>Saccharomyces cerevisiae<\/italic> show markers of
228
+ oxidative stress and apoptosis.","volume":"39","author":"P Laun","year":"2001","journal-title":"Mol
229
+ Microbiol"},{"key":"ref49","doi-asserted-by":"crossref","first-page":"757","DOI":"10.1083\/jcb.145.4.757","article-title":"Oxygen
230
+ stress: a regulator of apoptosis in yeast.","volume":"145","author":"F Madeo","year":"1999","journal-title":"J
231
+ Cell Biol"},{"key":"ref50","doi-asserted-by":"crossref","first-page":"236","DOI":"10.1046\/j.1525-1373.1999.d01-140.x","article-title":"Antioxidants,
232
+ oxidative stress, and degenerative neurological disorders.","volume":"222","author":"RA
233
+ Floyd","year":"1999","journal-title":"Proc Soc Exp Biol Med"},{"key":"ref51","doi-asserted-by":"crossref","first-page":"761","DOI":"10.1007\/BF02026706","article-title":"Triosephosphate
234
+ isomerase deficiency: haemolytic anaemia, myopathy with altered mitochondria
235
+ and mental retardation due to a new variant with accelerated enzyme catabolism
236
+ and diminished specific activity.","volume":"150","author":"SW Eber","year":"1991","journal-title":"Eur
237
+ J Pediatr"},{"key":"ref52","doi-asserted-by":"crossref","first-page":"48931","DOI":"10.1074\/jbc.M208806200","article-title":"Interaction
238
+ of cofilin with triose-phosphate isomerase contributes glycolytic fuel for
239
+ Na,K-ATPase via Rho-mediated signaling pathway.","volume":"277","author":"J
240
+ Jung","year":"2002","journal-title":"J Biol Chem"},{"key":"ref53","doi-asserted-by":"crossref","first-page":"6499","DOI":"10.1016\/S0021-9258(19)44720-0","article-title":"Studies
241
+ on human triosephosphate isomerase. II. Nature of the electrophoretic multiplicity
242
+ in erythrocytes.","volume":"247","author":"TH Sawyer","year":"1972","journal-title":"J
243
+ Biol Chem"},{"key":"ref54","doi-asserted-by":"crossref","first-page":"733","DOI":"10.1016\/0305-0491(74)90259-4","article-title":"Comparison
244
+ of the electrophoretic properties of triosephosphate isomerases of various
245
+ tissues and species.","volume":"49","author":"RM Snapka","year":"1974","journal-title":"Comp
246
+ Biochem Physiol B"},{"key":"ref55","doi-asserted-by":"crossref","first-page":"D46","DOI":"10.1093\/nar\/gkj031","article-title":"ASD:
247
+ a bioinformatics resource on alternative splicing.","volume":"34","author":"S
248
+ Stamm","year":"2006","journal-title":"Nucleic Acids Res"},{"key":"ref56","doi-asserted-by":"crossref","first-page":"114","DOI":"10.1111\/j.1471-4159.2004.02854.x","article-title":"Pathogenic
249
+ mutations inactivate parkin by distinct mechanisms.","volume":"92","author":"IH
250
+ Henn","year":"2005","journal-title":"J Neurochem"},{"key":"ref57","doi-asserted-by":"crossref","first-page":"865","DOI":"10.1016\/j.mehy.2005.06.006","article-title":"The
251
+ codon for the methionine at position 129 (M129) in the human prion protein
252
+ provides an alternative initiation site for translation and renders individuals
253
+ homozygous for M129 more susceptible to prion disease.","volume":"65","author":"GP
254
+ Concepcion","year":"2005","journal-title":"Med Hypotheses"},{"key":"ref58","doi-asserted-by":"crossref","first-page":"2767","DOI":"10.1038\/sj.onc.1203599","article-title":"Initiation
255
+ of translation from a downstream in-frame AUG codon on BRCA1 can generate
256
+ the novel isoform protein DeltaBRCA1(17aa).","volume":"19","author":"J Liu","year":"2000","journal-title":"Oncogene"},{"key":"ref59","doi-asserted-by":"crossref","first-page":"618","DOI":"10.1016\/j.tibs.2004.09.006","article-title":"The
257
+ power of two: protein dimerization in biology.","volume":"29","author":"NJ
258
+ Marianayagam","year":"2004","journal-title":"Trends Biochem Sci"},{"key":"ref60","doi-asserted-by":"crossref","first-page":"675","DOI":"10.1042\/BJ20050993","article-title":"Triosephosphate
259
+ isomerase deficiency: consequences of an inherited mutation at mRNA, protein
260
+ and metabolic levels.","volume":"392","author":"J Olah","year":"2005","journal-title":"Biochem
261
+ J"},{"key":"ref61","doi-asserted-by":"crossref","first-page":"593","DOI":"10.1016\/0006-291X(69)90850-X","article-title":"Diamide,
262
+ a new reagent for the intracellular oxidation of glutathione to the disulfide.","volume":"37","author":"NS
263
+ Kosower","year":"1969","journal-title":"Biochem Biophys Res Commun"},{"key":"ref62","doi-asserted-by":"crossref","first-page":"123","DOI":"10.1016\/0076-6879(95)51116-4","article-title":"Diamide:
264
+ an oxidant probe for thiols.","volume":"251","author":"NS Kosower","year":"1995","journal-title":"Methods
265
+ Enzymol"},{"key":"ref63","doi-asserted-by":"crossref","first-page":"6564","DOI":"10.1073\/pnas.0305888101","article-title":"Cells
266
+ have distinct mechanisms to maintain protection against different reactive
267
+ oxygen species: oxidative-stress-response genes.","volume":"101","author":"GW
268
+ Thorpe","year":"2004","journal-title":"Proc Natl Acad Sci U S A"},{"key":"ref64","doi-asserted-by":"crossref","first-page":"513","DOI":"10.1042\/bj20030414","article-title":"Protein
269
+ S-thiolation targets glycolysis and protein synthesis in response to oxidative
270
+ stress in the yeast <italic>Saccharomyces cerevisiae<\/italic>.","volume":"374","author":"D
271
+ Shenton","year":"2003","journal-title":"Biochem J"},{"key":"ref65","doi-asserted-by":"crossref","first-page":"2266","DOI":"10.1096\/fj.00-0074com","article-title":"H2O2-induced
272
+ block of glycolysis as an active ADP-ribosylation reaction protecting cells
273
+ from apoptosis.","volume":"14","author":"C Colussi","year":"2000","journal-title":"Faseb
274
+ J"},{"key":"ref66","doi-asserted-by":"crossref","first-page":"1507","DOI":"10.1016\/S0891-5849(02)01086-9","article-title":"Hydrogen
275
+ peroxide-induced carbonylation of key metabolic enzymes in <italic>Saccharomyces
276
+ cerevisiae<\/italic>: the involvement of the oxidative stress response regulators
277
+ Yap1 and Skn7.","volume":"33","author":"VM Costa","year":"2002","journal-title":"Free
278
+ Radic Biol Med"},{"key":"ref67","doi-asserted-by":"crossref","first-page":"2650","DOI":"10.1128\/MCB.19.4.2650","article-title":"Differential
279
+ protein S-thiolation of glyceraldehyde-3-phosphate dehydrogenase isoenzymes
280
+ influences sensitivity to oxidative stress.","volume":"19","author":"CM Grant","year":"1999","journal-title":"Mol
281
+ Cell Biol"},{"key":"ref68","doi-asserted-by":"crossref","first-page":"1033","DOI":"10.1111\/j.1432-1033.1994.tb18821.x","article-title":"S-thiolation
282
+ of human endothelial cell glyceraldehyde-3-phosphate dehydrogenase after hydrogen
283
+ peroxide treatment.","volume":"221","author":"I Schuppe-Koistinen","year":"1994","journal-title":"Eur
284
+ J Biochem"},{"key":"ref69","doi-asserted-by":"crossref","first-page":"25010","DOI":"10.1016\/S0021-9258(17)31491-6","article-title":"S-thiolation
285
+ of glyceraldehyde-3-phosphate dehydrogenase induced by the phagocytosis-associated
286
+ respiratory burst in blood monocytes.","volume":"269","author":"V Ravichandran","year":"1994","journal-title":"J
287
+ Biol Chem"},{"key":"ref70","doi-asserted-by":"crossref","first-page":"427","DOI":"10.1007\/BF00311211","article-title":"Mutants
288
+ of <italic>Saccharomyces cerevisiae<\/italic> sensitive to oxidative and osmotic
289
+ stress.","volume":"27","author":"B Krems","year":"1995","journal-title":"Curr
290
+ Genet"},{"key":"ref71","doi-asserted-by":"crossref","first-page":"187","DOI":"10.1146\/annurev.arplant.56.032604.144246","article-title":"Redox
291
+ regulation: a broadening horizon.","volume":"56","author":"BB Buchanan","year":"2005","journal-title":"Annu
292
+ Rev Plant Biol"},{"key":"ref72","doi-asserted-by":"crossref","first-page":"811","DOI":"10.1089\/ars.2000.2.4-811","article-title":"Antioxidant
293
+ function of thioredoxin and glutaredoxin systems.","volume":"2","author":"A
294
+ Holmgren","year":"2000","journal-title":"Antioxid Redox Signal"},{"key":"ref73","doi-asserted-by":"crossref","first-page":"769","DOI":"10.1056\/NEJM199109123251104","article-title":"Efficacy
295
+ of statewide neonatal screening for cystic fibrosis by assay of trypsinogen
296
+ concentrations.","volume":"325","author":"KB Hammond","year":"1991","journal-title":"N
297
+ Engl J Med"}],"container-title":["PLoS ONE"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/dx.plos.org\/10.1371\/journal.pone.0000030","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,8,6]],"date-time":"2021-08-06T23:49:55Z","timestamp":1628293795000},"score":1,"resource":{"primary":{"URL":"https:\/\/dx.plos.org\/10.1371\/journal.pone.0000030"}},"subtitle":[],"editor":[{"given":"Guilhem","family":"Janbon","sequence":"first","affiliation":[]}],"short-title":[],"issued":{"date-parts":[[2006,12,20]]},"references-count":73,"journal-issue":{"issue":"1","published-online":{"date-parts":[[2006,12,20]]}},"URL":"http:\/\/dx.doi.org\/10.1371\/journal.pone.0000030","relation":{},"ISSN":["1932-6203"],"issn-type":[{"value":"1932-6203","type":"electronic"}],"subject":["Multidisciplinary"],"published":{"date-parts":[[2006,12,20]]}}}'
298
+ recorded_at: Fri, 08 Sep 2023 12:42:54 GMT
299
+ - request:
300
+ method: get
301
+ uri: https://api.crossref.org/members/340
302
+ body:
303
+ encoding: ASCII-8BIT
304
+ string: ''
305
+ headers:
306
+ Connection:
307
+ - close
308
+ Host:
309
+ - api.crossref.org
310
+ User-Agent:
311
+ - http.rb/5.1.1
312
+ response:
313
+ status:
314
+ code: 200
315
+ message: OK
316
+ headers:
317
+ Date:
318
+ - Fri, 08 Sep 2023 12:42:55 GMT
319
+ Content-Type:
320
+ - application/json
321
+ Transfer-Encoding:
322
+ - chunked
323
+ Access-Control-Expose-Headers:
324
+ - Link
325
+ Access-Control-Allow-Headers:
326
+ - X-Requested-With, Accept, Accept-Encoding, Accept-Charset, Accept-Language,
327
+ Accept-Ranges, Cache-Control
328
+ Access-Control-Allow-Origin:
329
+ - "*"
330
+ Server:
331
+ - Jetty(9.4.40.v20210413)
332
+ X-Ratelimit-Limit:
333
+ - '50'
334
+ X-Ratelimit-Interval:
335
+ - 1s
336
+ X-Api-Pool:
337
+ - public
338
+ X-Rate-Limit-Limit:
339
+ - '50'
340
+ X-Rate-Limit-Interval:
341
+ - 1s
342
+ Permissions-Policy:
343
+ - interest-cohort=()
344
+ Connection:
345
+ - close
346
+ body:
347
+ encoding: UTF-8
348
+ string: '{"status":"ok","message-type":"member","message-version":"1.0.0","message":{"last-status-check-time":1694129365389,"primary-name":"Public
349
+ Library of Science (PLoS)","counts":{"current-dois":54820,"backfile-dois":289964,"total-dois":344784},"breakdowns":{"dois-by-issued-year":[[2013,36487],[2014,35452],[2015,33537],[2012,27083],[2016,26725],[2017,24569],[2018,22183],[2021,20842],[2022,20628],[2020,20426],[2019,19633],[2011,16660],[2023,13350],[2010,9348],[2009,6703],[2008,4589],[2007,2671],[2005,1643],[2006,1612],[2004,540],[2003,103]]},"prefixes":["10.24196","10.1371"],"coverage":{"affiliations-current":0.0,"similarity-checking-current":1.0,"descriptions-current":0.0,"ror-ids-current":0.0,"funders-backfile":0.2255038556510463,"licenses-backfile":0.9877364086576265,"funders-current":0.6876322510032835,"affiliations-backfile":7.207791312024941E-4,"resource-links-backfile":0.0,"orcids-backfile":0.2808555544826254,"update-policies-current":1.0,"ror-ids-backfile":0.0,"orcids-current":0.9599963516964611,"similarity-checking-backfile":0.9124029189830462,"references-backfile":0.9200521444041329,"descriptions-backfile":0.0,"award-numbers-backfile":0.1966451007711302,"update-policies-backfile":0.9945613938281994,"licenses-current":0.9999452754469172,"award-numbers-current":0.5794418095585553,"abstracts-backfile":0.0123291167179374,"resource-links-current":0.0,"abstracts-current":0.9574790222546516,"references-current":0.9997081357168917},"prefix":[{"name":"Public
350
+ Library of Science (PLoS)","value":"10.24196"},{"name":"Public Library of
351
+ Science","value":"10.1371"}],"id":340,"tokens":["public","library","of","science","plos"],"counts-type":{"all":{"journal-article":344784,"journal":1,"component":3610715,"dataset":7},"backfile":{"journal-article":289964},"current":{"journal-article":54820}},"coverage-type":{"all":{"journal-article":{"last-status-check-time":1694129365389,"affiliations":6.061766207248596E-4,"abstracts":0.162606153417792,"orcids":0.3888376490788436,"licenses":0.9896775952480394,"references":0.9327172954661469,"funders":0.2989813912478537,"similarity-checking":0.9263306881989885,"award-numbers":0.2575090491438118,"ror-ids":0.0,"update-policies":0.9954261218618033,"resource-links":0.0,"descriptions":0.0},"journal":{"last-status-check-time":1694129365389,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0},"component":{"last-status-check-time":1694129365389,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":4.763599453293877E-5},"dataset":{"last-status-check-time":1694129365389,"affiliations":0.0,"abstracts":0.0,"orcids":0.0,"licenses":0.0,"references":0.0,"funders":0.0,"similarity-checking":0.0,"award-numbers":0.0,"ror-ids":0.0,"update-policies":0.0,"resource-links":0.0,"descriptions":0.0}},"backfile":{"journal-article":{"last-status-check-time":1694129365389,"affiliations":7.207791312024941E-4,"abstracts":0.0123291167179374,"orcids":0.2808555544826254,"licenses":0.9877364086576265,"references":0.9200521444041329,"funders":0.2255038556510463,"similarity-checking":0.9124029189830462,"award-numbers":0.1966451007711302,"ror-ids":0.0,"update-policies":0.9945613938281994,"resource-links":0.0,"descriptions":0.0}},"current":{"journal-article":{"last-status-check-time":1694129365389,"affiliations":0.0,"abstracts":0.9574790222546516,"orcids":0.9599963516964611,"licenses":0.9999452754469172,"references":0.9997081357168917,"funders":0.6876322510032835,"similarity-checking":1.0,"award-numbers":0.5794418095585553,"ror-ids":0.0,"update-policies":1.0,"resource-links":0.0,"descriptions":0.0}}},"flags":{"deposits-abstracts-current":true,"deposits-orcids-current":true,"deposits":true,"deposits-affiliations-backfile":true,"deposits-update-policies-backfile":true,"deposits-similarity-checking-backfile":true,"deposits-award-numbers-current":true,"deposits-resource-links-current":false,"deposits-ror-ids-current":false,"deposits-articles":true,"deposits-affiliations-current":false,"deposits-funders-current":true,"deposits-references-backfile":true,"deposits-ror-ids-backfile":false,"deposits-abstracts-backfile":true,"deposits-licenses-backfile":true,"deposits-award-numbers-backfile":true,"deposits-descriptions-current":false,"deposits-references-current":true,"deposits-resource-links-backfile":false,"deposits-descriptions-backfile":false,"deposits-orcids-backfile":true,"deposits-funders-backfile":true,"deposits-update-policies-current":true,"deposits-similarity-checking-current":true,"deposits-licenses-current":true},"location":"San
352
+ Francisco, CA, United States","names":["Public Library of Science (PLoS)","Public
353
+ Library of Science"]}}'
354
+ recorded_at: Fri, 08 Sep 2023 12:42:55 GMT
355
+ - request:
356
+ method: get
357
+ uri: https://doi.org/ra/10.1371
358
+ body:
359
+ encoding: ASCII-8BIT
360
+ string: ''
361
+ headers:
362
+ Connection:
363
+ - close
364
+ Host:
365
+ - doi.org
366
+ User-Agent:
367
+ - http.rb/5.1.1
368
+ response:
369
+ status:
370
+ code: 200
371
+ message: OK
372
+ headers:
373
+ Date:
374
+ - Fri, 08 Sep 2023 12:42:55 GMT
375
+ Content-Type:
376
+ - application/json;charset=UTF-8
377
+ Transfer-Encoding:
378
+ - chunked
379
+ Connection:
380
+ - close
381
+ Permissions-Policy:
382
+ - interest-cohort=(),browsing-topics=()
383
+ Cf-Cache-Status:
384
+ - DYNAMIC
385
+ Report-To:
386
+ - '{"endpoints":[{"url":"https:\/\/a.nel.cloudflare.com\/report\/v3?s=%2FdXsevVbKKu2o%2BnfM3Fxb7TzsZmm%2Ft%2FTp80ef48I1noPzaoqlQCrnCjw7%2FO9HGwX4QEXHhQtLJjrTnL%2Bd%2FLcj848UdAspUjrQeQY0FhMRDr6z2e%2FXnxrtt804Hcb7hqCHrFsACA%3D"}],"group":"cf-nel","max_age":604800}'
387
+ Nel:
388
+ - '{"success_fraction":0,"report_to":"cf-nel","max_age":604800}'
389
+ Strict-Transport-Security:
390
+ - max-age=31536000; includeSubDomains; preload
391
+ Server:
392
+ - cloudflare
393
+ Cf-Ray:
394
+ - 803746320ab20a48-AMS
395
+ Alt-Svc:
396
+ - h3=":443"; ma=86400
397
+ body:
398
+ encoding: UTF-8
399
+ string: |-
400
+ [
401
+ {
402
+ "DOI": "10.1371",
403
+ "RA": "Crossref"
404
+ }
405
+ ]
406
+ recorded_at: Fri, 08 Sep 2023 12:42:55 GMT
407
+ recorded_with: VCR 6.2.0
@@ -11,14 +11,14 @@ describe Commonmeta::Metadata, vcr: true do
11
11
  it 'unknown DOI prefix' do
12
12
  input = 'http://doi.org/10.0137/14802'
13
13
  subject = described_class.new(input: input)
14
- expect(subject.errors).to eq(['root is missing required keys: id, type, url, creators, titles, publisher, date'])
14
+ expect(subject.errors).to eq(['root is missing required keys: id, type, url, contributors, titles, publisher, date'])
15
15
  expect(subject.valid?).to be false
16
16
  end
17
17
 
18
18
  it 'DOI RA not Crossref or DataCite' do
19
19
  input = 'http://doi.org/10.3980/j.issn.2222-3959.2015.03.07'
20
20
  subject = described_class.new(input: input)
21
- expect(subject.errors).to eq(['root is missing required keys: id, type, url, creators, titles, publisher, date'])
21
+ expect(subject.errors).to eq(['root is missing required keys: id, type, url, contributors, titles, publisher, date'])
22
22
  expect(subject.valid?).to be false
23
23
  end
24
24
  end
@@ -31,9 +31,9 @@ describe Commonmeta::Metadata, vcr: true do
31
31
  expect(subject.id).to eq('https://doi.org/10.7554/elife.01567')
32
32
  expect(subject.type).to eq('JournalArticle')
33
33
  expect(subject.url).to eq('http://elifesciences.org/lookup/doi/10.7554/eLife.01567')
34
- expect(subject.creators.length).to eq(5)
35
- expect(subject.creators.first).to eq('familyName' => 'Sankar', 'givenName' => 'Martial',
36
- 'type' => 'Person')
34
+ expect(subject.contributors.length).to eq(5)
35
+ expect(subject.contributors.first).to eq('familyName' => 'Sankar', 'givenName' => 'Martial',
36
+ 'type' => 'Person', 'contributorRoles' => ['Author'])
37
37
  expect(subject.titles).to eq([{ 'title' => 'Automated quantitative histology reveals vascular morphodynamics during Arabidopsis hypocotyl secondary growth' }])
38
38
  expect(subject.descriptions.first['description']).to start_with('Among various advantages, their small size makes model organisms preferred subjects of investigation.')
39
39
  expect(subject.license).to eq('id' => 'CC-BY-3.0', 'url' => 'https://creativecommons.org/licenses/by/3.0/legalcode')
@@ -48,8 +48,8 @@ describe Commonmeta::Metadata, vcr: true do
48
48
  expect(subject.state).to eq('not_found')
49
49
  expect(subject.id).to eq('https://doi.org/10.7554/elife.01567')
50
50
  expect(subject.type).to eq('Dissertation')
51
- expect(subject.creators).to eq([{ 'familyName' => 'Toparlar', 'givenName' => 'Y.',
52
- 'type' => 'Person' }])
51
+ expect(subject.contributors).to eq([{ 'familyName' => 'Toparlar', 'givenName' => 'Y.',
52
+ 'type' => 'Person', 'contributorRoles' => ['Author'] }])
53
53
  expect(subject.titles).to eq([{ 'title' => 'A multiscale analysis of the urban heat island effect: from city averaged temperatures to the energy demand of individual buildings' }])
54
54
  expect(subject.descriptions.first['description']).to start_with('Designing the climates of cities')
55
55
  expect(subject.date).to eq('published' => '2018')