bolognese 1.8.3 → 1.8.8

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,138 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://doi.org/ra/10.2172
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.7.1; mailto:info@datacite.org)
12
+ Accept:
13
+ - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: ''
18
+ headers:
19
+ Date:
20
+ - Wed, 29 Jul 2020 21:23:48 GMT
21
+ Content-Type:
22
+ - application/json;charset=UTF-8
23
+ Connection:
24
+ - keep-alive
25
+ Set-Cookie:
26
+ - __cfduid=d01ef02c612a86c1cf7a059f5c9c803201596057828; expires=Fri, 28-Aug-20
27
+ 21:23:48 GMT; path=/; domain=.doi.org; HttpOnly; SameSite=Lax; Secure
28
+ Cf-Cache-Status:
29
+ - DYNAMIC
30
+ Cf-Request-Id:
31
+ - 043e0ed580000096d473a7a200000001
32
+ Expect-Ct:
33
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
34
+ Strict-Transport-Security:
35
+ - max-age=31536000; includeSubDomains; preload
36
+ Server:
37
+ - cloudflare
38
+ Cf-Ray:
39
+ - 5ba9e7359f0c96d4-FRA
40
+ body:
41
+ encoding: ASCII-8BIT
42
+ string: |-
43
+ [
44
+ {
45
+ "DOI": "10.2172",
46
+ "RA": "Crossref"
47
+ }
48
+ ]
49
+ http_version:
50
+ recorded_at: Wed, 29 Jul 2020 21:23:48 GMT
51
+ - request:
52
+ method: get
53
+ uri: https://api.crossref.org/works/10.2172/972169/transform/application/vnd.crossref.unixsd+xml
54
+ body:
55
+ encoding: US-ASCII
56
+ string: ''
57
+ headers:
58
+ User-Agent:
59
+ - Mozilla/5.0 (compatible; Maremma/4.7.1; mailto:info@datacite.org)
60
+ Accept:
61
+ - text/xml
62
+ response:
63
+ status:
64
+ code: 200
65
+ message: OK
66
+ headers:
67
+ Link:
68
+ - <http://dx.doi.org/10.2172/972169>; rel="canonical"
69
+ Access-Control-Allow-Origin:
70
+ - "*"
71
+ Access-Control-Allow-Headers:
72
+ - X-Requested-With
73
+ Content-Length:
74
+ - '4217'
75
+ Server:
76
+ - http-kit
77
+ Date:
78
+ - Wed, 29 Jul 2020 21:23:49 GMT
79
+ X-Rate-Limit-Limit:
80
+ - '50'
81
+ X-Rate-Limit-Interval:
82
+ - 1s
83
+ Connection:
84
+ - close
85
+ body:
86
+ encoding: ASCII-8BIT
87
+ string: "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<crossref_result xmlns=\"http://www.crossref.org/qrschema/3.0\"
88
+ version=\"3.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://www.crossref.org/qrschema/3.0
89
+ http://www.crossref.org/schemas/crossref_query_output3.0.xsd\">\r\n <query_result>\r\n
90
+ \ <head>\r\n <doi_batch_id>none</doi_batch_id>\r\n </head>\r\n <body>\r\n
91
+ \ <query status=\"resolved\">\r\n <doi type=\"report-paper_title\">10.2172/972169</doi>\r\n
92
+ \ <crm-item name=\"publisher-name\" type=\"string\">Office of Scientific
93
+ and Technical Information (OSTI)</crm-item>\r\n <crm-item name=\"prefix-name\"
94
+ type=\"string\">Office of Scientific and Technical Information</crm-item>\r\n
95
+ \ <crm-item name=\"member-id\" type=\"number\">960</crm-item>\r\n <crm-item
96
+ name=\"citation-id\" type=\"number\">41225045</crm-item>\r\n <crm-item
97
+ name=\"book-id\" type=\"number\">584445</crm-item>\r\n <crm-item name=\"deposit-timestamp\"
98
+ type=\"number\">20100218105553</crm-item>\r\n <crm-item name=\"owner-prefix\"
99
+ type=\"string\">10.2172</crm-item>\r\n <crm-item name=\"last-update\"
100
+ type=\"date\">2010-02-19T03:56:05Z</crm-item>\r\n <crm-item name=\"created\"
101
+ type=\"date\">2010-02-19T03:56:03Z</crm-item>\r\n <crm-item name=\"citedby-count\"
102
+ type=\"number\">159</crm-item>\r\n <doi_record>\r\n <crossref
103
+ xmlns=\"http://www.crossref.org/xschema/1.0\" xsi:schemaLocation=\"http://www.crossref.org/xschema/1.0
104
+ http://doi.crossref.org/schemas/unixref1.0.xsd\">\r\n <report-paper
105
+ publication_type=\"full_text\">\r\n <report-paper_metadata language=\"en\">\r\n
106
+ \ <contributors>\r\n <person_name sequence=\"first\"
107
+ contributor_role=\"author\">\r\n <given_name>P.</given_name>\r\n
108
+ \ <surname>Denholm</surname>\r\n </person_name>\r\n
109
+ \ <person_name sequence=\"additional\" contributor_role=\"author\">\r\n
110
+ \ <given_name>E.</given_name>\r\n <surname>Ela</surname>\r\n
111
+ \ </person_name>\r\n <person_name sequence=\"additional\"
112
+ contributor_role=\"author\">\r\n <given_name>B.</given_name>\r\n
113
+ \ <surname>Kirby</surname>\r\n </person_name>\r\n
114
+ \ <person_name sequence=\"additional\" contributor_role=\"author\">\r\n
115
+ \ <given_name>M.</given_name>\r\n <surname>Milligan</surname>\r\n
116
+ \ </person_name>\r\n </contributors>\r\n <titles>\r\n
117
+ \ <title>Role of Energy Storage with Renewable Electricity
118
+ Generation</title>\r\n </titles>\r\n <publication_date
119
+ media_type=\"online\">\r\n <month>01</month>\r\n <day>01</day>\r\n
120
+ \ <year>2010</year>\r\n </publication_date>\r\n
121
+ \ <approval_date>\r\n <month>02</month>\r\n
122
+ \ <day>18</day>\r\n <year>2010</year>\r\n
123
+ \ </approval_date>\r\n <institution>\r\n <institution_name>National
124
+ Renewable Energy Laboratory (NREL)</institution_name>\r\n <institution_acronym>NREL</institution_acronym>\r\n
125
+ \ <institution_place>Golden, CO (United States)</institution_place>\r\n
126
+ \ </institution>\r\n <institution>\r\n <institution_name>USDOE</institution_name>\r\n
127
+ \ </institution>\r\n <publisher_item>\r\n <item_number
128
+ item_number_type=\"report-number\">NREL/TP-6A2-47187</item_number>\r\n <item_number
129
+ item_number_type=\"sequence-number\">972169</item_number>\r\n </publisher_item>\r\n
130
+ \ <contract_number>AC36-99-GO10337</contract_number>\r\n <doi_data>\r\n
131
+ \ <doi>10.2172/972169</doi>\r\n <timestamp>20100218105553</timestamp>\r\n
132
+ \ <resource>http://www.osti.gov/servlets/purl/972169-1QXROM/</resource>\r\n
133
+ \ </doi_data>\r\n </report-paper_metadata>\r\n
134
+ \ </report-paper>\r\n </crossref>\r\n </doi_record>\r\n
135
+ \ </query>\r\n </body>\r\n </query_result>\r\n</crossref_result>"
136
+ http_version:
137
+ recorded_at: Wed, 29 Jul 2020 21:23:49 GMT
138
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,104 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://doi.org/ra/10.6084
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.7.1; mailto:info@datacite.org)
12
+ Accept:
13
+ - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: ''
18
+ headers:
19
+ Date:
20
+ - Fri, 21 Aug 2020 11:43:04 GMT
21
+ Content-Type:
22
+ - application/json;charset=UTF-8
23
+ Connection:
24
+ - keep-alive
25
+ Set-Cookie:
26
+ - __cfduid=dfd6c87cff8b6f860fa122f6cddf80f0f1598010184; expires=Sun, 20-Sep-20
27
+ 11:43:04 GMT; path=/; domain=.doi.org; HttpOnly; SameSite=Lax; Secure
28
+ Cf-Cache-Status:
29
+ - DYNAMIC
30
+ Cf-Request-Id:
31
+ - 04b26d6b940000d6e96a26c200000001
32
+ Expect-Ct:
33
+ - max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
34
+ Strict-Transport-Security:
35
+ - max-age=31536000; includeSubDomains; preload
36
+ Server:
37
+ - cloudflare
38
+ Cf-Ray:
39
+ - 5c641825bf84d6e9-FRA
40
+ body:
41
+ encoding: ASCII-8BIT
42
+ string: |-
43
+ [
44
+ {
45
+ "DOI": "10.6084",
46
+ "RA": "DataCite"
47
+ }
48
+ ]
49
+ http_version:
50
+ recorded_at: Fri, 21 Aug 2020 11:43:04 GMT
51
+ - request:
52
+ method: get
53
+ uri: https://api.datacite.org/dois/10.6084/m9.figshare.1286826.v1?include=media,client
54
+ body:
55
+ encoding: US-ASCII
56
+ string: ''
57
+ headers:
58
+ User-Agent:
59
+ - Mozilla/5.0 (compatible; Maremma/4.7.1; mailto:info@datacite.org)
60
+ Accept:
61
+ - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
62
+ response:
63
+ status:
64
+ code: 200
65
+ message: OK
66
+ headers:
67
+ Date:
68
+ - Fri, 21 Aug 2020 11:43:05 GMT
69
+ Content-Type:
70
+ - application/json; charset=utf-8
71
+ Connection:
72
+ - keep-alive
73
+ Status:
74
+ - 200 OK
75
+ X-Anonymous-Consumer:
76
+ - 'true'
77
+ Cache-Control:
78
+ - max-age=0, private, must-revalidate
79
+ Vary:
80
+ - Accept-Encoding, Origin
81
+ X-Request-Id:
82
+ - f32dc0c7-ae28-4225-aebb-690f7ed8f96f
83
+ Etag:
84
+ - W/"1053de58f4bcf558a2c6eff57d658893"
85
+ X-Runtime:
86
+ - '0.281050'
87
+ X-Powered-By:
88
+ - Phusion Passenger 6.0.6
89
+ Server:
90
+ - nginx/1.14.0 + Phusion Passenger 6.0.6
91
+ body:
92
+ encoding: ASCII-8BIT
93
+ string: '{"data":{"id":"10.6084/m9.figshare.1286826.v1","type":"dois","attributes":{"doi":"10.6084/m9.figshare.1286826.v1","prefix":"10.6084","suffix":"m9.figshare.1286826.v1","identifiers":[],"alternateIdentifiers":[],"creators":[{"name":"Kramer,
94
+ Bianca","nameType":"Personal","givenName":"Bianca","familyName":"Kramer","affiliation":[],"nameIdentifiers":[{"nameIdentifier":"https://orcid.org/0000-0002-5965-6560","nameIdentifierScheme":"ORCID"}]},{"name":"Bosman,
95
+ Jeroen","nameType":"Personal","givenName":"Jeroen","familyName":"Bosman","affiliation":[],"nameIdentifiers":[{"nameIdentifier":"https://orcid.org/0000-0001-5796-2727","nameIdentifierScheme":"ORCID"}]}],"titles":[{"title":"101
96
+ Innovations in Scholarly Communication - the Changing Research Workflow"}],"publisher":"Figshare","container":{},"publicationYear":2015,"subjects":[],"contributors":[],"dates":[{"date":"2015","dateType":"Issued"}],"language":null,"types":{"ris":"DATA","bibtex":"misc","citeproc":"dataset","schemaOrg":"Dataset","resourceType":"Dataset","resourceTypeGeneral":"Dataset"},"relatedIdentifiers":[],"sizes":[],"formats":[],"version":null,"rightsList":[{"rights":"CC-BY","rightsUri":"http://creativecommons.org/licenses/by/3.0/us"}],"descriptions":[],"geoLocations":[],"fundingReferences":[],"xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291cmNlIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtMyIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVtYS1pbnN0YW5jZSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtMyBodHRwOi8vc2NoZW1hLmRhdGFjaXRlLm9yZy9tZXRhL2tlcm5lbC0zL21ldGFkYXRhLnhzZCI+PGlkZW50aWZpZXIgaWRlbnRpZmllclR5cGU9IkRPSSI+MTAuNjA4NC9NOS5GSUdTSEFSRS4xMjg2ODI2LlYxPC9pZGVudGlmaWVyPjx0aXRsZXM+PHRpdGxlPjEwMSBJbm5vdmF0aW9ucyBpbiBTY2hvbGFybHkgQ29tbXVuaWNhdGlvbiAtIHRoZSBDaGFuZ2luZyBSZXNlYXJjaCBXb3JrZmxvdzwvdGl0bGU+PC90aXRsZXM+PHB1Ymxpc2hlcj5GaWdzaGFyZTwvcHVibGlzaGVyPjxwdWJsaWNhdGlvblllYXI+MjAxNTwvcHVibGljYXRpb25ZZWFyPjxyZXNvdXJjZVR5cGUgcmVzb3VyY2VUeXBlR2VuZXJhbD0iRGF0YXNldCI+RGF0YXNldDwvcmVzb3VyY2VUeXBlPjxyaWdodHNMaXN0PjxyaWdodHMgcmlnaHRzVVJJPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS8zLjAvdXMvIj5DQy1CWTwvcmlnaHRzPjwvcmlnaHRzTGlzdD48Y3JlYXRvcnM+PGNyZWF0b3I+PGNyZWF0b3JOYW1lPkJpYW5jYSAgS3JhbWVyPC9jcmVhdG9yTmFtZT48bmFtZUlkZW50aWZpZXIgbmFtZUlkZW50aWZpZXJTY2hlbWU9Ik9SQ0lEIj4wMDAwLTAwMDItNTk2NS02NTYwPC9uYW1lSWRlbnRpZmllcj48L2NyZWF0b3I+PGNyZWF0b3I+PGNyZWF0b3JOYW1lPkplcm9lbiBCb3NtYW48L2NyZWF0b3JOYW1lPjxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiPjAwMDAtMDAwMS01Nzk2LTI3Mjc8L25hbWVJZGVudGlmaWVyPjwvY3JlYXRvcj48L2NyZWF0b3JzPjwvcmVzb3VyY2U+","url":"https://figshare.com/articles/101_Innovations_in_Scholarly_Communication_the_Changing_Research_Workflow/1286826/1","contentUrl":null,"metadataVersion":0,"schemaVersion":"http://datacite.org/schema/kernel-3","source":null,"isActive":true,"state":"findable","reason":null,"viewCount":0,"viewsOverTime":[],"downloadCount":0,"downloadsOverTime":[],"referenceCount":0,"citationCount":0,"citationsOverTime":[],"partCount":0,"partOfCount":0,"versionCount":0,"versionOfCount":0,"created":"2016-01-19T13:15:11.000Z","registered":"2016-01-19T13:15:12.000Z","published":"2015","updated":"2020-07-27T15:52:33.000Z"},"relationships":{"client":{"data":{"id":"figshare.ars","type":"clients"}},"media":{"data":{"id":"10.6084/m9.figshare.1286826.v1","type":"media"}},"references":{"data":[]},"citations":{"data":[]},"parts":{"data":[]},"partOf":{"data":[]},"versions":{"data":[]},"versionOf":{"data":[]}}},"included":[{"id":"figshare.ars","type":"clients","attributes":{"name":"figshare
97
+ Academic Research System","symbol":"FIGSHARE.ARS","year":2016,"contactEmail":"danielduduta@figshare.com","alternateName":null,"description":"figshare
98
+ allows researchers to publish all of their research outputs in an easily citable,
99
+ sharable and discoverable manner. All file formats can be published, including
100
+ videos and datasets. Optional peer review process. figshare uses creative
101
+ commons licensing.","language":null,"clientType":"repository","domains":"figshare.com","re3data":"https://doi.org/10.17616/R3PK5R","opendoar":null,"issn":null,"url":"http://figshare.com/","created":"2016-10-12T13:42:35.000Z","updated":"2019-07-27T07:15:48.000Z","isActive":true,"hasPassword":true},"relationships":{"provider":{"data":{"id":"figshare","type":"providers"}},"prefixes":{"data":[{"id":"10.6084","type":"prefixes"}]}}}]}'
102
+ http_version:
103
+ recorded_at: Fri, 21 Aug 2020 11:43:05 GMT
104
+ recorded_with: VCR 3.0.3
@@ -19,7 +19,7 @@ describe Bolognese::Metadata, vcr: true do
19
19
  it "DOI with data citation" do
