bolognese 1.8.13 → 1.9.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build.yml +37 -0
  3. data/.github/workflows/changelog.yml +36 -0
  4. data/.github/workflows/release.yml +47 -0
  5. data/CHANGELOG.md +1720 -0
  6. data/Gemfile.lock +71 -65
  7. data/README.md +1 -1
  8. data/bolognese.gemspec +2 -2
  9. data/lib/bolognese/author_utils.rb +6 -5
  10. data/lib/bolognese/datacite_utils.rb +76 -9
  11. data/lib/bolognese/metadata.rb +10 -5
  12. data/lib/bolognese/metadata_utils.rb +3 -2
  13. data/lib/bolognese/readers/bibtex_reader.rb +5 -4
  14. data/lib/bolognese/readers/citeproc_reader.rb +1 -1
  15. data/lib/bolognese/readers/crossref_reader.rb +3 -3
  16. data/lib/bolognese/readers/datacite_reader.rb +57 -11
  17. data/lib/bolognese/readers/ris_reader.rb +3 -3
  18. data/lib/bolognese/utils.rb +163 -46
  19. data/lib/bolognese/version.rb +1 -1
  20. data/resources/kernel-4.4/include/datacite-contributorType-v4.xsd +35 -0
  21. data/resources/kernel-4.4/include/datacite-dateType-v4.xsd +25 -0
  22. data/resources/kernel-4.4/include/datacite-descriptionType-v4.xsd +19 -0
  23. data/resources/kernel-4.4/include/datacite-funderIdentifierType-v4.xsd +16 -0
  24. data/resources/kernel-4.4/include/datacite-nameType-v4.xsd +10 -0
  25. data/resources/kernel-4.4/include/datacite-numberType-v4.xsd +12 -0
  26. data/resources/kernel-4.4/include/datacite-relatedIdentifierType-v4.xsd +34 -0
  27. data/resources/kernel-4.4/include/datacite-relationType-v4.xsd +51 -0
  28. data/resources/kernel-4.4/include/datacite-resourceType-v4.xsd +43 -0
  29. data/resources/kernel-4.4/include/datacite-titleType-v4.xsd +14 -0
  30. data/resources/kernel-4.4/include/xml.xsd +286 -0
  31. data/resources/kernel-4.4/metadata.xsd +707 -0
  32. data/resources/kernel-4/include/datacite-contributorType-v4.xsd +21 -21
  33. data/resources/kernel-4/include/datacite-dateType-v4.xsd +11 -11
  34. data/resources/kernel-4/include/datacite-descriptionType-v4.xsd +6 -6
  35. data/resources/kernel-4/include/datacite-funderIdentifierType-v4.xsd +5 -5
  36. data/resources/kernel-4/include/datacite-nameType-v4.xsd +2 -2
  37. data/resources/kernel-4/include/datacite-numberType-v4.xsd +12 -0
  38. data/resources/kernel-4/include/datacite-relatedIdentifierType-v4.xsd +19 -19
  39. data/resources/kernel-4/include/datacite-relationType-v4.xsd +36 -34
  40. data/resources/kernel-4/include/datacite-resourceType-v4.xsd +32 -17
  41. data/resources/kernel-4/include/datacite-titleType-v4.xsd +4 -4
  42. data/resources/kernel-4/metadata.xsd +297 -105
  43. data/spec/fixtures/datacite-example-dissertation-v4.4.xml +56 -0
  44. data/spec/fixtures/datacite-example-full-v4.4.xml +114 -0
  45. data/spec/fixtures/datacite-example-relateditems.xml +61 -0
  46. data/spec/fixtures/datacite-example-xs-string.xml +28 -0
  47. data/spec/fixtures/datacite-geolocationpolygons-multiple.xml +56 -0
  48. data/spec/metadata_spec.rb +1 -1
  49. data/spec/readers/bibtex_reader_spec.rb +2 -2
  50. data/spec/readers/crossref_reader_spec.rb +37 -37
  51. data/spec/readers/datacite_json_reader_spec.rb +1 -1
  52. data/spec/readers/datacite_reader_spec.rb +255 -4
  53. data/spec/readers/ris_reader_spec.rb +3 -3
  54. data/spec/writers/crosscite_writer_spec.rb +3 -3
  55. data/spec/writers/csv_writer_spec.rb +4 -4
  56. data/spec/writers/datacite_json_writer_spec.rb +3 -3
  57. data/spec/writers/datacite_writer_spec.rb +4 -4
  58. data/spec/writers/schema_org_writer_spec.rb +3 -3
  59. metadata +31 -10
  60. data/.travis.yml +0 -35
