bolognese 1.0.26 → 1.0.27
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/bolognese/datacite_utils.rb +3 -3
- data/lib/bolognese/metadata.rb +9 -9
- data/lib/bolognese/metadata_utils.rb +2 -2
- data/lib/bolognese/readers/bibtex_reader.rb +1 -1
- data/lib/bolognese/readers/citeproc_reader.rb +4 -4
- data/lib/bolognese/readers/codemeta_reader.rb +2 -2
- data/lib/bolognese/readers/crossref_reader.rb +2 -2
- data/lib/bolognese/readers/datacite_json_reader.rb +2 -2
- data/lib/bolognese/readers/datacite_reader.rb +2 -2
- data/lib/bolognese/readers/ris_reader.rb +1 -1
- data/lib/bolognese/readers/schema_org_reader.rb +4 -4
- data/lib/bolognese/version.rb +1 -1
- data/lib/bolognese/writers/bibtex_writer.rb +1 -1
- data/lib/bolognese/writers/codemeta_writer.rb +1 -1
- data/lib/bolognese/writers/crosscite_writer.rb +2 -2
- data/lib/bolognese/writers/datacite_json_writer.rb +2 -2
- data/lib/bolognese/writers/jats_writer.rb +5 -5
- data/lib/bolognese/writers/ris_writer.rb +1 -1
- data/lib/bolognese/writers/schema_org_writer.rb +2 -2
- data/spec/author_utils_spec.rb +3 -3
- data/spec/fixtures/crosscite.json +2 -2
- data/spec/fixtures/datacite.json +1 -1
- data/spec/fixtures/datacite_software.json +2 -2
- data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/get_datacite_metadata/multiple_author_names_in_one_creatorsName.yml +96 -0
- data/spec/readers/bibtex_reader_spec.rb +3 -3
- data/spec/readers/citeproc_reader_spec.rb +2 -2
- data/spec/readers/codemeta_reader_spec.rb +5 -5
- data/spec/readers/crosscite_reader_spec.rb +2 -2
- data/spec/readers/crossref_reader_spec.rb +18 -18
- data/spec/readers/datacite_json_reader_spec.rb +2 -2
- data/spec/readers/datacite_reader_spec.rb +58 -58
- data/spec/readers/ris_reader_spec.rb +3 -3
- data/spec/readers/schema_org_reader_spec.rb +19 -19
- data/spec/writers/crosscite_writer_spec.rb +10 -10
- data/spec/writers/datacite_json_writer_spec.rb +8 -8
- data/spec/writers/datacite_writer_spec.rb +7 -7
- metadata +3 -2
@@ -31,8 +31,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
31
31
|
expect(subject.identifier).to eq("https://doi.org/10.7554/elife.01567")
|
32
32
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Text", "resourceType"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
33
33
|
expect(subject.url).to eq("http://elifesciences.org/lookup/doi/10.7554/eLife.01567")
|
34
|
-
expect(subject.
|
35
|
-
expect(subject.
|
34
|
+
expect(subject.creators.length).to eq(5)
|
35
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Martial Sankar", "givenName"=>"Martial", "familyName"=>"Sankar")
|
36
36
|
expect(subject.titles).to eq([{"title"=>"Automated quantitative histology reveals vascular morphodynamics during Arabidopsis hypocotyl secondary growth"}])
|
37
37
|
expect(subject.descriptions.first["description"]).to start_with("Among various advantages, their small size makes model organisms preferred subjects of investigation.")
|
38
38
|
expect(subject.rights_list.first["rightsUri"]).to eq("http://creativecommons.org/licenses/by/3.0/")
|
@@ -49,7 +49,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
49
49
|
expect(subject.state).to eq("not_found")
|
50
50
|
expect(subject.identifier).to eq("https://doi.org/10.7554/elife.01567")
|
51
51
|
expect(subject.types).to eq("bibtex"=>"phdthesis", "citeproc"=>"thesis", "resourceTypeGeneral"=>"Text", "resourceType"=>"Dissertation", "ris"=>"THES", "schemaOrg"=>"Thesis")
|
52
|
-
expect(subject.
|
52
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"Y. Toparlar", "givenName"=>"Y.", "familyName"=>"Toparlar"}])
|
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.dates).to eq([{"date"=>"2018", "dateType"=>"Issued"}])
|
@@ -19,7 +19,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
19
19
|
expect(subject.identifier).to eq("https://doi.org/10.5438/4k3m-nyvg")
|
20
20
|
expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
|
21
21
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"post-weblog", "resourceTypeGeneral"=>"Text", "ris"=>"GEN", "schemaOrg"=>"BlogPosting")
|
22
|
-
expect(subject.
|
22
|
+
expect(subject.creators).to eq([{"familyName"=>"Fenner", "givenName"=>"Martin", "name"=>"Martin Fenner", "type"=>"Person"}])
|
23
23
|
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
24
24
|
expect(subject.descriptions.first["description"]).to start_with("Eating your own dog food")
|
25
25
|
expect(subject.dates).to eq([{"date"=>"2016-12-20", "dateType"=>"Issued"}])
|
@@ -35,7 +35,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
35
35
|
expect(subject.identifier).to eq("https://doi.org/10.5072/4k3m-nyvg")
|
36
36
|
expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
|
37
37
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"post-weblog", "resourceTypeGeneral"=>"Text", "ris"=>"GEN", "schemaOrg"=>"BlogPosting")
|
38
|
-
expect(subject.
|
38
|
+
expect(subject.creators).to eq([{"familyName"=>"Fenner", "givenName"=>"Martin", "name"=>"Martin Fenner", "type"=>"Person"}])
|
39
39
|
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
40
40
|
expect(subject.descriptions.first["description"]).to start_with("Eating your own dog food")
|
41
41
|
expect(subject.dates).to eq([{"date"=>"2016-12-20", "dateType"=>"Issued"}])
|
@@ -21,7 +21,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
21
21
|
expect(subject.identifier).to eq("https://doi.org/10.5438/qeg0-3gm3")
|
22
22
|
expect(subject.url).to eq("https://github.com/datacite/maremma")
|
23
23
|
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
24
|
-
expect(subject.
|
24
|
+
expect(subject.creators).to eq([{"type"=>"Person", "id"=>"http://orcid.org/0000-0003-0077-4738", "name"=>"Martin Fenner", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
25
25
|
expect(subject.titles).to eq([{"title"=>"Maremma: a Ruby library for simplified network calls"}])
|
26
26
|
expect(subject.descriptions.first["description"]).to start_with("Ruby utility library for network requests")
|
27
27
|
expect(subject.subjects).to eq([{"subject"=>"faraday"}, {"subject"=>"excon"}, {"subject"=>"net/http"}])
|
@@ -36,7 +36,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
36
36
|
expect(subject.identifier).to eq("https://doi.org/10.5063/f1m61h5x")
|
37
37
|
expect(subject.url).to eq("https://github.com/DataONEorg/rdataone")
|
38
38
|
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
39
|
-
expect(subject.
|
39
|
+
expect(subject.creators).to eq( [{"type"=>"Person",
|
40
40
|
"id"=>"http://orcid.org/0000-0003-0077-4738",
|
41
41
|
"name"=>"Matt Jones",
|
42
42
|
"givenName"=>"Matt",
|
@@ -63,7 +63,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
63
63
|
expect(subject.identifier).to eq("https://doi.org/10.5438/qeg0-3gm3")
|
64
64
|
expect(subject.url).to eq("https://github.com/datacite/maremma")
|
65
65
|
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
66
|
-
expect(subject.
|
66
|
+
expect(subject.creators).to eq([{"type"=>"Person", "id"=>"http://orcid.org/0000-0003-0077-4738", "name"=>"Martin Fenner", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
67
67
|
expect(subject.titles).to eq([{"title"=>"Maremma: a Ruby library for simplified network calls"}])
|
68
68
|
expect(subject.descriptions.first["description"]).to start_with("Simplifies network calls")
|
69
69
|
expect(subject.subjects).to eq([{"subject"=>"faraday"}, {"subject"=>"excon"}, {"subject"=>"net/http"}])
|
@@ -79,8 +79,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
79
79
|
expect(subject.identifier).to eq("https://doi.org/10.5438/wr0x-e194")
|
80
80
|
expect(subject.url).to eq("https://github.com/datacite/metadata-reports")
|
81
81
|
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
82
|
-
expect(subject.
|
83
|
-
expect(subject.
|
82
|
+
expect(subject.creators.size).to eq(4)
|
83
|
+
expect(subject.creators.last).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0001-8135-3489", "name"=>"Lars Holm Nielsen", "givenName"=>"Lars Holm", "familyName"=>"Nielsen")
|
84
84
|
expect(subject.titles).to eq([{"title"=>"DOI Registrations for Software"}])
|
85
85
|
expect(subject.descriptions.first["description"]).to start_with("Analysis of DataCite DOIs registered for software")
|
86
86
|
expect(subject.subjects).to eq([{"subject"=>"doi"}, {"subject"=>"software"}, {"subject"=>"codemeta"}])
|
@@ -18,7 +18,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
18
18
|
expect(subject.valid?).to be true
|
19
19
|
expect(subject.identifier).to eq("https://doi.org/10.5281/zenodo.48440")
|
20
20
|
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"other", "resourceType"=>"Software", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
21
|
-
expect(subject.
|
21
|
+
expect(subject.creators).to eq([{"type"=>"Person", "familyName" => "Garza", "givenName" => "Kristian", "name" => "Kristian Garza"}])
|
22
22
|
expect(subject.titles).to eq([{"title"=>"Analysis Tools for Crossover Experiment of UI using Choice Architecture"}])
|
23
23
|
expect(subject.descriptions.first["description"]).to start_with("This tools are used to analyse the data produced by the Crosssover Experiment")
|
24
24
|
expect(subject.dates).to eq("date"=>"2016-03-27", "dateType"=>"Issued")
|
@@ -31,7 +31,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
31
31
|
expect(subject.valid?).to be true
|
32
32
|
expect(subject.identifier).to eq("https://doi.org/10.5281/zenodo.48440")
|
33
33
|
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"other", "resourceType"=>"Software", "resourceTypeGeneral"=>"Software", "ris"=>"COMP", "schemaOrg"=>"SoftwareSourceCode")
|
34
|
-
expect(subject.
|
34
|
+
expect(subject.creators).to eq([{"type"=>"Person", "familyName" => "Garza", "givenName" => "Kristian", "name" => "Kristian Garza"}])
|
35
35
|
expect(subject.titles).to eq([{"title"=>"Analysis Tools for Crossover Experiment of UI using Choice Architecture"}])
|
36
36
|
expect(subject.descriptions.first["description"]).to start_with("This tools are used to analyse the data produced by the Crosssover Experiment")
|
37
37
|
expect(subject.dates).to eq("date"=>"2016-03-27", "dateType"=>"Issued")
|
@@ -21,8 +21,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
21
21
|
expect(subject.identifier).to eq("https://doi.org/10.7554/elife.01567")
|
22
22
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
23
23
|
expect(subject.url).to eq("https://elifesciences.org/articles/01567")
|
24
|
-
expect(subject.
|
25
|
-
expect(subject.
|
24
|
+
expect(subject.creators.length).to eq(5)
|
25
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Martial Sankar", "givenName"=>"Martial", "familyName"=>"Sankar")
|
26
26
|
expect(subject.rights_list).to eq([{"rightsUri"=>"http://creativecommons.org/licenses/by/3.0"}])
|
27
27
|
expect(subject.titles).to eq([{"title"=>"Automated quantitative histology reveals vascular morphodynamics during Arabidopsis hypocotyl secondary growth"}])
|
28
28
|
expect(subject.dates).to eq([{"date"=>"2014-02-11", "dateType"=>"Issued"}, {"date"=>"2018-08-23T13:41:49Z", "dateType"=>"Updated"}])
|
@@ -51,9 +51,9 @@ describe Bolognese::Metadata, vcr: true do
|
|
51
51
|
expect(subject.identifier).to eq(input)
|
52
52
|
expect(subject.url).to eq("http://dx.plos.org/10.1371/journal.pone.0000030")
|
53
53
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
54
|
-
expect(subject.
|
55
|
-
expect(subject.
|
56
|
-
expect(subject.
|
54
|
+
expect(subject.creators.length).to eq(5)
|
55
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Markus Ralser", "givenName"=>"Markus", "familyName"=>"Ralser")
|
56
|
+
expect(subject.contributors).to eq("contributorType"=>"Editor", "familyName"=>"Janbon", "givenName"=>"Guilhem", "name"=>"Guilhem Janbon", "type"=>"Person")
|
57
57
|
expect(subject.titles).to eq([{"title"=>"Triose Phosphate Isomerase Deficiency Is Caused by Altered Dimerization–Not Catalytic Inactivity–of the Mutant Enzymes"}])
|
58
58
|
expect(subject.rights_list).to eq([{"rightsUri"=>"http://creativecommons.org/licenses/by/4.0"}])
|
59
59
|
expect(subject.dates).to eq([{"date"=>"2006-12-20", "dateType"=>"Issued"}, {"date"=>"2017-06-17T12:26:15Z", "dateType"=>"Updated"}])
|
@@ -73,8 +73,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
73
73
|
expect(subject.identifier).to eq(input)
|
74
74
|
expect(subject.url).to eq("http://biorxiv.org/lookup/doi/10.1101/097196")
|
75
75
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"PostedContent", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
76
|
-
expect(subject.
|
77
|
-
expect(subject.
|
76
|
+
expect(subject.creators.count).to eq(11)
|
77
|
+
expect(subject.creators.last).to eq("type"=>"Person", "id"=>"http://orcid.org/0000-0003-4060-7360", "name"=>"Timothy Clark", "givenName"=>"Timothy", "familyName"=>"Clark")
|
78
78
|
expect(subject.titles).to eq([{"title"=>"A Data Citation Roadmap for Scholarly Data Repositories"}])
|
79
79
|
expect(subject.alternate_identifiers).to eq("alternateIdentifier"=>"biorxiv;097196v2", "alternateIdentifierType"=>"Publisher ID")
|
80
80
|
expect(subject.descriptions.first["description"]).to start_with("This article presents a practical roadmap")
|
@@ -91,7 +91,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
91
91
|
expect(subject.identifier).to eq("https://doi.org/10.1890/0012-9658(2006)87%5B2832:tiopma%5D2.0.co;2")
|
92
92
|
expect(subject.url).to eq("http://doi.wiley.com/10.1890/0012-9658(2006)87[2832:TIOPMA]2.0.CO;2")
|
93
93
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
94
|
-
expect(subject.
|
94
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"A. Fenton", "givenName"=>"A.", "familyName"=>"Fenton"}, {"type"=>"Person", "name"=>"S. A. Rands", "givenName"=>"S. A.", "familyName"=>"Rands"}])
|
95
95
|
expect(subject.rights_list).to eq([{"rightsUri"=>"http://doi.wiley.com/10.1002/tdm_license_1.1"}])
|
96
96
|
expect(subject.titles).to eq([{"title"=>"THE IMPACT OF PARASITE MANIPULATION AND PREDATOR FORAGING BEHAVIOR ON PREDATOR–PREY COMMUNITIES"}])
|
97
97
|
expect(subject.dates).to eq([{"date"=>"2006-11", "dateType"=>"Issued"}, {"date"=>"2018-08-02T21:20:01Z", "dateType"=>"Updated"}])
|
@@ -112,8 +112,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
112
112
|
expect(subject.identifier).to eq("https://doi.org/10.1155/2012/291294")
|
113
113
|
expect(subject.url).to eq("http://www.hindawi.com/journals/pm/2012/291294/")
|
114
114
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
115
|
-
expect(subject.
|
116
|
-
expect(subject.
|
115
|
+
expect(subject.creators.length).to eq(7)
|
116
|
+
expect(subject.creators[2]).to eq("type"=>"Person", "id"=>"http://orcid.org/0000-0003-2043-4925", "name"=>"Beatriz Hernandez", "givenName"=>"Beatriz", "familyName"=>"Hernandez")
|
117
117
|
expect(subject.rights_list).to eq([{"rightsUri"=>"http://creativecommons.org/licenses/by/3.0"}])
|
118
118
|
expect(subject.titles).to eq([{"title"=>"Delineating a Retesting Zone Using Receiver Operating Characteristic Analysis on Serial QuantiFERON Tuberculosis Test Results in US Healthcare Workers"}])
|
119
119
|
expect(subject.dates).to eq([{"date"=>"2012", "dateType"=>"Issued"}, {"date"=>"2016-08-02T18:42:41Z", "dateType"=>"Updated"}])
|
@@ -134,8 +134,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
134
134
|
expect(subject.identifier).to eq(input)
|
135
135
|
expect(subject.url).to eq("http://linkinghub.elsevier.com/retrieve/pii/S0014299915002332")
|
136
136
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
137
|
-
expect(subject.
|
138
|
-
expect(subject.
|
137
|
+
expect(subject.creators.length).to eq(10)
|
138
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Sarah E. Beck", "givenName"=>"Sarah E.", "familyName"=>"Beck")
|
139
139
|
expect(subject.titles).to eq([{"title"=>"Paving the path to HIV neurotherapy: Predicting SIV CNS disease"}])
|
140
140
|
expect(subject.dates).to eq([{"date"=>"2015-07", "dateType"=>"Issued"}, {"date"=>"2017-06-23T08:44:48Z", "dateType"=>"Updated"}])
|
141
141
|
expect(subject.publication_year).to eq("2015")
|
@@ -151,8 +151,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
151
151
|
expect(subject.identifier).to eq("https://doi.org/10.2210/pdb4hhb/pdb")
|
152
152
|
expect(subject.url).to eq("ftp://ftp.wwpdb.org/pub/pdb/data/structures/divided/pdb/hh/pdb4hhb.ent.gz")
|
153
153
|
expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceType"=>"SaComponent", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
154
|
-
expect(subject.
|
155
|
-
expect(subject.
|
154
|
+
expect(subject.creators.length).to eq(2)
|
155
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"G. Fermi", "givenName"=>"G.", "familyName"=>"Fermi")
|
156
156
|
expect(subject.titles).to eq([{"title"=>"THE CRYSTAL STRUCTURE OF HUMAN DEOXYHAEMOGLOBIN AT 1.74 ANGSTROMS RESOLUTION"}])
|
157
157
|
expect(subject.descriptions).to eq([{"description"=>"x-ray diffraction structure", "descriptionType"=>"Other"}])
|
158
158
|
expect(subject.dates).to eq([{"date"=>"1984-07-17", "dateType"=>"Issued"}, {"date"=>"2014-05-27T16:45:59Z", "dateType"=>"Updated"}])
|
@@ -168,8 +168,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
168
168
|
expect(subject.identifier).to eq("https://doi.org/10.1007/978-3-662-46370-3_13")
|
169
169
|
expect(subject.url).to eq("http://link.springer.com/10.1007/978-3-662-46370-3_13")
|
170
170
|
expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"Text", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
|
171
|
-
expect(subject.
|
172
|
-
expect(subject.
|
171
|
+
expect(subject.creators.length).to eq(2)
|
172
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Ronald L. Diercks", "givenName"=>"Ronald L.", "familyName"=>"Diercks")
|
173
173
|
expect(subject.titles).to eq([{"title"=>"Clinical Symptoms and Physical Examinations"}])
|
174
174
|
expect(subject.dates).to eq([{"date"=>"2015", "dateType"=>"Issued"}, {"date"=>"2015-04-14T02:31:13Z", "dateType"=>"Updated"}])
|
175
175
|
expect(subject.publication_year).to eq("2015")
|
@@ -184,8 +184,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
184
184
|
expect(subject.identifier).to eq(input)
|
185
185
|
expect(subject.url).to eq("http://doi.wiley.com/10.1111/nph.14619")
|
186
186
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
|
187
|
-
expect(subject.
|
188
|
-
expect(subject.
|
187
|
+
expect(subject.creators.length).to eq(3)
|
188
|
+
expect(subject.creators.first).to eq("type"=>"Person", "id"=>"http://orcid.org/0000-0002-4156-3761", "name"=>"Nico Dissmeyer", "givenName"=>"Nico", "familyName"=>"Dissmeyer")
|
189
189
|
expect(subject.titles).to eq([{"title"=>"Life and death of proteins after protease cleavage: protein degradation by the N-end rule pathway"}])
|
190
190
|
expect(subject.rights_list).to eq([{"rightsUri"=>"http://doi.wiley.com/10.1002/tdm_license_1.1"}, {"rightsUri"=>"http://onlinelibrary.wiley.com/termsAndConditions"}])
|
191
191
|
expect(subject.dates).to eq([{"date"=>"2018-05", "dateType"=>"Issued"}, {"date"=>"2018-08-07T05:52:14Z", "dateType"=>"Updated"}])
|
@@ -18,7 +18,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
18
18
|
expect(subject.valid?).to be true
|
19
19
|
expect(subject.identifier).to eq("https://doi.org/10.5438/4k3m-nyvg")
|
20
20
|
expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"BlogPosting", "resourceTypeGeneral"=>"Text", "ris"=>"RPRT", "schemaOrg"=>"ScholarlyArticle")
|
21
|
-
expect(subject.
|
21
|
+
expect(subject.creators).to eq([{"type"=>"Person", "id"=>"http://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
22
22
|
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
23
23
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"MS-49-3632-5083", "alternateIdentifierType"=>"Local accession number"}])
|
24
24
|
expect(subject.dates).to eq([{"date"=>"2016-12-20", "dateType"=>"Created"}, {"date"=>"2016-12-20", "dateType"=>"Issued"}, {"date"=>"2016-12-20", "dateType"=>"Updated"}])
|
@@ -35,7 +35,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
35
35
|
# expect(subject.valid?).to be true
|
36
36
|
# expect(subject.identifier).to eq("https://doi.org/10.5063/f1m61h5x")
|
37
37
|
# expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article", "resource_type"=>"Software", "resource_type_general"=>"Software", "ris"=>"COMP", "type"=>"SoftwareSourceCode")
|
38
|
-
# expect(subject.
|
38
|
+
# expect(subject.creators).to eq([{"familyName"=>"Jones", "givenName"=>"Matthew B.", "name"=>"Matthew B. Jones", "type"=>"Person"}])
|
39
39
|
# expect(subject.titles).to eq([{"title"=>"dataone: R interface to the DataONE network of data repositories"}])
|
40
40
|
# expect(subject.dates).to eq([{"date"=>"2016", "date_type"=>"Issued"}])
|
41
41
|
# expect(subject.publication_year).to eq("2016")
|
@@ -25,8 +25,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
25
25
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
26
26
|
expect(subject.types["ris"]).to eq("DATA")
|
27
27
|
expect(subject.types["citeproc"]).to eq("dataset")
|
28
|
-
expect(subject.
|
29
|
-
expect(subject.
|
28
|
+
expect(subject.creators.length).to eq(8)
|
29
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Benjamin Ollomo", "givenName"=>"Benjamin", "familyName"=>"Ollomo")
|
30
30
|
expect(subject.titles).to eq([{"title"=>"Data from: A new malaria agent in African hominids."}])
|
31
31
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"Ollomo B, Durand P, Prugnolle F, Douzery EJP, Arnathau C, Nkoghe D, Leroy E, Renaud F (2009) A new malaria agent in African hominids. PLoS Pathogens 5(5): e1000446.","alternateIdentifierType"=>"citation"}])
|
32
32
|
expect(subject.rights_list).to eq([{"rightsUri"=>"http://creativecommons.org/publicdomain/zero/1.0"}])
|
@@ -49,7 +49,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
49
49
|
expect(subject.types["ris"]).to eq("RPRT")
|
50
50
|
expect(subject.types["bibtex"]).to eq("article")
|
51
51
|
expect(subject.types["citeproc"]).to eq("article-journal")
|
52
|
-
expect(subject.
|
52
|
+
expect(subject.creators).to eq([{"type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
53
53
|
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
54
54
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"MS-49-3632-5083", "alternateIdentifierType"=>"Local accession number"}])
|
55
55
|
expect(subject.descriptions.first["description"]).to start_with("Eating your own dog food")
|
@@ -70,7 +70,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
70
70
|
expect(subject.types["schemaOrg"]).to eq("ScholarlyArticle")
|
71
71
|
expect(subject.types["resourceType"]).to eq("ConferencePaper")
|
72
72
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
73
|
-
expect(subject.
|
73
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"Nathaniel Johnston", "givenName"=>"Nathaniel", "familyName"=>"Johnston"}])
|
74
74
|
expect(subject.titles).to eq([{"title"=>"The Minimum Size of Qubit Unextendible Product Bases"}])
|
75
75
|
expect(subject.alternate_identifiers).to eq([])
|
76
76
|
expect(subject.descriptions.first["description"]).to start_with("We investigate the problem of constructing unextendible product bases in the qubit case")
|
@@ -89,8 +89,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
89
89
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
90
90
|
expect(subject.types["resourceType"]).to eq("Dataset")
|
91
91
|
expect(subject.types["resourceTypeGeneral"]).to eq("Audiovisual")
|
92
|
-
expect(subject.
|
93
|
-
expect(subject.
|
92
|
+
expect(subject.creators.length).to eq(14)
|
93
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Haywood, Raphaelle Dawn", "givenName"=>"Raphaelle Dawn", "familyName"=>"Haywood")
|
94
94
|
expect(subject.titles).to eq([{"lang"=>"en", "title"=>"Data underpinning - The Sun as a planet-host star: Proxies from SDO images for HARPS radial-velocity variations"}])
|
95
95
|
expect(subject.dates).to eq([{"date"=>"2016-01-20", "dateType"=>"Available"}, {"date"=>"2016", "dateType"=>"Issued"}])
|
96
96
|
expect(subject.publication_year).to eq("2016")
|
@@ -108,7 +108,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
108
108
|
expect(subject.types["resourceTypeGeneral"]).to eq("Software")
|
109
109
|
expect(subject.types["ris"]).to eq("COMP")
|
110
110
|
expect(subject.types["citeproc"]).to eq("article")
|
111
|
-
expect(subject.
|
111
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"Kristian Garza", "givenName"=>"Kristian", "familyName"=>"Garza"}])
|
112
112
|
expect(subject.titles).to eq([{"title"=>"Analysis Tools For Crossover Experiment Of Ui Using Choice Architecture"}])
|
113
113
|
expect(subject.descriptions.first["description"]).to start_with("This tools are used to analyse the data produced by the Crosssover Experiment")
|
114
114
|
expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution-NonCommercial-ShareAlike", "rightsUri"=>"https://creativecommons.org/licenses/by-nc-sa/4.0"},{"rights"=>"Open Access", "rightsUri"=>"info:eu-repo/semantics/openAccess"}])
|
@@ -129,8 +129,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
129
129
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
130
130
|
expect(subject.types["resourceType"]).to eq("Dataset")
|
131
131
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
132
|
-
expect(subject.
|
133
|
-
expect(subject.
|
132
|
+
expect(subject.creators.count).to eq(11)
|
133
|
+
expect(subject.creators.first).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0002-2410-9671", "name"=>"Alexander Junge", "givenName"=>"Alexander", "familyName"=>"Junge")
|
134
134
|
expect(subject.titles).to eq([{"title"=>"RAIN v1"}])
|
135
135
|
expect(subject.descriptions.first["description"]).to start_with("<b>RAIN: RNA–protein Association and Interaction Networks")
|
136
136
|
expect(subject.rights_list).to eq([{"rightsUri"=>"https://creativecommons.org/licenses/by/4.0", "rights"=>"CC-BY"}])
|
@@ -150,8 +150,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
150
150
|
expect(subject.identifier).to eq("https://doi.org/10.5281/zenodo.1239")
|
151
151
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
152
152
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
153
|
-
expect(subject.
|
154
|
-
expect(subject.
|
153
|
+
expect(subject.creators.length).to eq(4)
|
154
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Jahn, Najko", "givenName"=>"Najko", "familyName"=>"Jahn")
|
155
155
|
expect(subject.titles).to eq([{"title"=>"Publication Fp7 Funding Acknowledgment - Plos Openaire"}])
|
156
156
|
expect(subject.descriptions.first["description"]).to start_with("The dataset contains a sample of metadata describing papers")
|
157
157
|
expect(subject.dates).to eq([{"date"=>"2013-04-03", "dateType"=>"Issued"}])
|
@@ -171,7 +171,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
171
171
|
subject = Bolognese::Metadata.new(input: nil,
|
172
172
|
from: "datacite",
|
173
173
|
doi: "10.5281/zenodo.1239",
|
174
|
-
|
174
|
+
creators: [{"type"=>"Person", "name"=>"Jahn, Najko", "givenName"=>"Najko", "familyName"=>"Jahn"}],
|
175
175
|
titles: [{ "title" => "Publication Fp7 Funding Acknowledgment - Plos Openaire" }],
|
176
176
|
descriptions: [{ "description" => "The dataset contains a sample of metadata describing papers" }],
|
177
177
|
publisher: "Zenodo",
|
@@ -190,7 +190,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
190
190
|
expect(subject.identifier).to eq("https://doi.org/10.5281/zenodo.1239")
|
191
191
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
192
192
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
193
|
-
expect(subject.
|
193
|
+
expect(subject.creators).to eq([{"familyName"=>"Jahn", "givenName"=>"Najko", "name"=>"Jahn, Najko", "type"=>"Person"}])
|
194
194
|
expect(subject.titles).to eq([{"title"=>"Publication Fp7 Funding Acknowledgment - Plos Openaire"}])
|
195
195
|
expect(subject.descriptions.first["description"]).to start_with("The dataset contains a sample of metadata describing papers")
|
196
196
|
expect(subject.dates).to eq([{"date"=>"2013-04-03", "dateType"=>"Issued"}])
|
@@ -253,8 +253,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
253
253
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
254
254
|
expect(subject.types["resourceType"]).to eq("dataset")
|
255
255
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
256
|
-
expect(subject.
|
257
|
-
expect(subject.
|
256
|
+
expect(subject.creators.length).to eq(6)
|
257
|
+
expect(subject.creators.first).to eq("familyName"=>"Bales", "givenName"=>"Roger", "name"=>"Roger Bales", "type"=>"Person")
|
258
258
|
end
|
259
259
|
|
260
260
|
it "geo_location" do
|
@@ -264,8 +264,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
264
264
|
expect(subject.valid?).to be true
|
265
265
|
expect(subject.identifier).to eq("https://doi.org/10.5072/geopointexample")
|
266
266
|
expect(subject.doi).to eq("10.5072/geopointexample")
|
267
|
-
expect(subject.
|
268
|
-
expect(subject.
|
267
|
+
expect(subject.creators.length).to eq(3)
|
268
|
+
expect(subject.creators.first).to eq("familyName"=>"Schumann", "givenName"=>"Kai", "name"=>"Kai Schumann", "type"=>"Person")
|
269
269
|
expect(subject.titles).to eq([{"title"=>"Gridded results of swath bathymetric mapping of Disko Bay, Western Greenland, 2007-2008"}])
|
270
270
|
expect(subject.publisher).to eq("PANGAEA - Data Publisher for Earth & Environmental Science")
|
271
271
|
expect(subject.publication_year).to eq("2011")
|
@@ -280,8 +280,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
280
280
|
expect(subject.valid?).to be true
|
281
281
|
expect(subject.identifier).to eq("https://doi.org/10.6071/z7wc73")
|
282
282
|
expect(subject.doi).to eq("10.6071/z7wc73")
|
283
|
-
expect(subject.
|
284
|
-
expect(subject.
|
283
|
+
expect(subject.creators.length).to eq(6)
|
284
|
+
expect(subject.creators.first).to eq("familyName"=>"Bales", "givenName"=>"Roger", "name"=>"Roger Bales", "type"=>"Person")
|
285
285
|
expect(subject.titles).to eq([{"title"=>"Southern Sierra Critical Zone Observatory (SSCZO), Providence Creek\n meteorological data, soil moisture and temperature, snow depth and air\n temperature"}])
|
286
286
|
expect(subject.publisher).to eq("UC Merced")
|
287
287
|
expect(subject.dates).to eq([{"date"=>"2014-10-17", "dateType"=>"Updated"}, {"date"=>"2016-03-14T17:02:02Z", "dateType"=>"Available"}, {"date"=>"2013", "dateType"=>"Issued"}])
|
@@ -301,17 +301,17 @@ describe Bolognese::Metadata, vcr: true do
|
|
301
301
|
expect(subject.valid?).to be true
|
302
302
|
expect(subject.identifier).to eq("https://doi.org/10.14457/kmitl.res.2006.17")
|
303
303
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
304
|
-
expect(subject.
|
305
|
-
expect(subject.
|
304
|
+
expect(subject.creators.length).to eq(1)
|
305
|
+
expect(subject.creators.first).to eq("name" => "กัญจนา แซ่เตียว")
|
306
306
|
end
|
307
307
|
|
308
|
-
it "multiple author names in one
|
308
|
+
it "multiple author names in one creatorsName" do
|
309
309
|
input = "https://doi.org/10.7910/DVN/EQTQYO"
|
310
310
|
subject = Bolognese::Metadata.new(input: input)
|
311
311
|
expect(subject.valid?).to be true
|
312
312
|
expect(subject.identifier).to eq("https://doi.org/10.7910/dvn/eqtqyo")
|
313
313
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
314
|
-
expect(subject.
|
314
|
+
expect(subject.creators).to eq([{"name" => "Enos, Ryan (Harvard University); Fowler, Anthony (University Of Chicago); Vavreck, Lynn (UCLA)"}])
|
315
315
|
end
|
316
316
|
|
317
317
|
it "author with scheme" do
|
@@ -320,8 +320,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
320
320
|
expect(subject.valid?).to be true
|
321
321
|
expect(subject.identifier).to eq("https://doi.org/10.18429/jacow-ipac2016-tupmy003")
|
322
322
|
expect(subject.types["schemaOrg"]).to eq("ScholarlyArticle")
|
323
|
-
expect(subject.
|
324
|
-
expect(subject.
|
323
|
+
expect(subject.creators.length).to eq(12)
|
324
|
+
expect(subject.creators.first).to eq("type"=>"Person", "id"=>"http://jacow.org/JACoW-00077389", "name"=>"Masashi Otani", "givenName"=>"Masashi", "familyName"=>"Otani")
|
325
325
|
end
|
326
326
|
|
327
327
|
it "author with wrong orcid scheme" do
|
@@ -330,8 +330,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
330
330
|
expect(subject.valid?).to be true
|
331
331
|
expect(subject.identifier).to eq("https://doi.org/10.2314/coscv1")
|
332
332
|
expect(subject.types["schemaOrg"]).to eq("ScholarlyArticle")
|
333
|
-
expect(subject.
|
334
|
-
expect(subject.
|
333
|
+
expect(subject.creators.length).to eq(14)
|
334
|
+
expect(subject.creators.first).to include("type"=>"Person", "id" => "https://orcid.org/0000-0003-0232-7085", "name"=>"Lambert Heller", "givenName"=>"Lambert", "familyName"=>"Heller")
|
335
335
|
end
|
336
336
|
|
337
337
|
it "keywords with attributes" do
|
@@ -350,8 +350,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
350
350
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
351
351
|
expect(subject.types["resourceType"]).to eq("Dataset")
|
352
352
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
353
|
-
expect(subject.
|
354
|
-
expect(subject.
|
353
|
+
expect(subject.creators.length).to eq(2)
|
354
|
+
expect(subject.creators.first).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0001-8740-8284", "name"=>"Bimbo, Nuno", "givenName"=>"Nuno", "familyName"=>"Bimbo")
|
355
355
|
expect(subject.titles).to eq([{"title"=>"Dataset for \"Direct Evidence for Solid-Like Hydrogen in a Nanoporous Carbon Hydrogen Storage Material at Supercritical Temperatures\""}])
|
356
356
|
expect(subject.descriptions.first["description"]).to start_with("Dataset for Direct Evidence for Solid-Like Hydrogen")
|
357
357
|
expect(subject.publication_year).to eq("2015")
|
@@ -377,8 +377,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
377
377
|
expect(subject.types["resourceTypeGeneral"]).to eq("Collection")
|
378
378
|
expect(subject.types["ris"]).to eq("GEN")
|
379
379
|
expect(subject.types["citeproc"]).to eq("article")
|
380
|
-
expect(subject.
|
381
|
-
expect(subject.
|
380
|
+
expect(subject.creators.length).to eq(24)
|
381
|
+
expect(subject.creators.first).to eq("type"=>"Person", "id"=>"https://orcid.org/0000-0001-5331-6592", "name"=>"Farquhar, Adam", "givenName"=>"Adam", "familyName"=>"Farquhar")
|
382
382
|
expect(subject.titles).to eq([{"title"=>"Technical and Human Infrastructure for Open Research (THOR)"}])
|
383
383
|
expect(subject.descriptions.first["description"]).to start_with("Five years ago, a global infrastructure")
|
384
384
|
expect(subject.publication_year).to eq("2015")
|
@@ -403,7 +403,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
403
403
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
404
404
|
expect(subject.types["ris"]).to eq("RPRT")
|
405
405
|
expect(subject.types["citeproc"]).to eq("article-journal")
|
406
|
-
expect(subject.
|
406
|
+
expect(subject.creators).to eq([{"type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
407
407
|
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
408
408
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"MS-49-3632-5083", "alternateIdentifierType"=>"Local accession number"}])
|
409
409
|
expect(subject.dates).to eq([{"date"=>"2016-12-20", "dateType"=>"Created"}, {"date"=>"2016-12-20", "dateType"=>"Issued"}, {"date"=>"2016-12-20", "dateType"=>"Updated"}])
|
@@ -423,7 +423,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
423
423
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
424
424
|
expect(subject.types["ris"]).to eq("BOOK")
|
425
425
|
expect(subject.types["citeproc"]).to eq("book")
|
426
|
-
expect(subject.
|
426
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
427
427
|
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "titleType"=>"TranslatedTitle"}])
|
428
428
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"937-0-4523-12357-6", "alternateIdentifierType"=>"ISBN"}])
|
429
429
|
expect(subject.dates).to eq([{"date"=>"2012-12-13", "dateInformation"=>"Correction", "dateType"=>"Other"}, {"date"=>"2010", "dateType"=>"Issued"}])
|
@@ -446,7 +446,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
446
446
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
447
447
|
expect(subject.types["ris"]).to eq("BOOK")
|
448
448
|
expect(subject.types["citeproc"]).to eq("book")
|
449
|
-
expect(subject.
|
449
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
450
450
|
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "titleType"=>"TranslatedTitle"}])
|
451
451
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"937-0-4523-12357-6", "alternateIdentifierType"=>"ISBN"}])
|
452
452
|
expect(subject.publication_year).to eq("2010")
|
@@ -468,8 +468,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
468
468
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
469
469
|
expect(subject.types["ris"]).to eq("DATA")
|
470
470
|
expect(subject.types["citeproc"]).to eq("dataset")
|
471
|
-
expect(subject.
|
472
|
-
expect(subject.
|
471
|
+
expect(subject.creators.length).to eq(8)
|
472
|
+
expect(subject.creators.last).to eq("familyName"=>"Renaud", "givenName"=>"François", "name"=>"François Renaud", "type"=>"Person")
|
473
473
|
expect(subject.titles).to eq([{"title"=>"Data from: A new malaria agent in African hominids."}])
|
474
474
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>
|
475
475
|
"Ollomo B, Durand P, Prugnolle F, Douzery EJP, Arnathau C, Nkoghe D, Leroy E, Renaud F (2009) A new malaria agent in African hominids. PLoS Pathogens 5(5): e1000446.",
|
@@ -493,7 +493,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
493
493
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
494
494
|
expect(subject.types["ris"]).to eq("BOOK")
|
495
495
|
expect(subject.types["citeproc"]).to eq("book")
|
496
|
-
expect(subject.
|
496
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
497
497
|
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "titleType"=>"TranslatedTitle"}])
|
498
498
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"937-0-4523-12357-6", "alternateIdentifierType"=>"ISBN"}])
|
499
499
|
expect(subject.publication_year).to eq("2010")
|
@@ -515,7 +515,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
515
515
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
516
516
|
expect(subject.types["ris"]).to eq("BOOK")
|
517
517
|
expect(subject.types["citeproc"]).to eq("book")
|
518
|
-
expect(subject.
|
518
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
519
519
|
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "titleType"=>"TranslatedTitle"}])
|
520
520
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"937-0-4523-12357-6", "alternateIdentifierType"=>"ISBN"}])
|
521
521
|
expect(subject.dates).to eq([{"date"=>"2009-04-29", "dateType"=>"StartDate"}, {"date"=>"2010-01-05", "dateType"=>"EndDate"}, {"date"=>"2010", "dateType"=>"Issued"}])
|
@@ -535,7 +535,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
535
535
|
expect(subject.types["schemaOrg"]).to eq("Book")
|
536
536
|
expect(subject.types["resourceType"]).to eq("Monograph")
|
537
537
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
538
|
-
expect(subject.
|
538
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"John Smith", "givenName"=>"John", "familyName"=>"Smith"}, {"name"=>"つまらないものですが"}])
|
539
539
|
expect(subject.titles).to eq([{"title"=>"Właściwości rzutowań podprzestrzeniowych"}, {"title"=>"Translation of Polish titles", "titleType"=>"TranslatedTitle"}])
|
540
540
|
expect(subject.alternate_identifiers).to eq([{"alternateIdentifier"=>"937-0-4523-12357-6", "alternateIdentifierType"=>"ISBN"}])
|
541
541
|
expect(subject.dates).to eq([{"date"=>"2012-12-13", "dateInformation"=>"Correction", "dateType"=>"Other"}, {"date"=>"2010", "dateType"=>"Issued"}])
|
@@ -559,8 +559,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
559
559
|
expect(subject.types["schemaOrg"]).to eq("SoftwareSourceCode")
|
560
560
|
expect(subject.types["resourceType"]).to eq("Simulation Tool")
|
561
561
|
expect(subject.types["resourceTypeGeneral"]).to eq("Software")
|
562
|
-
expect(subject.
|
563
|
-
expect(subject.
|
562
|
+
expect(subject.creators.length).to eq(5)
|
563
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Carlos PatiñO", "givenName"=>"Carlos", "familyName"=>"PatiñO")
|
564
564
|
expect(subject.titles).to eq([{"title"=>"LAMMPS Data-File Generator"}])
|
565
565
|
expect(subject.dates).to eq([{"date"=>"2018-07-18", "dateType"=>"Valid"}, {"date"=>"2018-07-18", "dateType"=>"Accepted"}, {"date"=>"2018", "dateType"=>"Issued"}])
|
566
566
|
expect(subject.publication_year).to eq("2018")
|
@@ -576,7 +576,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
576
576
|
expect(subject.identifier).to eq("https://doi.org/10.5067/terra+aqua/ceres/cldtyphist_l3.004")
|
577
577
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
578
578
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
579
|
-
expect(subject.
|
579
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"Takmeng Wong", "givenName"=>"Takmeng", "familyName"=>"Wong"}])
|
580
580
|
expect(subject.titles).to eq([{"title"=>"CERES Level 3 Cloud Type Historgram Terra+Aqua HDF file - Edition4"}])
|
581
581
|
expect(subject.publication_year).to eq("2016")
|
582
582
|
expect(subject.publisher).to eq("NASA Langley Atmospheric Science Data Center DAAC")
|
@@ -591,7 +591,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
591
591
|
expect(subject.identifier).to eq("https://doi.org/10.4232/1.2745")
|
592
592
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
593
593
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
594
|
-
expect(subject.
|
594
|
+
expect(subject.creators).to eq([{"type"=>"Organization", "name"=>"Europäische Kommission"}])
|
595
595
|
expect(subject.titles).to eq([{"lang"=>"de", "title"=>"Flash Eurobarometer 54 (Madrid Summit)"}, {"lang"=>"en", "title"=>"Flash Eurobarometer 54 (Madrid Summit)"}, {"titleType"=>"Subtitle","lang"=>"de", "title"=>"The Common European Currency"}, {"titleType"=>"Subtitle", "lang"=>"en", "title"=>"The Common European Currency"}])
|
596
596
|
expect(subject.subjects).to eq([{"subjectScheme"=>"ZA", "lang"=>"en", "subject"=>"KAT12 International Institutions, Relations, Conditions"}])
|
597
597
|
expect(subject.dates).to eq([{"date"=>"1995-12", "dateType"=>"Collected"}, {"date"=>"1996", "dateType"=>"Issued"}])
|
@@ -609,8 +609,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
609
609
|
expect(subject.types["schemaOrg"]).to eq("ScholarlyArticle")
|
610
610
|
expect(subject.types["resourceType"]).to eq("Article")
|
611
611
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
612
|
-
expect(subject.
|
613
|
-
expect(subject.
|
612
|
+
expect(subject.creators.length).to eq(3)
|
613
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"P. Llamas", "givenName"=>"P.", "familyName"=>"Llamas")
|
614
614
|
expect(subject.titles).to eq([{"title"=>"Rural Electrification With Hybrid Power Systems Based on Renewables - Technical System Configurations From the Point of View of the European Industry"}])
|
615
615
|
expect(subject.dates).to eq([{"date"=>"2008-11-01", "dateType"=>"Valid"}, {"date"=>"2008", "dateType"=>"Issued"}])
|
616
616
|
expect(subject.publication_year).to eq("2008")
|
@@ -640,7 +640,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
640
640
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
641
641
|
expect(subject.types["resourceType"]).to eq("Disclosure")
|
642
642
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
643
|
-
expect(subject.
|
643
|
+
expect(subject.creators).to eq([{"name"=>"Anonymous"}])
|
644
644
|
expect(subject.titles).to eq([{"title"=>"Messung der Bildunschaerfe in H.264-codierten Bildern und Videosequenzen"}])
|
645
645
|
expect(subject.dates).to eq([{"date"=>"07.04.2017", "dateType"=>"Available"}, {"date"=>"2017", "dateType"=>"Issued"}])
|
646
646
|
expect(subject.publication_year).to eq("2017")
|
@@ -657,7 +657,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
657
657
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
658
658
|
expect(subject.types["resourceType"]).to eq("Satellite data")
|
659
659
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
660
|
-
expect(subject.
|
660
|
+
expect(subject.creators).to eq([{"type"=>"Person",
|
661
661
|
"id"=>"https://orcid.org/0000-0002-0077-5338",
|
662
662
|
"name"=>"Ronald Van Der A",
|
663
663
|
"givenName"=>"Ronald",
|
@@ -697,7 +697,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
697
697
|
expect(subject.identifier).to eq("https://handle.test.datacite.org/10.22002/d1.694")
|
698
698
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
699
699
|
expect(subject.types["resourceTypeGeneral"]).to eq("Dataset")
|
700
|
-
expect(subject.
|
700
|
+
expect(subject.creators).to eq([{"name"=>"Tester"}])
|
701
701
|
expect(subject.titles).to eq([{"title"=>"Test license"}])
|
702
702
|
expect(subject.dates).to eq([{"date"=>"2018-01-12", "dateType"=>"Issued"}])
|
703
703
|
expect(subject.publication_year).to eq("2018")
|
@@ -714,7 +714,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
714
714
|
expect(subject.identifier).to eq("https://handle.test.datacite.org/10.21956/wellcomeopenres.25947.r17364")
|
715
715
|
expect(subject.types["schemaOrg"]).to eq("ScholarlyArticle")
|
716
716
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
717
|
-
expect(subject.
|
717
|
+
expect(subject.creators).to eq([{"name"=>"Fran2 Levy"}])
|
718
718
|
expect(subject.titles).to eq([{"title"=>"Referee report. For: FL Regression Wellcome [version 1; referees: retracted]"}])
|
719
719
|
expect(subject.dates).to eq([{"date"=>"2018", "dateType"=>"Issued"}])
|
720
720
|
expect(subject.publication_year).to eq("2018")
|
@@ -733,8 +733,8 @@ describe Bolognese::Metadata, vcr: true do
|
|
733
733
|
expect(subject.types["resourceTypeGeneral"]).to eq("Text")
|
734
734
|
expect(subject.types["ris"]).to eq("RPRT")
|
735
735
|
expect(subject.types["citeproc"]).to eq("article-journal")
|
736
|
-
expect(subject.
|
737
|
-
expect(subject.
|
736
|
+
expect(subject.creators.length).to eq(5)
|
737
|
+
expect(subject.creators.first).to eq("type"=>"Person", "name"=>"Lina Patel", "givenName"=>"Lina", "familyName"=>"Patel")
|
738
738
|
expect(subject.titles).to eq([{"title"=>"Referee report. For: Gates - add article keywords to the metatags [version 2; referees: 1 approved]"}])
|
739
739
|
expect(subject.publication_year).to eq("2018")
|
740
740
|
expect(subject.publisher).to eq("Gates Open Research")
|
@@ -749,18 +749,18 @@ describe Bolognese::Metadata, vcr: true do
|
|
749
749
|
expect(subject.rights_list).to eq([{"rights"=>"info:eu-repo/semantics/openAccess"}, {"rights"=>"Open Access", "rightsUri"=>"info:eu-repo/semantics/openAccess"}])
|
750
750
|
end
|
751
751
|
|
752
|
-
it "missing
|
752
|
+
it "missing creators" do
|
753
753
|
input = fixture_path + "datacite_missing_creator.xml"
|
754
754
|
subject = Bolognese::Metadata.new(input: input, regenerate: true)
|
755
|
-
expect(subject.
|
755
|
+
expect(subject.creators).to be_blank
|
756
756
|
expect(subject.valid?).to be false
|
757
757
|
expect(subject.errors).to eq("4:0: ERROR: Element '{http://datacite.org/schema/kernel-4}creators': Missing child element(s). Expected is ( {http://datacite.org/schema/kernel-4}creator ).")
|
758
758
|
end
|
759
759
|
|
760
|
-
it "malformed
|
760
|
+
it "malformed creators" do
|
761
761
|
input = fixture_path + "datacite_malformed_creator.xml"
|
762
762
|
subject = Bolognese::Metadata.new(input: input, regenerate: false)
|
763
|
-
expect(subject.
|
763
|
+
expect(subject.creators).to be_blank
|
764
764
|
expect(subject.valid?).to be false
|
765
765
|
expect(subject.errors).to eq("16:0: ERROR: Element '{http://datacite.org/schema/kernel-4}creatorName': This element is not expected. Expected is ( {http://datacite.org/schema/kernel-4}affiliation ).")
|
766
766
|
end
|
@@ -783,7 +783,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
783
783
|
expect(subject.types["schemaOrg"]).to eq("Thesis")
|
784
784
|
expect(subject.types["bibtex"]).to eq("phdthesis")
|
785
785
|
expect(subject.types["citeproc"]).to eq("thesis")
|
786
|
-
expect(subject.
|
786
|
+
expect(subject.creators).to eq([{"type"=>"Person", "name"=>"Heiko Conrad", "givenName"=>"Heiko", "familyName"=>"Conrad"}])
|
787
787
|
expect(subject.titles).to eq([{"title"=>"Dynamics of colloids in molecular glass forming liquids studied via X-ray photon correlation spectroscopy"}])
|
788
788
|
expect(subject.dates).to eq([{"date"=>"2014", "dateType"=>"Issued"},
|
789
789
|
{"date"=>"2014", "dateType"=>"Copyrighted"},
|
@@ -839,7 +839,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
839
839
|
expect(subject.valid?).to be true
|
840
840
|
expect(subject.identifier).to eq("https://doi.org/10.5061/dryad.8515")
|
841
841
|
expect(subject.doi).to eq("10.5061/dryad.8515")
|
842
|
-
expect(subject.
|
842
|
+
expect(subject.creators).to eq([{"type"=>"Person", "id"=>"https://orcid.org/0000-0003-1419-2405", "name"=>"Fenner, Martin", "givenName"=>"Martin", "familyName"=>"Fenner"}])
|
843
843
|
expect(subject.titles).to eq([{"title"=>"Eating your own Dog Food"}])
|
844
844
|
expect(subject.publisher).to eq("DataCite")
|
845
845
|
expect(subject.publication_year).to eq("2016")
|
@@ -858,7 +858,7 @@ describe Bolognese::Metadata, vcr: true do
|
|
858
858
|
expect(subject.content_url).to eq("https://storage.googleapis.com/gtex_analysis_v7/single_tissue_eqtl_data/GTEx_Analysis_v7_eQTL_expression_matrices.tar.gz")
|
859
859
|
expect(subject.types["schemaOrg"]).to eq("Dataset")
|
860
860
|
expect(subject.types["resourceType"]).to eq("DroNc-seq data")
|
861
|
-
expect(subject.
|
861
|
+
expect(subject.creators).to eq([{"name"=>"The GTEx Consortium", "type"=>"Organization"}])
|
862
862
|
expect(subject.titles).to eq([{"title"=>"DroNc-seq data"}])
|
863
863
|
expect(subject.subjects).to eq([{"subject"=>"gtex"}, {"subject"=>"annotation"}, {"subject"=>"phenotype"}, {"subject"=>"gene regulation"}, {"subject"=>"transcriptomics"}])
|
864
864
|
expect(subject.dates).to eq([{"date"=>"2017", "dateType"=>"Issued"}])
|