20
20
  expect(subject.valid?).to be true
21
21
  expect(subject.id).to eq("https://doi.org/10.7554/elife.01567")
22
- expect(subject.identifiers).to eq([{"identifier"=>"e01567", "identifierType"=>"Publisher ID"}])
22
+ expect(subject.identifiers).to eq([{"identifier"=>"e01567", "identifierType"=>"article_number"}])
23
23
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
24
24
  expect(subject.url).to eq("https://elifesciences.org/articles/01567")
25
25
  expect(subject.creators.length).to eq(5)
@@ -47,7 +47,7 @@ describe Bolognese::Metadata, vcr: true do
47
47
  {"funderIdentifier"=>"https://doi.org/10.13039/501100006390",
48
48
  "funderIdentifierType"=>"Crossref Funder ID",
49
49
  "funderName"=>"University of Lausanne"}])
50
- expect(subject.agency).to eq("Crossref")
50
+ expect(subject.agency).to eq("crossref")
51
51
  end
52
52
 
53
53
  it "journal article" do
@@ -60,7 +60,7 @@ describe Bolognese::Metadata, vcr: true do
60
60
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
61
61
  expect(subject.creators.length).to eq(5)
62
62
  expect(subject.creators.first).to eq("nameType"=>"Personal", "name"=>"Ralser, Markus", "givenName"=>"Markus", "familyName"=>"Ralser")