@@ -0,0 +1,56 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3
+ xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4.4/metadata.xsd">
4
+ <identifier identifierType="DOI">10.5072/100044</identifier>
5
+ <creators>
6
+ <creator>
7
+ <creatorName nameType="Personal">Luo, R</creatorName>
8
+ </creator>
9
+ <creator>
10
+ <creatorName nameType="Personal">Liu, B</creatorName>
11
+ </creator>
12
+ <creator>
13
+ <creatorName nameType="Personal">Xie, Y</creatorName>
14
+ </creator>
15
+ <creator>
16
+ <creatorName nameType="Personal">Li, Z</creatorName>
17
+ </creator>
18
+ </creators>
19
+ <titles>
20
+ <title xml:lang="en">
21
+ Software and supporting material for "SOAPdenovo2: An empirically improved memory-efficient short read de novo assembly"
22
+ </title>
23
+ </titles>
24
+ <publisher xml:lang="en">GigaScience Database</publisher>
25
+ <publicationYear>2012</publicationYear>
26
+ <subjects>
27
+ <subject xml:lang="en">DNA (Genetics)</subject>
28
+ <subject xml:lang="en">Computer Program</subject>
29
+ </subjects>
30
+ <dates>
31
+ <date dateType="Available">2012-12-13</date>
32
+ </dates>
33
+ <language>en</language>
34
+ <resourceType resourceTypeGeneral="Dissertation"></resourceType>
35
+ <relatedIdentifiers>
36
+ <relatedIdentifier relatedIdentifierType="DOI" relationType="IsReferencedBy">10.5072/2047-217X-1-1</relatedIdentifier>
37
+ <relatedIdentifier relatedIdentifierType="DOI" relationType="Compiles">10.5072/100038</relatedIdentifier>
38
+ </relatedIdentifiers>
39
+ <sizes>
40
+ <size>31 MB</size>
41
+ </sizes>
42
+ <rightsList>
43
+ <rights xml:lang="en-US" schemeURI="https://spdx.org/licenses/" rightsIdentifierScheme="SPDX" rightsIdentifier="CC0 1.0" rightsURI="http://creativecommons.org/publicdomain/zero/1.0/"/>
44
+ </rightsList>
45
+ <descriptions>
46
+ <description xml:lang="en" descriptionType="Abstract">
47
+ SOAPdenovo2 is the latest de novo genome assembly package from BGI's SOAP (short oligonucleotide analysis package) suite of tools (homepage here: http://soap.genomics.org.cn/). Compared to SOAPdenovo1, this new version has the advantage of a new
48
+ algorithm design that reduces memory consumption in graph construction, resolves more repeat regions in contig assembly, increases coverage and length in scaffold construction, improves gap closure, and is optimized for large genomes. Using new
49
+ sequencing data from the YH (Homo sapiens) diploid genome - the first sequenced Han Chinese individual, an updated assembly was produced (see dataset here: doi:10.5524/100038), with the N50 scores for the contig and scaffold being 3-fold and 50-fold
50
+ longer, respectively, than the first published version. The genome coverage increased from 81.16% to 93.91%, and memory consumption was ~2/3 times lower during the point of largest memory consumption. Benchmarking with Assemblathon1 and GAGE datasets
51
+ shows that SOAPdenovo2 greatly surpasses its predecessor SOAPdenovo1 and is competitive to other assemblers on both assembly length and accuracy. In order to facilitate readers to repeat and recreate these findings, configured packages with the
52
+ compressed pipelines containing all of the necessary shell scripts and tools are available from the BGI FTP server (ftp://public.genomics.org.cn/BGI/SOAPdenovo2). The latest version of SOAPdenovo2 is available from Sourceforge:
53
+ http://soapdenovo2.sourceforge.net/ These pipelines will also soon be made available from our data platform as Galaxy workflows: http://galaxy.cbiit.cuhk.edu.hk/
54
+ </description>
55
+ </descriptions>
56
+ </resource>
@@ -0,0 +1,114 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3
+ xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4.4/metadata.xsd">
4
+ <identifier identifierType="DOI">10.5072/example-full</identifier>
5
+ <creators>
6
+ <creator>
7
+ <creatorName nameType="Personal">Miller, Elizabeth</creatorName>
8
+ <givenName>Elizabeth</givenName>
9
+ <familyName>Miller</familyName>
10
+ <nameIdentifier schemeURI="https://orcid.org/" nameIdentifierScheme="ORCID">0000-0001-5000-0007</nameIdentifier>
11
+ <affiliation>DataCite</affiliation>
12
+ </creator>
13
+ </creators>
14
+ <titles>
15
+ <title xml:lang="en-US">Full DataCite XML Example</title>
16
+ <title xml:lang="en-US" titleType="Subtitle">Demonstration of DataCite Properties.</title>
17
+ </titles>
18
+ <publisher xml:lang="en">DataCite</publisher>
19
+ <publicationYear>2014</publicationYear>
20
+ <subjects>
21
+ <subject xml:lang="en-US" schemeURI="http://dewey.info/" subjectScheme="dewey" classificationCode="000">computer science</subject>
22
+ </subjects>
23
+ <contributors>
24
+ <contributor contributorType="ProjectLeader">
25
+ <contributorName>Starr, Joan</contributorName>
26
+ <givenName>Joan</givenName>
27
+ <familyName>Starr</familyName>
28
+ <nameIdentifier schemeURI="https://orcid.org/" nameIdentifierScheme="ORCID">0000-0002-7285-027X</nameIdentifier>
29
+ <affiliation>California Digital Library</affiliation>
30
+ </contributor>
31
+ </contributors>
32
+ <dates>
33
+ <date dateType="Updated" dateInformation="Updated with 4.4 properties">2021-01-26</date>
34
+ </dates>
35
+ <language>en-US</language>
36
+ <resourceType resourceTypeGeneral="Software">XML</resourceType>
37
+ <alternateIdentifiers>
38
+ <alternateIdentifier alternateIdentifierType="URL">https://schema.datacite.org/meta/kernel-4.4/example/datacite-example-full-v4.4.xml</alternateIdentifier>
39
+ </alternateIdentifiers>
40
+ <relatedIdentifiers>
41
+ <relatedIdentifier relatedIdentifierType="URL" relationType="HasMetadata" relatedMetadataScheme="citeproc+json" schemeURI="https://github.com/citation-style-language/schema/raw/master/csl-data.json">https://data.datacite.org/application/citeproc+json/10.5072/example-full</relatedIdentifier>
42
+ <relatedIdentifier relatedIdentifierType="arXiv" relationType="IsReviewedBy" resourceTypeGeneral="Text">arXiv:0706.0001</relatedIdentifier>
43
+ </relatedIdentifiers>
44
+ <sizes>
45
+ <size>4 kB</size>
46
+ </sizes>
47
+ <formats>
48
+ <format>application/xml</format>
49
+ </formats>
50
+ <version>4.2</version>
51
+ <rightsList>
52
+ <rights xml:lang="en-US" schemeURI="https://spdx.org/licenses/" rightsIdentifierScheme="SPDX" rightsIdentifier="CC0 1.0" rightsURI="https://creativecommons.org/publicdomain/zero/1.0/"/>
53
+ </rightsList>
54
+ <descriptions>
55
+ <description xml:lang="en-US" descriptionType="Abstract">XML example of all DataCite Metadata Schema v4.4 properties.</description>
56
+ </descriptions>
57
+ <geoLocations>
58
+ <geoLocation>
59
+ <geoLocationPlace>Atlantic Ocean</geoLocationPlace>
60
+ <geoLocationPoint>
61
+ <pointLongitude>-67.302</pointLongitude>
62
+ <pointLatitude>31.233</pointLatitude>
63
+ </geoLocationPoint>
64
+ <geoLocationBox>
65
+ <westBoundLongitude>-71.032</westBoundLongitude>
66
+ <eastBoundLongitude>-68.211</eastBoundLongitude>
67
+ <southBoundLatitude>41.090</southBoundLatitude>
68
+ <northBoundLatitude>42.893</northBoundLatitude>
69
+ </geoLocationBox>
70
+ <geoLocationPolygon>
71
+ <polygonPoint>
72
+ <pointLatitude>41.991</pointLatitude>
73
+ <pointLongitude>-71.032</pointLongitude>
74
+ </polygonPoint>
75
+ <polygonPoint>
76
+ <pointLatitude>42.893</pointLatitude>
77
+ <pointLongitude>-69.622</pointLongitude>
78
+ </polygonPoint>
79
+ <polygonPoint>
80
+ <pointLatitude>41.991</pointLatitude>
81
+ <pointLongitude>-68.211</pointLongitude>
82
+ </polygonPoint>
83
+ <polygonPoint>
84
+ <pointLatitude>41.090</pointLatitude>
85
+ <pointLongitude>-69.622</pointLongitude>
86
+ </polygonPoint>
87
+ <polygonPoint>
88
+ <pointLatitude>41.991</pointLatitude>
89
+ <pointLongitude>-71.032</pointLongitude>
90
+ </polygonPoint>
91
+ </geoLocationPolygon>
92
+ </geoLocation>
93
+ </geoLocations>
94
+ <fundingReferences>
95
+ <fundingReference>
96
+ <funderName>National Science Foundation</funderName>
97
+ <funderIdentifier funderIdentifierType="Crossref Funder ID">https://doi.org/10.13039/100000001</funderIdentifier>
98
+ <awardNumber>CBET-106</awardNumber>
99
+ <awardTitle>Full DataCite XML Example</awardTitle>
100
+ </fundingReference>
101
+ </fundingReferences>
102
+ <relatedItems>
103
+ <relatedItem relationType="IsPublishedIn" relatedItemType="Journal">
104
+ <relatedItemIdentifier relatedItemIdentifierType="DOI">10.1016/j.physletb.2017.11.044</relatedItemIdentifier>
105
+ <titles>
106
+ <title>Physics letters / B</title>
107
+ </titles>
108
+ <publicationYear>2018</publicationYear>
109
+ <volume>776</volume>
110
+ <firstPage>249</firstPage>
111
+ <lastPage>264</lastPage>
112
+ </relatedItem>
113
+ </relatedItems>
114
+ </resource>
@@ -0,0 +1,61 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3
+ xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4.4/metadata.xsd">
4
+ <identifier identifierType="DOI">10.5072/example-full</identifier>
5
+ <creators>
6
+ <creator>
7
+ <creatorName nameType="Personal">Hallett, Richard</creatorName>
8
+ <givenName>Richard</givenName>
9
+ <familyName>Hallett</familyName>
10
+ </creator>
11
+ </creators>
12
+ <titles>
13
+ <title xml:lang="en-US">Example for related items</title>
14
+ </titles>
15
+ <publisher xml:lang="en">DataCite</publisher>
16
+ <publicationYear>2021</publicationYear>
17
+ <dates>
18
+ <date dateType="Updated" dateInformation="Updated with 4.4 properties">2021-01-26</date>
19
+ </dates>
20
+ <language>en-US</language>
21
+ <resourceType resourceTypeGeneral="Software">XML</resourceType>
22
+ <version>1</version>
23
+ <descriptions>
24
+ <description xml:lang="en-US" descriptionType="Abstract">A test example for related items</description>
25
+ </descriptions>
26
+ <relatedItems>
27
+ <relatedItem relationType="IsPublishedIn" relatedItemType="Journal">
28
+ <relatedItemIdentifier
29
+ relatedItemIdentifierType="DOI"
30
+ relatedMetadataScheme="citeproc+json"
31
+ schemeURI="https://github.com/citation-style-language/schema/raw/master/csl-data.json"
32
+ schemeType="URL">10.5072/john-smiths-1234</relatedItemIdentifier>
33
+ <creators>
34
+ <creator>
35
+ <creatorName nameType="Personal">Smith, John</creatorName>
36
+ <givenName>John</givenName>
37
+ <familyName>Smith</familyName>
38
+ </creator>
39
+ </creators>
40
+ <titles>
41
+ <title>Understanding the fictional John Smith</title>
42
+ <title titleType="Subtitle">A detailed look</title>
43
+ </titles>
44
+ <publicationYear>1776</publicationYear>
45
+ <volume>776</volume>
46
+ <issue>1</volume>
47
+ <number numberType="Chapter">1</number>
48
+ <firstPage>50</firstPage>
49
+ <lastPage>60</lastPage>
50
+ <publisher>Example Inc</publisher>
51
+ <edition>1</edition>
52
+ <contributors>
53
+ <contributor contributorType="ProjectLeader">
54
+ <contributorName>Richard, Hallett</contributorName>
55
+ <givenName>Richard</givenName>
56
+ <familyName>Hallett</familyName>
57
+ </contributor>
58
+ </contributors>
59
+ </relatedItem>
60
+ </relatedItems>
61
+ </resource>
@@ -0,0 +1,28 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2
+ <resource xmlns="http://datacite.org/schema/kernel-2.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://datacite.org/schema/kernel-2.2 http://schema.datacite.org/meta/kernel-2.2/metadata.xsd"><identifier identifierType="DOI">10.4225/13/511C71F8612C3</identifier>
3
+ <creators>
4
+ <creator>
5
+ <creatorName>Claire L O?Brien</creatorName>
6
+ </creator>
7
+ <creator>
8
+ <creatorName>Gwen E Allison</creatorName>
9
+ </creator>
10
+ <creator>
11
+ <creatorName>Florian Grimpen</creatorName>
12
+ </creator>
13
+ <creator>
14
+ <creatorName>Paul Pavli</creatorName>
15
+ </creator>
16
+ </creators>
17
+ <titles>
18
+ <title>Impact of Colonoscopy Bowel Preparation on Intestinal Microbiota</title>
19
+ </titles>
20
+ <publisher>The Australian National University Data Commons</publisher>
21
+ <publicationYear>2013</publicationYear>
22
+ <sizes>
23
+ <size xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">1.7 GB</size>
24
+ </sizes>
25
+ <formats>
26
+ <format xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">application/xml</format>
27
+ </formats>
28
+ </resource>
@@ -0,0 +1,56 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2
+ <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3
+ xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4.4/metadata.xsd">
4
+ <identifier identifierType="DOI">10.5072/multiplegeopolygons</identifier>
5
+ <creators>
6
+ <creator>
7
+ <creatorName>John Smithy</creatorName>
8
+ </creator>
9
+ </creators>
10
+ <titles>
11
+ <title>Multiple Geopolygon testing</title>
12
+ </titles>
13
+ <resourceType resourceTypeGeneral="Software">XML</resourceType>
14
+ <publisher>DataCite</publisher>
15
+ <publicationYear>2021</publicationYear>
16
+ <geoLocations>
17
+ <geoLocation>
18
+ <geoLocationPolygon>
19
+ <polygonPoint>
20
+ <pointLongitude>41</pointLongitude>
21
+ <pointLatitude>71</pointLatitude>
22
+ </polygonPoint>
23
+ <polygonPoint>
24
+ <pointLongitude>45</pointLongitude>
25
+ <pointLatitude>75</pointLatitude>
26
+ </polygonPoint>
27
+ <polygonPoint>
28
+ <pointLongitude>55</pointLongitude>
29
+ <pointLatitude>85</pointLatitude>
30
+ </polygonPoint>
31
+ <polygonPoint>
32
+ <pointLongitude>41</pointLongitude>
33
+ <pointLatitude>71</pointLatitude>
34
+ </polygonPoint>
35
+ </geoLocationPolygon>
36
+ <geoLocationPolygon>
37
+ <polygonPoint>
38
+ <pointLongitude>65</pointLongitude>
39
+ <pointLatitude>80</pointLatitude>
40
+ </polygonPoint>
41
+ <polygonPoint>
42
+ <pointLongitude>55</pointLongitude>
43
+ <pointLatitude>75</pointLatitude>
44
+ </polygonPoint>
45
+ <polygonPoint>
46
+ <pointLongitude>45</pointLongitude>
47
+ <pointLatitude>73</pointLatitude>
48
+ </polygonPoint>
49
+ <polygonPoint>
50
+ <pointLongitude>65</pointLongitude>
51
+ <pointLatitude>80</pointLatitude>
52
+ </polygonPoint>
53
+ </geoLocationPolygon>
54
+ </geoLocation>
55
+ </geoLocations>
56
+ </resource>
@@ -153,7 +153,7 @@ describe Bolognese::Metadata, vcr: true do
153
153
  it "missing_comma" do
154
154
  json = IO.read(fixture_path + "datacite_software_missing_comma.json")
155
155
  response = subject.jsonlint(json)
156
- expect(response).to eq(["expected comma, not a string (after doi) at line 4, column 11 [parse.c:373]"])
156
+ expect(response).to eq(["expected comma, not a string (after doi) at line 4, column 11 [parse.c:364]"])
157
157
  end
158
158
 
159
159
  it "overlapping_keys" do
@@ -29,7 +29,7 @@ describe Bolognese::Metadata, vcr: true do
29
29
  it "Crossref DOI" do
30
30
  expect(subject.valid?).to be true
31
31
  expect(subject.id).to eq("https://doi.org/10.7554/elife.01567")
32
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"Text", "resourceType"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
32
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceTypeGeneral"=>"JournalArticle", "resourceType"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
33
33
  expect(subject.url).to eq("http://elifesciences.org/lookup/doi/10.7554/eLife.01567")
34
34
  expect(subject.creators.length).to eq(5)
35
35
  expect(subject.creators.first).to eq("familyName"=>"Sankar", "givenName"=>"Martial", "name"=>"Sankar, Martial", "nameType"=>"Personal")
@@ -52,7 +52,7 @@ describe Bolognese::Metadata, vcr: true do
52
52
  expect(subject.valid?).to be false
53
53
  expect(subject.state).to eq("not_found")
54
54
  expect(subject.id).to eq("https://doi.org/10.7554/elife.01567")
55
- expect(subject.types).to eq("bibtex"=>"phdthesis", "citeproc"=>"thesis", "resourceTypeGeneral"=>"Text", "resourceType"=>"Dissertation", "ris"=>"THES", "schemaOrg"=>"Thesis")
55
+ expect(subject.types).to eq("bibtex"=>"phdthesis", "citeproc"=>"thesis", "resourceTypeGeneral"=>"Dissertation", "resourceType"=>"Dissertation", "ris"=>"THES", "schemaOrg"=>"Thesis")
56
56
  expect(subject.creators).to eq([{"familyName"=>"Toparlar", "givenName"=>"Y.", "name"=>"Toparlar, Y.", "nameType"=>"Personal"}])
57
57
  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"}])
58
58
  expect(subject.descriptions.first["description"]).to start_with("Designing the climates of cities")
@@ -20,7 +20,7 @@ describe Bolognese::Metadata, vcr: true do
20
20
  expect(subject.valid?).to be true
21
21
  expect(subject.id).to eq("https://doi.org/10.7554/elife.01567")
22
22
  expect(subject.identifiers).to eq([{"identifier"=>"e01567", "identifierType"=>"article_number"}])
23
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
23
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "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)
26
26
  expect(subject.creators.first).to eq("nameType"=>"Personal", "name"=>"Sankar, Martial", "givenName"=>"Martial", "familyName"=>"Sankar", "affiliation" => [{"name"=>"Department of Plant Molecular Biology, University of Lausanne, Lausanne, Switzerland"}])
@@ -57,7 +57,7 @@ describe Bolognese::Metadata, vcr: true do
57
57
  expect(subject.id).to eq("https://doi.org/10.1371/journal.pone.0000030")
58
58
  expect(subject.identifiers).to eq([{"identifier"=>"10.1371/journal.pone.0000030", "identifierType"=>"Publisher ID"}])
59
59
  expect(subject.url).to eq("https://dx.plos.org/10.1371/journal.pone.0000030")
60
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
60
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "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
63
  expect(subject.contributors).to eq([{"contributorType"=>"Editor", "familyName"=>"Janbon", "givenName"=>"Guilhem", "name"=>"Janbon, Guilhem", "nameType"=>"Personal"}])
@@ -84,7 +84,7 @@ describe Bolognese::Metadata, vcr: true do
84
84
  expect(subject.id).to eq("https://doi.org/10.3389/fpls.2019.00816")
85
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
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
87
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
88
88
  expect(subject.creators.length).to eq(4)
89
89
  expect(subject.creators.first).to eq("familyName"=>"Fortes", "givenName"=>"Ana Margarida", "name"=>"Fortes, Ana Margarida", "nameType"=>"Personal")
90
90
  expect(subject.titles).to eq([{"title"=>"Transcriptional Modulation of Polyamine Metabolism in Fruit Species Under Abiotic and Biotic Stress"}])
@@ -110,7 +110,7 @@ describe Bolognese::Metadata, vcr: true do
110
110
  expect(subject.valid?).to be true
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
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
113
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
114
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"})
@@ -128,7 +128,7 @@ describe Bolognese::Metadata, vcr: true do
128
128
  expect(subject.valid?).to be true
129
129
  expect(subject.id).to eq("https://doi.org/10.1163/1937240x-00002096")
130
130
  expect(subject.url).to eq("https://academic.oup.com/jcb/article-lookup/doi/10.1163/1937240X-00002096")
131
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
131
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
132
132
  expect(subject.creators.length).to eq(8)
133
133
  expect(subject.creators.first).to eq("familyName"=>"Mesquita-Joanes", "givenName"=>"Francesc", "name"=>"Mesquita-Joanes, Francesc", "nameType"=>"Personal")
134
134
  expect(subject.titles).to eq([{"title"=>"Global distribution of Fabaeformiscandona subacuta: an exotic invasive Ostracoda on the Iberian Peninsula?"}])
@@ -148,7 +148,7 @@ describe Bolognese::Metadata, vcr: true do
148
148
  expect(subject.valid?).to be true
149
149
  expect(subject.id).to eq("https://doi.org/10.1007/978-3-642-33191-6_49")
150
150
  expect(subject.url).to eq("http://link.springer.com/10.1007/978-3-642-33191-6_49")
151
- expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"Text", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
151
+ expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"BookChapter", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
152
152
  expect(subject.creators.length).to eq(3)
153
153
  expect(subject.creators.first).to eq("familyName"=>"Chen", "givenName"=>"Lili", "name"=>"Chen, Lili", "nameType"=>"Personal")
154
154
  expect(subject.titles).to eq([{"title"=>"Human Body Orientation Estimation in Multiview Scenarios"}])
@@ -166,7 +166,7 @@ describe Bolognese::Metadata, vcr: true do
166
166
  subject = Bolognese::Metadata.new(input: input)
167
167
  expect(subject.valid?).to be true
168
168
  expect(subject.url).to eq("http://biorxiv.org/lookup/doi/10.1101/097196")
169
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"PostedContent", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
169
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"PostedContent", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
170
170
  expect(subject.creators.count).to eq(11)
171
171
  expect(subject.creators.last).to eq("nameType"=>"Personal", "nameIdentifiers" => [{"nameIdentifier"=>"https://orcid.org/0000-0003-4060-7360", "nameIdentifierScheme"=>"ORCID", "schemeUri"=>"https://orcid.org"}], "name"=>"Clark, Timothy", "givenName"=>"Timothy", "familyName"=>"Clark")
172
172
  expect(subject.titles).to eq([{"title"=>"A Data Citation Roadmap for Scholarly Data Repositories"}])
@@ -184,7 +184,7 @@ describe Bolognese::Metadata, vcr: true do
184
184
  subject = Bolognese::Metadata.new(input: input)
185
185
  expect(subject.valid?).to be true
186
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")
187
+ expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"article-journal", "resourceType"=>"PeerReview", "resourceTypeGeneral"=>"PeerReview", "ris"=>"JOUR", "schemaOrg"=>"Review")
188
188
  expect(subject.creators.count).to eq(8)