63
- expect(subject.contributors).to eq("contributorType"=>"Editor", "familyName"=>"Janbon", "givenName"=>"Guilhem", "name"=>"Janbon, Guilhem", "nameType"=>"Personal")
63
+ expect(subject.contributors).to eq([{"contributorType"=>"Editor", "familyName"=>"Janbon", "givenName"=>"Guilhem", "name"=>"Janbon, Guilhem", "nameType"=>"Personal"}])
64
64
  expect(subject.titles).to eq([{"title"=>"Triose Phosphate Isomerase Deficiency Is Caused by Altered Dimerization–Not Catalytic Inactivity–of the Mutant Enzymes"}])
65
65
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 4.0 International",
66
66
  "rightsIdentifier"=>"cc-by-4.0",
@@ -74,7 +74,7 @@ describe Bolognese::Metadata, vcr: true do
74
74
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"1932-6203", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
75
75
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.1056/nejm199109123251104", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
76
76
  expect(subject.container).to eq("firstPage"=>"e30", "identifier"=>"1932-6203", "identifierType"=>"ISSN", "issue"=>"1", "title"=>"PLoS ONE", "type"=>"Journal", "volume"=>"1")
77
- expect(subject.agency).to eq("Crossref")
77
+ expect(subject.agency).to eq("crossref")
78
78
  end
79
79
 
80
80
  it "journal article with funding" do
@@ -82,7 +82,7 @@ describe Bolognese::Metadata, vcr: true do
82
82
  subject = Bolognese::Metadata.new(input: input)
83
83
  expect(subject.valid?).to be true
84
84
  expect(subject.id).to eq("https://doi.org/10.3389/fpls.2019.00816")
85
- expect(subject.identifiers).to eq([{"identifier"=>"816", "identifierType"=>"Publisher ID"}])
85
+ expect(subject.identifiers).to eq([{"identifier"=>"816", "identifierType"=>"article_number"}])
86
86
  expect(subject.url).to eq("https://www.frontiersin.org/article/10.3389/fpls.2019.00816/full")
87
87
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
88
88
  expect(subject.creators.length).to eq(4)
@@ -101,7 +101,7 @@ describe Bolognese::Metadata, vcr: true do
101
101
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"1664-462X", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
102
102
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.17660/actahortic.2004.632.41", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
103
103
  expect(subject.container).to eq("identifier"=>"1664-462X", "identifierType"=>"ISSN", "title"=>"Frontiers in Plant Science", "type"=>"Journal", "volume"=>"10")
104
- expect(subject.agency).to eq("Crossref")
104
+ expect(subject.agency).to eq("crossref")
105
105
  end
106
106
 
107
107
  it "journal article original language title" do
@@ -111,7 +111,7 @@ describe Bolognese::Metadata, vcr: true do
111
111
  expect(subject.id).to eq("https://doi.org/10.7600/jspfsm.56.60")
112
112
  expect(subject.url).to eq("http://jlc.jst.go.jp/JST.JSTAGE/jspfsm/56.60?lang=en&from=CrossRef&type=abstract")
113
113
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
114
- expect(subject.creators).to eq("name"=>":(unav)", "nameType"=>"Organizational")
114
+ expect(subject.creators).to eq([{"name"=>":(unav)", "nameType"=>"Organizational"}])
115
115
  expect(subject.titles).to eq([{"lang"=>"ja", "title"=>"自律神経・循環器応答"}])
116
116
  expect(subject.dates).to include({"date"=>"2007", "dateType"=>"Issued"})
117
117
  expect(subject.publication_year).to eq("2007")
@@ -119,7 +119,7 @@ describe Bolognese::Metadata, vcr: true do
119
119
  expect(subject.related_identifiers.length).to eq(1)
120
120
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"1881-4751", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
121
121
  expect(subject.container).to eq("firstPage"=>"60", "identifier"=>"1881-4751", "identifierType"=>"ISSN", "issue"=>"1", "lastPage"=>"60", "title"=>"Japanese Journal of Physical Fitness and Sports Medicine", "type"=>"Journal", "volume"=>"56")
122
- expect(subject.agency).to eq("Crossref")
122
+ expect(subject.agency).to eq("crossref")
123
123
  end
124
124
 
125
125
  it "journal article with RDF for container" do
@@ -139,7 +139,7 @@ describe Bolognese::Metadata, vcr: true do
139
139
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"1937-240X", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
140
140
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.1002/aqc.1122", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
141
141
  expect(subject.container).to eq("firstPage"=>"949", "identifier"=>"1937-240X", "identifierType"=>"ISSN", "issue"=>"6", "lastPage"=>"961", "title"=>"Journal of Crustacean Biology", "type"=>"Journal", "volume"=>"32")
142
- expect(subject.agency).to eq("Crossref")
142
+ expect(subject.agency).to eq("crossref")
143
143
  end
144
144
 
145
145
  it "book chapter with RDF for container" do
@@ -154,11 +154,11 @@ describe Bolognese::Metadata, vcr: true do
154
154
  expect(subject.titles).to eq([{"title"=>"Human Body Orientation Estimation in Multiview Scenarios"}])
155
155
  expect(subject.dates).to eq([{"date"=>"2012", "dateType"=>"Issued"}, {"date"=>"2019-07-03T01:07:17Z", "dateType"=>"Updated"}])
156
156
  expect(subject.publication_year).to eq("2012")
157
- expect(subject.publisher).to eq("Springer Berlin Heidelberg")
157
+ expect(subject.publisher).to eq("Springer Science and Business Media LLC")
158
158
  expect(subject.related_identifiers.length).to eq(7)
159
159
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"10.1007/978-3-540-24670-1_3", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
160
160
  expect(subject.container).to eq("identifier"=>"1611-3349", "identifierType"=>"ISSN", "title"=>"Lecture Notes in Computer Science", "type"=>"Book Series")
161
- expect(subject.agency).to eq("Crossref")
161
+ expect(subject.agency).to eq("crossref")
162
162
  end
163
163
 
164
164
  it "posted_content" do
@@ -176,7 +176,29 @@ describe Bolognese::Metadata, vcr: true do
176
176
  expect(subject.dates).to include({"date"=>"2017-10-09", "dateType"=>"Issued"})
177
177
  expect(subject.publication_year).to eq("2017")
178
178
  expect(subject.publisher).to eq("Cold Spring Harbor Laboratory")
179
- expect(subject.agency).to eq("Crossref")
179
+ expect(subject.agency).to eq("crossref")
180
+ end
181
+
182
+ it "peer review" do
183
+ input = "https://doi.org/10.7554/elife.55167.sa2"
184
+ subject = Bolognese::Metadata.new(input: input)
185
+ expect(subject.valid?).to be true
186
+ expect(subject.url).to eq("https://elifesciences.org/articles/55167#sa2")
187
+ expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceType"=>"PeerReview", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"Review")
188
+ expect(subject.creators.count).to eq(8)
189
+ expect(subject.creators.last).to eq("affiliation" => [{"name"=>"Center for Computational Mathematics, Flatiron Institute, New York, United States"}],
190
+ "familyName" => "Barnett",
191
+ "givenName" => "Alex H",
192
+ "name" => "Barnett, Alex H",
193
+ "nameType" => "Personal")
194
+ expect(subject.titles).to eq([{"title"=>"Author response: SpikeForest, reproducible web-facing ground-truth validation of automated neural spike sorters"}])
195
+ expect(subject.id).to eq("https://doi.org/10.7554/elife.55167.sa2")
196
+ expect(subject.identifiers).to be_empty
197
+ expect(subject.descriptions).to be_empty
198
+ expect(subject.dates).to include({"date"=>"2020-05-19", "dateType"=>"Issued"})
199
+ expect(subject.publication_year).to eq("2020")
200
+ expect(subject.publisher).to eq("eLife Sciences Publications, Ltd")
201
+ expect(subject.agency).to eq("crossref")
180
202
  end
181
203
 
182
204
  it "DOI with SICI DOI" do
@@ -196,7 +218,7 @@ describe Bolognese::Metadata, vcr: true do
196
218
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"0012-9658", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
197
219
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.1098/rspb.2002.2213", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
198
220
  expect(subject.container).to eq("firstPage"=>"2832", "identifier"=>"0012-9658", "identifierType"=>"ISSN", "issue"=>"11", "lastPage"=>"2841", "title"=>"Ecology", "type"=>"Journal", "volume"=>"87")
199
- expect(subject.agency).to eq("Crossref")
221
+ expect(subject.agency).to eq("crossref")
200
222
  end