189
189
  expect(subject.creators.last).to eq("affiliation" => [{"name"=>"Center for Computational Mathematics, Flatiron Institute, New York, United States"}],
190
190
  "familyName" => "Barnett",
@@ -206,7 +206,7 @@ describe Bolognese::Metadata, vcr: true do
206
206
  subject = Bolognese::Metadata.new(input: input)
207
207
  expect(subject.valid?).to be true
208
208
  expect(subject.url).to eq("http://espace.library.uq.edu.au/view/UQ:23a1e74")
209
- expect(subject.types).to eq("bibtex"=>"phdthesis", "citeproc"=>"thesis", "resourceType"=>"Dissertation", "resourceTypeGeneral"=>"Text", "ris"=>"THES", "schemaOrg"=>"Thesis")
209
+ expect(subject.types).to eq("bibtex"=>"phdthesis", "citeproc"=>"thesis", "resourceType"=>"Dissertation", "resourceTypeGeneral"=>"Dissertation", "ris"=>"THES", "schemaOrg"=>"Thesis")
210
210
  expect(subject.creators).to eq([{"familyName"=>"Collingwood",
211
211
  "givenName"=>"Patricia Maree",
212
212
  "name"=>"Collingwood, Patricia Maree",
@@ -231,7 +231,7 @@ describe Bolognese::Metadata, vcr: true do
231
231
  expect(subject.valid?).to be true
232
232
  expect(subject.id).to eq("https://doi.org/10.1890/0012-9658(2006)87%255b2832:tiopma%255d2.0.co;2")
233
233
  expect(subject.url).to eq("http://doi.wiley.com/10.1890/0012-9658(2006)87[2832:TIOPMA]2.0.CO;2")
234
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
234
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
235
235
  expect(subject.creators).to eq([{"nameType"=>"Personal", "name"=>"Fenton, A.", "givenName"=>"A.", "familyName"=>"Fenton"}, {"nameType"=>"Personal", "name"=>"Rands, S. A.", "givenName"=>"S. A.", "familyName"=>"Rands"}])
236
236
  expect(subject.rights_list).to eq([{"rightsUri"=>"http://doi.wiley.com/10.1002/tdm_license_1.1"}])
237
237
  expect(subject.titles).to eq([{"title"=>"THE IMPACT OF PARASITE MANIPULATION AND PREDATOR FORAGING BEHAVIOR ON PREDATOR–PREY COMMUNITIES"}])
@@ -251,7 +251,7 @@ describe Bolognese::Metadata, vcr: true do
251
251
  expect(subject.valid?).to be true
252
252
  expect(subject.id).to eq("https://doi.org/10.1155/2012/291294")
253
253
  expect(subject.url).to eq("http://www.hindawi.com/journals/pm/2012/291294/")
254
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
254
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
255
255
  expect(subject.creators.length).to eq(7)
256
256
  expect(subject.creators[2]).to eq("nameType"=>"Personal", "nameIdentifiers" => [{"nameIdentifier"=>"https://orcid.org/0000-0003-2043-4925", "nameIdentifierScheme"=>"ORCID", "schemeUri"=>"https://orcid.org"}], "name"=>"Hernandez, Beatriz", "givenName"=>"Beatriz", "familyName"=>"Hernandez", "affiliation" => [{"name"=>"War Related Illness and Injury Study Center (WRIISC) and Mental Illness Research Education and Clinical Center (MIRECC), Department of Veterans Affairs, Palo Alto, CA 94304, USA"}, {"name"=>"Department of Psychiatry and Behavioral Sciences, Stanford University School of Medicine, Stanford, CA 94304, USA"}])
257
257
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 3.0 Unported",
@@ -277,7 +277,7 @@ describe Bolognese::Metadata, vcr: true do
277
277
  expect(subject.id).to eq("https://doi.org/10.1016/j.ejphar.2015.03.018")
278
278
  expect(subject.identifiers).to eq([{"identifier"=>"S0014299915002332", "identifierType"=>"sequence-number"}])
279
279
  expect(subject.url).to eq("https://linkinghub.elsevier.com/retrieve/pii/S0014299915002332")
280
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
280
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
281
281
  expect(subject.creators.length).to eq(10)
282
282
  expect(subject.creators.first).to eq("nameType"=>"Personal", "name"=>"Beck, Sarah E.", "givenName"=>"Sarah E.", "familyName"=>"Beck")
283
283
  expect(subject.titles).to eq([{"title"=>"Paving the path to HIV neurotherapy: Predicting SIV CNS disease"}])
@@ -295,7 +295,7 @@ describe Bolognese::Metadata, vcr: true do
295
295
  expect(subject.valid?).to be true
296
296
  expect(subject.id).to eq("https://doi.org/10.1038/hdy.2013.26")
297
297
  expect(subject.url).to eq("http://www.nature.com/articles/hdy201326")
298
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
298
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
299
299
  expect(subject.creators.length).to eq(2)
300
300
  expect(subject.creators.first).to eq("familyName"=>"Gross", "givenName"=>"J B", "name"=>"Gross, J B", "nameType"=>"Personal")
301
301
  expect(subject.titles).to eq([{"title"=>"Albinism in phylogenetically and geographically distinct populations of Astyanax cavefish arises through the same loss-of-function Oca2 allele"}])
@@ -364,7 +364,7 @@ describe Bolognese::Metadata, vcr: true do
364
364
  expect(subject.valid?).to be true
365
365
  expect(subject.id).to eq("https://doi.org/10.1007/978-3-662-46370-3_13")
366
366
  expect(subject.url).to eq("http://link.springer.com/10.1007/978-3-662-46370-3_13")
367
- expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"Text", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
367
+ expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"BookChapter", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
368
368
  expect(subject.creators.length).to eq(2)
369
369
  expect(subject.creators.first).to eq("nameType"=>"Personal", "name"=>"Diercks, Ronald L.", "givenName"=>"Ronald L.", "familyName"=>"Diercks")
370
370
  expect(subject.titles).to eq([{"title"=>"Clinical Symptoms and Physical Examinations"}])
@@ -380,7 +380,7 @@ describe Bolognese::Metadata, vcr: true do
380
380
  expect(subject.valid?).to be true
381
381
  expect(subject.id).to eq("https://doi.org/10.1007/978-3-319-75889-3_1")
382
382
  expect(subject.url).to eq("http://link.springer.com/10.1007/978-3-319-75889-3_1")
383
- expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"Text", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
383
+ expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"BookChapter", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
384
384
  expect(subject.creators).to eq([{"familyName"=>"Jones", "givenName"=>"Hunter M.", "name"=>"Jones, Hunter M.", "nameType"=>"Personal"}])
385
385
  expect(subject.titles).to eq([{"title"=>"Climate Change and Increasing Risk of Extreme Heat"}])
386
386
  expect(subject.dates).to include({"date"=>"2018", "dateType"=>"Issued"})
@@ -395,7 +395,7 @@ describe Bolognese::Metadata, vcr: true do
395
395
  expect(subject.valid?).to be true
396
396
  expect(subject.id).to eq("https://doi.org/10.4018/978-1-4666-1891-6.ch004")
397
397
  expect(subject.url).to eq("http://services.igi-global.com/resolvedoi/resolve.aspx?doi=10.4018/978-1-4666-1891-6.ch004")
398
- expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"Text", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
398
+ expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"BookChapter", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
399
399
  expect(subject.creators).to eq([{"affiliation"=>[{"name"=>"Université de Lyon, France"}], "familyName"=>"Bichot", "givenName"=>"Charles-Edmond", "name"=>"Bichot, Charles-Edmond", "nameType"=>"Personal"}])
400
400
  expect(subject.titles).to eq([{"title"=>"Unsupervised and Supervised Image Segmentation Using Graph Partitioning"}])
401
401
  expect(subject.dates).to eq([{"date"=>"2012-08-08", "dateType"=>"Issued"}, {"date"=>"2019-07-02T17:17:21Z", "dateType"=>"Updated"}])
@@ -410,7 +410,7 @@ describe Bolognese::Metadata, vcr: true do
410
410
  expect(subject.valid?).to be true
411
411
  expect(subject.id).to eq("https://doi.org/10.3390/publications6020015")
412
412
  expect(subject.url).to eq("http://www.mdpi.com/2304-6775/6/2/15")
413
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
413
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
414
414
  expect(subject.creators).to eq([{"name"=>"Alexander Kohls", "nameType"=>"Organizational"}, {"name"=>"Salvatore Mele", "nameType"=>"Organizational"}])
415
415
  expect(subject.titles).to eq([{"title"=>"Converting the Literature of a Scientific Field to Open Access through Global Collaboration: The Experience of SCOAP3 in Particle Physics"}])
416
416
  expect(subject.dates).to eq([{"date"=>"2018-04-09", "dateType"=>"Issued"}, {"date"=>"2018-04-10T17:58:05Z", "dateType"=>"Updated"}])
@@ -426,7 +426,7 @@ describe Bolognese::Metadata, vcr: true do
426
426
  expect(subject.id).to eq("https://doi.org/10.1017/9781108348843")
427
427
  expect(subject.identifiers).to eq([{"identifier"=>"9781108348843", "identifierType"=>"ISBN"}])
428
428
  expect(subject.url).to eq("https://www.cambridge.org/core/product/identifier/9781108348843/type/book")
429
- expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Text", "ris"=>"BOOK", "schemaOrg"=>"Book")
429
+ expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Book", "ris"=>"BOOK", "schemaOrg"=>"Book")
430
430
  expect(subject.creators).to eq([{"familyName"=>"Leung", "givenName"=>"Vincent S.", "name"=>"Leung, Vincent S.", "nameType"=>"Personal"}])
431
431
  expect(subject.titles).to eq([{"title"=>"The Politics of the Past in Early China"}])
432
432
  expect(subject.dates).to eq([{"date"=>"2019-07-01", "dateType"=>"Issued"}, {"date"=>"2019-12-01T18:11:11Z", "dateType"=>"Updated"}])
@@ -442,7 +442,7 @@ describe Bolognese::Metadata, vcr: true do
442
442
  expect(subject.valid?).to be true
443
443
  expect(subject.id).to eq("https://doi.org/10.2973/odp.proc.ir.180.2000")
444
444
  expect(subject.url).to eq("http://www-odp.tamu.edu/publications/180_IR/180TOC.HTM")
445
- expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Text", "ris"=>"BOOK", "schemaOrg"=>"Book")
445
+ expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Book", "ris"=>"BOOK", "schemaOrg"=>"Book")
446
446
  expect(subject.creators).to eq([{"name"=>":(unav)", "nameType"=>"Organizational"}])
447
447
  expect(subject.contributors.size).to eq(4)
448
448
  expect(subject.contributors.first).to eq("contributorType"=>"Editor", "familyName"=>"Taylor", "givenName"=>"B.", "name"=>"Taylor, B.", "nameType"=>"Personal")
@@ -461,7 +461,7 @@ describe Bolognese::Metadata, vcr: true do
461
461
  expect(subject.id).to eq("https://doi.org/10.1029/ar035")
462
462
  expect(subject.identifiers).to eq([{"identifier"=>"0-87590-181-6", "identifierType"=>"ISBN"}])
463
463
  expect(subject.url).to eq("http://doi.wiley.com/10.1029/AR035")
464
- expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Text", "ris"=>"BOOK", "schemaOrg"=>"Book")
464
+ expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Book", "ris"=>"BOOK", "schemaOrg"=>"Book")
465
465
  expect(subject.creators).to eq([{"familyName"=>"McGinnis", "givenName"=>"Richard Frank", "name"=>"McGinnis, Richard Frank", "nameType"=>"Personal"}])
466
466
  expect(subject.titles).to eq([{"title"=>"Biogeography of Lanternfishes (Myctophidae) South of 30°S"}])
467
467
  expect(subject.dates).to eq([{"date"=>"1982", "dateType"=>"Issued"}, {"date"=>"2019-06-15T05:11:12Z", "dateType"=>"Updated"}])
@@ -481,7 +481,7 @@ describe Bolognese::Metadata, vcr: true do
481
481
  expect(subject.id).to eq("https://doi.org/10.3280/ecag2018-001005")
482
482
  expect(subject.identifiers).to eq([{"identifier"=>"5", "identifierType"=>"article_number"}])
483
483
  expect(subject.url).to eq("http://www.francoangeli.it/riviste/Scheda_Riviste.asp?IDArticolo=61645")
484
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
484
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
485
485
  expect(subject.creators.length).to eq(2)
486
486
  expect(subject.creators.first).to eq("familyName"=>"Oh", "givenName"=>"Sohae Eve", "name"=>"Oh, Sohae Eve", "nameType"=>"Personal")
487
487
  expect(subject.titles).to eq([{"title"=>"Substitutability between organic and conventional poultry products and organic price premiums"}])
@@ -498,7 +498,7 @@ describe Bolognese::Metadata, vcr: true do
498
498
  expect(subject.id).to eq("https://doi.org/10.5012/bkcs.2013.34.10.2889")
499
499
  expect(subject.identifiers).to eq([{"identifier"=>"JCGMCS_2013_v34n10_2889", "identifierType"=>"Publisher ID"}])
500
500
  expect(subject.url).to eq("http://koreascience.or.kr/journal/view.jsp?kj=JCGMCS&py=2013&vnc=v34n10&sp=2889")
501
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
501
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
502
502
  expect(subject.creators.length).to eq(7)
503
503
  expect(subject.creators.first).to eq("familyName"=>"Huang", "givenName"=>"Guimei", "name"=>"Huang, Guimei", "nameType"=>"Personal")
504
504
  expect(subject.titles).to eq([{"title"=>"Synthesis, Crystal Structure and Theoretical Calculation of a Novel Nickel(II) Complex with Dibromotyrosine and 1,10-Phenanthroline"}])
@@ -514,7 +514,7 @@ describe Bolognese::Metadata, vcr: true do
514
514
  expect(subject.valid?).to be true
515
515
  expect(subject.id).to eq("https://doi.org/10.1241/johokanri.39.979")
516
516
  expect(subject.url).to eq("http://joi.jlc.jst.go.jp/JST.JSTAGE/johokanri/39.979?from=CrossRef")
517
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
517
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
518
518
  expect(subject.creators).to eq([{"familyName"=>"KUSUMOTO", "givenName"=>"Hiroyuki", "name"=>"KUSUMOTO, Hiroyuki", "nameType"=>"Personal"}])
519
519
  expect(subject.titles).to eq([{"title"=>"Utilizing the Internet. 12 Series. Future of the Internet."}])
520
520
  expect(subject.dates).to eq([{"date"=>"1997", "dateType"=>"Issued"}, {"date"=>"2020-03-06T06:44:36Z", "dateType"=>"Updated"}])
@@ -529,7 +529,7 @@ describe Bolognese::Metadata, vcr: true do
529
529
  #expect(subject.valid?).to be true
530
530
  expect(subject.id).to eq("https://doi.org/10.2903/j.efsa.2018.5239")
531
531
  expect(subject.url).to eq("http://doi.wiley.com/10.2903/j.efsa.2018.5239")
532
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
532
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
533
533
  expect(subject.creators.length).to eq(28)
534
534
  expect(subject.creators.first).to eq("familyName"=>"Younes", "givenName"=>"Maged", "name"=>"Younes, Maged", "nameType"=>"Personal")
535
535
  expect(subject.titles).to eq([{"title"=>"Scientific opinion on the safety of green tea catechins"}])
@@ -545,7 +545,7 @@ describe Bolognese::Metadata, vcr: true do
545
545
  expect(subject.valid?).to be true
546
546
  expect(subject.id).to eq("https://doi.org/10.4000/dms.865")
547
547
  expect(subject.url).to eq("http://journals.openedition.org/dms/865")
548
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
548
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
549
549
  expect(subject.creators).to eq([{"familyName"=>"Peraya", "givenName"=>"Daniel", "name"=>"Peraya, Daniel", "nameType"=>"Personal"}])
550
550
  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"}])
551
551
  expect(subject.dates).to include({"date"=>"2014-12-23", "dateType"=>"Issued"})
@@ -561,7 +561,7 @@ describe Bolognese::Metadata, vcr: true do
561
561
  expect(subject.valid?).to be true
562
562
  expect(subject.id).to eq("https://doi.org/10.1186/1471-2164-7-187")
563
563
  expect(subject.url).to eq("https://bmcgenomics.biomedcentral.com/articles/10.1186/1471-2164-7-187")
564
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
564
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
565
565
  expect(subject.creators).to eq([{"familyName"=>"Myers",
566
566
  "givenName"=>"Chad L",
567
567
  "name"=>"Myers, Chad L",
@@ -596,7 +596,7 @@ describe Bolognese::Metadata, vcr: true do
596
596
  expect(subject.valid?).to be true
597
597
  expect(subject.id).to eq("https://doi.org/10.1098/rspb.2017.0132")
598
598
  expect(subject.url).to eq("https://royalsocietypublishing.org/doi/10.1098/rspb.2017.0132")
599
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
599
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
600
600
  expect(subject.creators.size).to eq(6)
601
601
  expect(subject.creators.first).to eq("affiliation" => [{"name"=>"School of Biological Sciences, Centre for Evolutionary Biology, University of Western Australia, Crawley, WA 6009, Australia"}], "familyName" => "Dougherty","givenName" => "Liam R.","name" => "Dougherty, Liam R.","nameIdentifiers" => [{"nameIdentifier"=>"https://orcid.org/0000-0003-1406-0680", "nameIdentifierScheme"=>"ORCID", "schemeUri"=>"https://orcid.org"}],"nameType"=>"Personal")
602
602
  expect(subject.titles).to eq([{"title"=>"Sexual conflict and correlated evolution between male persistence and female resistance traits in the seed beetle <i>Callosobruchus maculatus</i>"}])
@@ -613,7 +613,7 @@ describe Bolognese::Metadata, vcr: true do
613
613
  expect(subject.valid?).to be true
614
614
  expect(subject.id).to eq("https://doi.org/10.1111/j.1865-1682.2010.01171.x")
615
615
  expect(subject.url).to eq("http://doi.wiley.com/10.1111/j.1865-1682.2010.01171.x")
616
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
616
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
617
617
  expect(subject.creators.length).to eq(5)
618
618
  expect(subject.creators[3]).to eq("familyName"=>"Ehtisham-ul-Haq", "givenName"=>" ", "name"=>"Ehtisham-ul-Haq,  ", "nameType"=>"Personal")
619
619
  expect(subject.titles).to eq([{"title"=>"Serological Evidence of Brucella abortus Prevalence in Punjab Province, Pakistan - A Cross-Sectional Study"}])
@@ -630,7 +630,7 @@ describe Bolognese::Metadata, vcr: true do
630
630
  expect(subject.id).to eq("https://doi.org/10.1055/s-0039-1690894")
631
631
  expect(subject.identifiers).to eq([{"identifier"=>"s-0039-1690894", "identifierType"=>"sequence-number"}])
632
632
  expect(subject.url).to eq("http://www.thieme-connect.de/DOI/DOI?10.1055/s-0039-1690894")
633
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
633
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
634
634
  expect(subject.creators.length).to eq(4)
635
635
  expect(subject.creators[3]).to eq("affiliation" => [{"name"=>"Department of Chemistry, Tianjin Key Laboratory of Molecular Optoelectronic Sciences, and Tianjin Collaborative Innovation Centre of Chemical Science and Engineering, Tianjin University"}, {"name"=>"Joint School of National University of Singapore and Tianjin University, International Campus of Tianjin University"}],
636
636
  "familyName" => "Ma",
@@ -650,7 +650,7 @@ describe Bolognese::Metadata, vcr: true do
650
650
  expect(subject.valid?).to be true
651
651
  expect(subject.id).to eq("https://doi.org/10.1111/nph.14619")
652
652
  expect(subject.url).to eq("http://doi.wiley.com/10.1111/nph.14619")
653
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
653
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
654
654
  expect(subject.creators.length).to eq(3)
655
655
  expect(subject.creators.first).to eq("nameType"=>"Personal", "nameIdentifiers" => [{"nameIdentifier"=>"https://orcid.org/0000-0002-4156-3761", "nameIdentifierScheme"=>"ORCID", "schemeUri"=>"https://orcid.org"}], "name"=>"Dissmeyer, Nico", "givenName"=>"Nico", "familyName"=>"Dissmeyer", "affiliation" => [{"name"=>"Independent Junior Research Group on Protein Recognition and Degradation; Leibniz Institute of Plant Biochemistry (IPB); Weinberg 3 Halle (Saale) D-06120 Germany"}, {"name"=>"ScienceCampus Halle - Plant-based Bioeconomy; Betty-Heimann-Strasse 3 Halle (Saale) D-06120 Germany"}])
656
656
  expect(subject.titles).to eq([{"title"=>"Life and death of proteins after protease cleavage: protein degradation by the N-end rule pathway"}])
@@ -672,7 +672,7 @@ describe Bolognese::Metadata, vcr: true do
672
672
  expect(subject.valid?).to be true
673
673
  expect(subject.id).to eq("https://doi.org/10.1038/ng.3834")
674
674
  expect(subject.url).to eq("http://www.nature.com/articles/ng.3834")
675
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
675
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
676
676
  expect(subject.creators.length).to eq(14)
677
677
  expect(subject.creators.last).to eq("name"=>"GTEx Consortium", "nameType"=>"Organizational")
678
678
  expect(subject.titles).to eq([{"title"=>"The impact of structural variation on human gene expression"}])
@@ -689,7 +689,7 @@ describe Bolognese::Metadata, vcr: true do
689
689
  expect(subject.valid?).to be true
690
690
  expect(subject.id).to eq("https://doi.org/10.1177/0042098011428175")
691
691
  expect(subject.url).to eq("http://journals.sagepub.com/doi/10.1177/0042098011428175")
692
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
692
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
693
693
  expect(subject.creators.length).to eq(1)
694
694
  expect(subject.creators.first).to eq("familyName"=>"Petrovici", "givenName"=>"Norbert", "name"=>"Petrovici, Norbert", "nameType"=>"Personal")
695
695
  expect(subject.titles).to eq([{"title"=>"Workers and the City: Rethinking the Geographies of Power in Post-socialist Urbanisation"}])
@@ -706,7 +706,7 @@ describe Bolognese::Metadata, vcr: true do
706
706
  expect(subject.valid?).to be true
707
707
  expect(subject.id).to eq("https://doi.org/10.1007/978-3-642-34922-5_19")
708
708
  expect(subject.url).to eq("http://link.springer.com/10.1007/978-3-642-34922-5_19")
709
- expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"Text", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
709
+ expect(subject.types).to eq("bibtex"=>"inbook", "citeproc"=>"chapter", "resourceType"=>"BookChapter", "resourceTypeGeneral"=>"BookChapter", "ris"=>"CHAP", "schemaOrg"=>"Chapter")
710
710
  expect(subject.creators.length).to eq(3)
711
711
  expect(subject.creators.first).to eq("familyName"=>"Razib", "givenName"=>"Ali", "name"=>"Razib, Ali", "nameType"=>"Personal")
712
712
  expect(subject.titles).to eq([{"title"=>"Log-Domain Arithmetic for High-Speed Fuzzy Control on a Field-Programmable Gate Array"}])
@@ -724,7 +724,7 @@ describe Bolognese::Metadata, vcr: true do
724
724
  expect(subject.valid?).to be true
725
725
  expect(subject.id).to eq("https://doi.org/10.1103/physrevlett.120.117701")
726
726
  expect(subject.url).to eq("https://link.aps.org/doi/10.1103/PhysRevLett.120.117701")
727
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
727
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"JournalArticle", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
728
728
  expect(subject.creators.length).to eq(5)
729
729
  expect(subject.creators.first).to eq("familyName"=>"Marrazzo", "givenName"=>"Antimo", "name"=>"Marrazzo, Antimo", "nameType"=>"Personal")
730
730
  expect(subject.titles).to eq([{"title"=>"Prediction of a Large-Gap and Switchable Kane-Mele Quantum Spin Hall Insulator"}])
@@ -741,7 +741,7 @@ describe Bolognese::Metadata, vcr: true do
741
741
  subject = Bolognese::Metadata.new(input: input)
742
742
  expect(subject.valid?).to be true
743
743
  expect(subject.url).to eq("https://cp.copernicus.org/preprints/cp-2020-95/")
744
- expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"PostedContent", "resourceTypeGeneral"=>"Text", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
744
+ expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"article-journal", "resourceType"=>"PostedContent", "resourceTypeGeneral"=>"JournalArticle", "ris"=>"JOUR", "schemaOrg"=>"ScholarlyArticle")
745
745
  expect(subject.creators.count).to eq(6)
746
746
  expect(subject.creators.first).to eq("nameType" => "Personal", "familyName" => "Shao",
747
747
  "givenName" => "Jun",
@@ -762,7 +762,7 @@ describe Bolognese::Metadata, vcr: true do
762
762
  subject = Bolognese::Metadata.new(input: input)
763
763
  expect(subject.valid?).to be true
764
764
  expect(subject.url).to eq("http://oxfordhandbooks.com/view/10.1093/oxfordhb/9780198746140.001.0001/oxfordhb-9780198746140-e-5")
765
- expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Text", "ris"=>"BOOK", "schemaOrg"=>"Book")
765
+ expect(subject.types).to eq("bibtex"=>"book", "citeproc"=>"book", "resourceType"=>"Book", "resourceTypeGeneral"=>"Book", "ris"=>"BOOK", "schemaOrg"=>"Book")
766
766
  expect(subject.creators.count).to eq(1)
767
767
  expect(subject.creators.first).to eq("familyName"=>"Clayton", "givenName"=>"Barbra R.", "name"=>"Clayton, Barbra R.", "nameType"=>"Personal")
768
768
  expect(subject.contributors.count).to eq(2)
@@ -782,7 +782,7 @@ describe Bolognese::Metadata, vcr: true do
782
782
  subject = Bolognese::Metadata.new(input: input)
783
783
  expect(subject.valid?).to be true
784
784
  expect(subject.url).to eq("http://www.osti.gov/servlets/purl/972169-1QXROM/")
785
- expect(subject.types).to eq("bibtex"=>"techreport", "citeproc"=>"report", "resourceType"=>"Report", "resourceTypeGeneral"=>"Text", "ris"=>"RPRT", "schemaOrg"=>"Report")
785
+ expect(subject.types).to eq("bibtex"=>"techreport", "citeproc"=>"report", "resourceType"=>"Report", "resourceTypeGeneral"=>"Report", "ris"=>"RPRT", "schemaOrg"=>"Report")
786
786
  expect(subject.creators.count).to eq(4)
787
787
  expect(subject.creators.first).to eq("familyName"=>"Denholm", "givenName"=>"P.", "name"=>"Denholm, P.", "nameType"=>"Personal")
788
788
  expect(subject.contributors.count).to eq(0)