201
223
 
202
224
  it "DOI with ORCID ID" do
@@ -221,7 +243,7 @@ describe Bolognese::Metadata, vcr: true do
221
243
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"2090-1844", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
222
244
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.1378/chest.12-0045", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
223
245
  expect(subject.container).to eq("firstPage"=>"1", "identifier"=>"2090-1844", "identifierType"=>"ISSN", "lastPage"=>"7", "title"=>"Pulmonary Medicine", "type"=>"Journal", "volume"=>"2012")
224
- expect(subject.agency).to eq("Crossref")
246
+ expect(subject.agency).to eq("crossref")
225
247
  end
226
248
 
227
249
  it "date in future" do
@@ -229,7 +251,7 @@ describe Bolognese::Metadata, vcr: true do
229
251
  subject = Bolognese::Metadata.new(input: input)
230
252
  expect(subject.valid?).to be true
231
253
  expect(subject.id).to eq("https://doi.org/10.1016/j.ejphar.2015.03.018")
232
- expect(subject.identifiers).to eq([{"identifier"=>"S0014299915002332", "identifierType"=>"Publisher ID"}])
254
+ expect(subject.identifiers).to eq([{"identifier"=>"S0014299915002332", "identifierType"=>"sequence-number"}])
233
255
  expect(subject.url).to eq("https://linkinghub.elsevier.com/retrieve/pii/S0014299915002332")
234
256
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
235
257
  expect(subject.creators.length).to eq(10)
@@ -240,7 +262,7 @@ describe Bolognese::Metadata, vcr: true do
240
262
  expect(subject.publisher).to eq("Elsevier BV")
241
263
  expect(subject.related_identifiers).to eq([{"relatedIdentifier"=>"0014-2999", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection"}])
242
264
  expect(subject.container).to eq("firstPage"=>"303", "identifier"=>"0014-2999", "identifierType"=>"ISSN", "lastPage"=>"312", "title"=>"European Journal of Pharmacology", "type"=>"Journal", "volume"=>"759")
243
- expect(subject.agency).to eq("Crossref")
265
+ expect(subject.agency).to eq("crossref")
244
266
  end
245
267
 
246
268
  it "vor with url" do
@@ -259,7 +281,7 @@ describe Bolognese::Metadata, vcr: true do
259
281
  expect(subject.related_identifiers.size).to eq(35)
260
282
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"1365-2540", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
261
283
  expect(subject.container).to eq("firstPage"=>"122", "identifier"=>"1365-2540", "identifierType"=>"ISSN", "issue"=>"2", "lastPage"=>"130", "title"=>"Heredity", "type"=>"Journal", "volume"=>"111")
262
- expect(subject.agency).to eq("Crossref")
284
+ expect(subject.agency).to eq("crossref")
263
285
  end
264
286
 
265
287
  it "dataset" do
@@ -276,7 +298,7 @@ describe Bolognese::Metadata, vcr: true do
276
298
  expect(subject.dates).to include({"date"=>"1984-07-17", "dateType"=>"Issued"})
277
299
  expect(subject.publication_year).to eq("1984")
278
300
  expect(subject.publisher).to eq("Worldwide Protein Data Bank")
279
- expect(subject.agency).to eq("Crossref")
301
+ expect(subject.agency).to eq("crossref")
280
302
  end
281
303
 
282
304
  it "component" do
@@ -286,13 +308,13 @@ describe Bolognese::Metadata, vcr: true do
286
308
  expect(subject.id).to eq("https://doi.org/10.1371/journal.pmed.0030277.g001")
287
309
  expect(subject.url).to eq("https://dx.plos.org/10.1371/journal.pmed.0030277.g001")
288
310
  expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceType"=>"SaComponent", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
289
- expect(subject.creators).to eq("name"=>":(unav)", "nameType"=>"Organizational")
311
+ expect(subject.creators).to eq([{"name"=>":(unav)", "nameType"=>"Organizational"}])
290
312
  expect(subject.titles).to eq([{"title"=>":{unav)"}])
291
313
  expect(subject.descriptions).to be_empty
292
314
  expect(subject.dates).to eq([{"date"=>"2015-10-20", "dateType"=>"Issued"}, {"date"=>"2018-10-19T17:13:42Z", "dateType"=>"Updated"}])
293
315
  expect(subject.publication_year).to eq("2015")
294
316
  expect(subject.publisher).to eq("Public Library of Science (PLoS)")
295
- expect(subject.agency).to eq("Crossref")
317
+ expect(subject.agency).to eq("crossref")
296
318
  end
297
319
 
298
320
  it "dataset usda" do
@@ -309,7 +331,7 @@ describe Bolognese::Metadata, vcr: true do
309
331
  expect(subject.dates).to eq([{"date"=>"2017-08-09", "dateType"=>"Issued"}, {"date"=>"2020-06-04T21:31:55Z", "dateType"=>"Updated"}])
310
332
  expect(subject.publication_year).to eq("2017")
311
333
  expect(subject.publisher).to eq("USDA Forest Service")
312
- expect(subject.agency).to eq("Crossref")
334
+ expect(subject.agency).to eq("crossref")
313
335
  end
314
336
 
315
337
  it "book chapter" do
@@ -324,8 +346,8 @@ describe Bolognese::Metadata, vcr: true do
324
346
  expect(subject.titles).to eq([{"title"=>"Clinical Symptoms and Physical Examinations"}])
325
347
  expect(subject.dates).to eq([{"date"=>"2015", "dateType"=>"Issued"}, {"date"=>"2015-04-14T02:31:13Z", "dateType"=>"Updated"}])
326
348
  expect(subject.publication_year).to eq("2015")
327
- expect(subject.publisher).to eq("Springer Berlin Heidelberg")
328
- expect(subject.agency).to eq("Crossref")
349
+ expect(subject.publisher).to eq("Springer Science and Business Media LLC")
350
+ expect(subject.agency).to eq("crossref")
329
351
  end
330
352
 
331
353
  it "another book chapter" do
@@ -335,12 +357,12 @@ describe Bolognese::Metadata, vcr: true do
335
357
  expect(subject.id).to eq("https://doi.org/10.1007/978-3-319-75889-3_1")
336
358
  expect(subject.url).to eq("http://link.springer.com/10.1007/978-3-319-75889-3_1")
337
359
  expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"Text", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
338
- expect(subject.creators).to eq("familyName"=>"Jones", "givenName"=>"Hunter M.", "name"=>"Jones, Hunter M.", "nameType"=>"Personal")
360
+ expect(subject.creators).to eq([{"familyName"=>"Jones", "givenName"=>"Hunter M.", "name"=>"Jones, Hunter M.", "nameType"=>"Personal"}])
339
361
  expect(subject.titles).to eq([{"title"=>"Climate Change and Increasing Risk of Extreme Heat"}])
340
362
  expect(subject.dates).to include({"date"=>"2018", "dateType"=>"Issued"})
341
363
  expect(subject.publication_year).to eq("2018")
342
- expect(subject.publisher).to eq("Springer International Publishing")
343
- expect(subject.agency).to eq("Crossref")
364
+ expect(subject.publisher).to eq("Springer Science and Business Media LLC")
365
+ expect(subject.agency).to eq("crossref")
344
366
  end
345
367
 
346
368
  it "yet another book chapter" do
@@ -350,12 +372,12 @@ describe Bolognese::Metadata, vcr: true do
350
372
  expect(subject.id).to eq("https://doi.org/10.4018/978-1-4666-1891-6.ch004")
351
373
  expect(subject.url).to eq("http://services.igi-global.com/resolvedoi/resolve.aspx?doi=10.4018/978-1-4666-1891-6.ch004")
352
374
  expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"Text", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
353
- expect(subject.creators).to eq("familyName"=>"Bichot", "givenName"=>"Charles-Edmond", "name"=>"Bichot, Charles-Edmond", "affiliation" => [{"name"=>"Université de Lyon, France"}], "nameType"=>"Personal")
375
+ expect(subject.creators).to eq([{"affiliation"=>[{"name"=>"Université de Lyon, France"}], "familyName"=>"Bichot", "givenName"=>"Charles-Edmond", "name"=>"Bichot, Charles-Edmond", "nameType"=>"Personal"}])
354
376
  expect(subject.titles).to eq([{"title"=>"Unsupervised and Supervised Image Segmentation Using Graph Partitioning"}])
355
377
  expect(subject.dates).to eq([{"date"=>"2012-08-08", "dateType"=>"Issued"}, {"date"=>"2019-07-02T17:17:21Z", "dateType"=>"Updated"}])
356
378
  expect(subject.publication_year).to eq("2012")
357
379
  expect(subject.publisher).to eq("IGI Global")
358
- expect(subject.agency).to eq("Crossref")
380
+ expect(subject.agency).to eq("crossref")
359
381
  end
360
382
 
361
383
  it "missing creator" do
@@ -370,7 +392,7 @@ describe Bolognese::Metadata, vcr: true do
370
392
  expect(subject.dates).to eq([{"date"=>"2018-04-09", "dateType"=>"Issued"}, {"date"=>"2018-04-10T17:58:05Z", "dateType"=>"Updated"}])
371
393
  expect(subject.publication_year).to eq("2018")
372
394
  expect(subject.publisher).to eq("MDPI AG")
373
- expect(subject.agency).to eq("Crossref")
395
+ expect(subject.agency).to eq("crossref")
374
396
  end
375
397
 
376
398
  it "book" do
@@ -380,13 +402,13 @@ describe Bolognese::Metadata, vcr: true do
380
402
  expect(subject.id).to eq("https://doi.org/10.1017/9781108348843")
381
403
  expect(subject.identifiers).to eq([{"identifier"=>"9781108348843", "identifierType"=>"ISBN"}])
382
404
  expect(subject.url).to eq("https://www.cambridge.org/core/product/identifier/9781108348843/type/book")
383
- expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "ris"=>"BOOK", "schemaOrg"=>"Book")
384
- expect(subject.creators).to eq("familyName"=>"Leung", "givenName"=>"Vincent S.", "name"=>"Leung, Vincent S.", "nameType"=>"Personal")
405
+ expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Text", "ris"=>"BOOK", "schemaOrg"=>"Book")
406
+ expect(subject.creators).to eq([{"familyName"=>"Leung", "givenName"=>"Vincent S.", "name"=>"Leung, Vincent S.", "nameType"=>"Personal"}])
385
407
  expect(subject.titles).to eq([{"title"=>"The Politics of the Past in Early China"}])
386
408
  expect(subject.dates).to eq([{"date"=>"2019-07-01", "dateType"=>"Issued"}, {"date"=>"2019-12-01T18:11:11Z", "dateType"=>"Updated"}])
387
409
  expect(subject.publication_year).to eq("2019")
388
- expect(subject.publisher).to eq("Cambridge University Press")
389
- expect(subject.agency).to eq("Crossref")
410
+ expect(subject.publisher).to eq("Cambridge University Press (CUP)")
411
+ expect(subject.agency).to eq("crossref")
390
412
  expect(subject.date_registered).to eq("2019-07-06T10:19:22Z")
391
413
  end
392
414
 
@@ -396,15 +418,15 @@ describe Bolognese::Metadata, vcr: true do
396
418
  expect(subject.valid?).to be true
397
419
  expect(subject.id).to eq("https://doi.org/10.2973/odp.proc.ir.180.2000")
398
420
  expect(subject.url).to eq("http://www-odp.tamu.edu/publications/180_IR/180TOC.HTM")
399
- expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "ris"=>"BOOK", "schemaOrg"=>"Book")
400
- expect(subject.creators).to eq("name"=>":(unav)", "nameType"=>"Organizational")
421
+ expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Text", "ris"=>"BOOK", "schemaOrg"=>"Book")
422
+ expect(subject.creators).to eq([{"name"=>":(unav)", "nameType"=>"Organizational"}])
401
423
  expect(subject.contributors.size).to eq(4)
402
424
  expect(subject.contributors.first).to eq("contributorType"=>"Editor", "familyName"=>"Taylor", "givenName"=>"B.", "name"=>"Taylor, B.", "nameType"=>"Personal")
403
425
  expect(subject.titles).to eq([{"title"=>"Proceedings of the Ocean Drilling Program, 180 Initial Reports"}])
404
426
  expect(subject.dates).to eq([{"date"=>"2000-02-04", "dateType"=>"Issued"}, {"date"=>"2009-02-02T21:19:43Z", "dateType"=>"Updated"}])
405
427
  expect(subject.publication_year).to eq("2000")
406
- expect(subject.publisher).to eq("Ocean Drilling Program")
407
- expect(subject.agency).to eq("Crossref")
428
+ expect(subject.publisher).to eq("International Ocean Discovery Program (IODP)")
429
+ expect(subject.agency).to eq("crossref")
408
430
  expect(subject.date_registered).to eq("2006-10-17T20:17:44Z")
409
431
  end
410
432
 
@@ -415,16 +437,16 @@ describe Bolognese::Metadata, vcr: true do
415
437
  expect(subject.id).to eq("https://doi.org/10.1029/ar035")
416
438
  expect(subject.identifiers).to eq([{"identifier"=>"0-87590-181-6", "identifierType"=>"ISBN"}])
417
439
  expect(subject.url).to eq("http://doi.wiley.com/10.1029/AR035")
418
- expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "ris"=>"BOOK", "schemaOrg"=>"Book")
419
- expect(subject.creators).to eq("familyName"=>"McGinnis", "givenName"=>"Richard Frank", "name"=>"McGinnis, Richard Frank", "nameType"=>"Personal")
440
+ expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Text", "ris"=>"BOOK", "schemaOrg"=>"Book")
441
+ expect(subject.creators).to eq([{"familyName"=>"McGinnis", "givenName"=>"Richard Frank", "name"=>"McGinnis, Richard Frank", "nameType"=>"Personal"}])
420
442
  expect(subject.titles).to eq([{"title"=>"Biogeography of Lanternfishes (Myctophidae) South of 30°S"}])
421
443
  expect(subject.dates).to eq([{"date"=>"1982", "dateType"=>"Issued"}, {"date"=>"2019-06-15T05:11:12Z", "dateType"=>"Updated"}])
422
444
  expect(subject.publication_year).to eq("1982")
423
- expect(subject.publisher).to eq("American Geophysical Union")
445
+ expect(subject.publisher).to eq("Wiley")
424
446
  expect(subject.related_identifiers.length).to eq(44)
425
447
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"10.1016/0031-0182(70)90103-3", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
426
448
  expect(subject.container).to eq("identifier"=>"0066-4634", "identifierType"=>"ISSN", "title"=>"Antarctic Research Series", "type"=>"Book Series", "volume"=>"35")
427
- expect(subject.agency).to eq("Crossref")
449
+ expect(subject.agency).to eq("crossref")
428
450
  expect(subject.date_registered).to be_nil
429
451
  end
430
452
 
@@ -433,7 +455,7 @@ describe Bolognese::Metadata, vcr: true do
433
455
  subject = Bolognese::Metadata.new(input: input)
434
456
  expect(subject.valid?).to be true
435
457
  expect(subject.id).to eq("https://doi.org/10.3280/ecag2018-001005")
436
- expect(subject.identifiers).to eq([{"identifier"=>"5", "identifierType"=>"Publisher ID"}])
458
+ expect(subject.identifiers).to eq([{"identifier"=>"5", "identifierType"=>"article_number"}])
437
459
  expect(subject.url).to eq("http://www.francoangeli.it/riviste/Scheda_Riviste.asp?IDArticolo=61645")
438
460
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
439
461
  expect(subject.creators.length).to eq(2)
@@ -469,7 +491,7 @@ describe Bolognese::Metadata, vcr: true do
469
491
  expect(subject.id).to eq("https://doi.org/10.1241/johokanri.39.979")
470
492
  expect(subject.url).to eq("http://joi.jlc.jst.go.jp/JST.JSTAGE/johokanri/39.979?from=CrossRef")
471
493
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
472
- expect(subject.creators).to eq("familyName"=>"KUSUMOTO", "givenName"=>"Hiroyuki", "name"=>"KUSUMOTO, Hiroyuki", "nameType"=>"Personal")
494
+ expect(subject.creators).to eq([{"familyName"=>"KUSUMOTO", "givenName"=>"Hiroyuki", "name"=>"KUSUMOTO, Hiroyuki", "nameType"=>"Personal"}])
473
495
  expect(subject.titles).to eq([{"title"=>"Utilizing the Internet. 12 Series. Future of the Internet."}])
474
496
  expect(subject.dates).to eq([{"date"=>"1997", "dateType"=>"Issued"}, {"date"=>"2020-03-06T06:44:36Z", "dateType"=>"Updated"}])
475
497
  expect(subject.publication_year).to eq("1997")
@@ -500,12 +522,12 @@ describe Bolognese::Metadata, vcr: true do
500
522
  expect(subject.id).to eq("https://doi.org/10.4000/dms.865")
501
523
  expect(subject.url).to eq("http://journals.openedition.org/dms/865")
502
524
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
503
- expect(subject.creators).to eq("familyName"=>"Peraya", "givenName"=>"Daniel", "name"=>"Peraya, Daniel", "nameType"=>"Personal")
525
+ expect(subject.creators).to eq([{"familyName"=>"Peraya", "givenName"=>"Daniel", "name"=>"Peraya, Daniel", "nameType"=>"Personal"}])
504
526
  expect(subject.titles).to eq([{"title"=>"Distances, absence, proximités et présences : des concepts en déplacement"}, {"title"=>"Distance(s), proximity and presence(s): evolving concepts"}])
505
527
  expect(subject.dates).to include({"date"=>"2014-12-23", "dateType"=>"Issued"})
506
528
  expect(subject.publication_year).to eq("2014")
507
529
  expect(subject.publisher).to eq("OpenEdition")
508
- expect(subject.agency).to eq("Crossref")
530
+ expect(subject.agency).to eq("crossref")
509
531
  expect(subject.date_registered).to be_nil
510
532
  end
511
533
 
@@ -522,7 +544,7 @@ describe Bolognese::Metadata, vcr: true do
522
544
  expect(subject.dates).to include({"date"=>"2017-05-24", "dateType"=>"Issued"})
523
545
  expect(subject.publication_year).to eq("2017")
524
546
  expect(subject.publisher).to eq("The Royal Society")
525
- expect(subject.agency).to eq("Crossref")
547
+ expect(subject.agency).to eq("crossref")
526
548
  expect(subject.date_registered).to eq("2019-07-18T04:43:12Z")
527
549
  end
528
550
 
@@ -547,7 +569,7 @@ describe Bolognese::Metadata, vcr: true do
547
569
  subject = Bolognese::Metadata.new(input: input)
548
570
  expect(subject.valid?).to be true
549
571
  expect(subject.id).to eq("https://doi.org/10.1055/s-0039-1690894")
550
- expect(subject.identifiers).to eq([{"identifier"=>"s-0039-1690894", "identifierType"=>"Publisher ID"}])
572
+ expect(subject.identifiers).to eq([{"identifier"=>"s-0039-1690894", "identifierType"=>"sequence-number"}])
551
573
  expect(subject.url).to eq("http://www.thieme-connect.de/DOI/DOI?10.1055/s-0039-1690894")
552
574
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
553
575
  expect(subject.creators.length).to eq(4)
@@ -581,7 +603,7 @@ describe Bolognese::Metadata, vcr: true do
581
603
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"0028-646X", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
582
604
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.1002/pmic.201400530", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
583
605
  expect(subject.container).to eq("firstPage"=>"929", "identifier"=>"0028-646X", "identifierType"=>"ISSN", "issue"=>"3", "lastPage"=>"935", "title"=>"New Phytologist", "type"=>"Journal", "volume"=>"218")
584
- expect(subject.agency).to eq("Crossref")
606
+ expect(subject.agency).to eq("crossref")
585
607
  expect(subject.date_registered).to eq("2018-08-03T11:45:49Z")
586
608
  end
587
609
 
@@ -598,7 +620,7 @@ describe Bolognese::Metadata, vcr: true do
598
620
  expect(subject.dates).to include({"date"=>"2017-04-03", "dateType"=>"Issued"})
599
621
  expect(subject.publication_year).to eq("2017")
600
622
  expect(subject.publisher).to eq("Springer Science and Business Media LLC")
601
- expect(subject.agency).to eq("Crossref")
623
+ expect(subject.agency).to eq("crossref")
602
624
  expect(subject.date_registered).to eq("2019-11-02T09:30:06Z")
603
625
  end
604
626
 
@@ -620,7 +642,46 @@ describe Bolognese::Metadata, vcr: true do
620
642
  expect(subject.dates).to include({"date"=>"2020-07-28", "dateType"=>"Issued"})
621
643
  expect(subject.publication_year).to eq("2020")
622
644
  expect(subject.publisher).to eq("Copernicus GmbH")
623
- expect(subject.agency).to eq("Crossref")
645
+ expect(subject.agency).to eq("crossref")
646
+ end
647
+
648
+ it "book oup" do
649
+ input = "10.1093/oxfordhb/9780198746140.013.5"
650
+ subject = Bolognese::Metadata.new(input: input)
651
+ expect(subject.valid?).to be true
652
+ expect(subject.url).to eq("http://oxfordhandbooks.com/view/10.1093/oxfordhb/9780198746140.001.0001/oxfordhb-9780198746140-e-5")
653
+ expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Text", "ris"=>"BOOK", "schemaOrg"=>"Book")
654
+ expect(subject.creators.count).to eq(1)
655
+ expect(subject.creators.first).to eq("familyName"=>"Clayton", "givenName"=>"Barbra R.", "name"=>"Clayton, Barbra R.", "nameType"=>"Personal")
656
+ expect(subject.contributors.count).to eq(2)
657
+ expect(subject.contributors.first).to eq("contributorType"=>"Editor", "familyName"=>"Cozort", "givenName"=>"Daniel", "name"=>"Cozort, Daniel", "nameType"=>"Personal")
658
+ expect(subject.titles).to eq([{"title"=>"The Changing Way of the Bodhisattva"}])
659
+ expect(subject.id).to eq("https://doi.org/10.1093/oxfordhb/9780198746140.013.5")
660
+ expect(subject.identifiers).to be_empty
661
+ expect(subject.descriptions.first["description"]).to start_with("This chapter explores the nature of the connections")
662
+ expect(subject.dates).to include({"date"=>"2018-04-05", "dateType"=>"Issued"})
663
+ expect(subject.publication_year).to eq("2018")
664
+ expect(subject.publisher).to eq("Oxford University Press (OUP)")
665
+ expect(subject.agency).to eq("crossref")
666
+ end
667
+
668
+ it "report osti" do
669
+ input = "10.2172/972169"
670
+ subject = Bolognese::Metadata.new(input: input)
671
+ expect(subject.valid?).to be true
672
+ expect(subject.url).to eq("http://www.osti.gov/servlets/purl/972169-1QXROM/")
673
+ expect(subject.types).to eq("bibtex"=>"techreport", "citeproc"=>"report", "resourceType"=>"Report", "resourceTypeGeneral"=>"Text", "ris"=>"RPRT", "schemaOrg"=>"Report")
674
+ expect(subject.creators.count).to eq(4)
675
+ expect(subject.creators.first).to eq("familyName"=>"Denholm", "givenName"=>"P.", "name"=>"Denholm, P.", "nameType"=>"Personal")
676
+ expect(subject.contributors.count).to eq(0)
677
+ expect(subject.titles).to eq([{"title"=>"Role of Energy Storage with Renewable Electricity Generation"}])
678
+ expect(subject.id).to eq("https://doi.org/10.2172/972169")
679
+ expect(subject.identifiers).to eq( [{"identifier"=>"NREL/TP-6A2-47187", "identifierType"=>"report-number"}, {"identifier"=>"972169", "identifierType"=>"sequence-number"}])
680
+ expect(subject.descriptions).to be_empty
681
+ expect(subject.dates).to include({"date"=>"2010-01-01", "dateType"=>"Issued"})
682
+ expect(subject.publication_year).to eq("2010")
683
+ expect(subject.publisher).to eq("Office of Scientific and Technical Information (OSTI)")
684
+ expect(subject.agency).to eq("crossref")
624
685
  end
625
686
 
626
687
  it "journal issue" do
@@ -630,7 +691,7 @@ describe Bolognese::Metadata, vcr: true do
630
691
  expect(subject.id).to eq("https://doi.org/10.6002/ect.2015.0371")
631
692
  expect(subject.url).to eq("http://ectrx.org/forms/ectrxcontentshow.php?doi_id=10.6002/ect.2015.0371")
632
693
  expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceType"=>"JournalIssue", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"PublicationIssue")
633
- expect(subject.creators).to eq("name"=>":(unav)", "nameType"=>"Organizational")
694
+ expect(subject.creators).to eq([{"name"=>":(unav)", "nameType"=>"Organizational"}])
634
695
  expect(subject.titles).to eq([{"title"=>":{unav)"}])
635
696
  expect(subject.dates).to eq([{"date"=>"2018-10", "dateType"=>"Issued"}, {"date"=>"2018-10-03T12:09:12Z", "dateType"=>"Updated"}])
636
697
  expect(subject.publication_year).to eq("2018")
@@ -638,7 +699,7 @@ describe Bolognese::Metadata, vcr: true do
638
699
  expect(subject.related_identifiers.length).to eq(1)
639
700
  expect(subject.related_identifiers.first).to eq("relatedIdentifier"=>"2146-8427", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
640
701
  expect(subject.container).to eq("identifier"=>"2146-8427", "identifierType"=>"ISSN", "issue"=>"5", "title"=>"Experimental and Clinical Transplantation", "type"=>"Journal", "volume"=>"16")
641
- expect(subject.agency).to eq("Crossref")
702
+ expect(subject.agency).to eq("crossref")
642
703
  end
643
704
 
644
705
  it "not found error" do
@@ -647,7 +708,7 @@ describe Bolognese::Metadata, vcr: true do
647
708
  expect(subject.valid?).to be false
648
709
  expect(subject.id).to eq("https://doi.org/10.7554/elife.01567x")
649
710
  expect(subject.doi).to eq("10.7554/elife.01567x")
650
- expect(subject.agency).to eq("Crossref")
711
+ expect(subject.agency).to eq("crossref")
651
712
  expect(subject.state).to eq("not_found")
652
713
  end
653
714
  end