bolognese 1.6.7 → 1.6.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +15 -15
  3. data/bolognese.gemspec +2 -2
  4. data/lib/bolognese/metadata_utils.rb +1 -1
  5. data/lib/bolognese/readers/schema_org_reader.rb +10 -1
  6. data/lib/bolognese/utils.rb +13 -13
  7. data/lib/bolognese/version.rb +1 -1
  8. data/lib/bolognese/writers/codemeta_writer.rb +1 -1
  9. data/lib/bolognese/writers/jats_writer.rb +1 -1
  10. data/lib/bolognese/writers/schema_org_writer.rb +1 -1
  11. data/spec/datacite_utils_spec.rb +1 -1
  12. data/spec/fixtures/schema_org.json +5 -0
  13. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_id_lowercase.yml +44 -0
  14. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/interactive_resource_without_dates.yml +52 -0
  15. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/interactive_resource_without_dates.yml +52 -0
  16. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/interactive_resource_without_dates.yml +52 -0
  17. data/spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/interactive_resource_without_dates.yml +52 -0
  18. data/spec/readers/bibtex_reader_spec.rb +1 -1
  19. data/spec/readers/codemeta_reader_spec.rb +4 -4
  20. data/spec/readers/crossref_reader_spec.rb +4 -4
  21. data/spec/readers/datacite_reader_spec.rb +10 -10
  22. data/spec/readers/schema_org_reader_spec.rb +4 -0
  23. data/spec/utils_spec.rb +5 -5
  24. data/spec/writers/citation_writer_spec.rb +8 -0
  25. data/spec/writers/citeproc_writer_spec.rb +9 -0
  26. data/spec/writers/crosscite_writer_spec.rb +1 -1
  27. data/spec/writers/datacite_json_writer_spec.rb +1 -1
  28. data/spec/writers/datacite_writer_spec.rb +6 -6
  29. data/spec/writers/jats_writer_spec.rb +14 -0
  30. data/spec/writers/schema_org_writer_spec.rb +9 -0
  31. metadata +13 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d9b80d36b9f15e7887ad094ed6bd8dede0ae1bf9eec3e90c5628ed536f746e7
4
- data.tar.gz: 4d746ae8b815cf873840cc7e1c62475038ef649977c2a07c356059672ab1f43f
3
+ metadata.gz: c15833a959ce325ba131b2a0e0223cab0f5fa1146261be403d973fa4a4fa1106
4
+ data.tar.gz: d9c6f41c15f6b4ef19c1867e8c325d1321d34fbf3458e0ebd76869424fdfb166
5
5
  SHA512:
6
- metadata.gz: efb671e6feb5a1f6e9f849607b686b38505cd7f814f3bce86da05dc143150e9b52838598f4736e1676ac1147c9b028ec24e2c868ec31add03dc35ac557875727
7
- data.tar.gz: 540cbb6605586c66fe18212115b1c108961a7fc2a02f4df750e49a852bfd9ac221150eab3c805eb40109a3d70e0747c88a4406daa5aa3f87fc2431b2d87e978d
6
+ metadata.gz: 68287f6b86134328c2e87db64c51f0d9cd2438f13c196e6745a8c4ac6dc554f5b3aaa342876506ebfafd96538f303e0e62e65a4811faa39c2fbf525c44bfd18a
7
+ data.tar.gz: 76446fa76402b465a3538c258f0967a6a7dac7db96806dbf26e2e40fbe60fa5287106addc6490b0a8c48b28cfb1282f191dd8e49681459528cac92994536fff6
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- bolognese (1.6.7)
4
+ bolognese (1.6.12)
5
5
  activesupport (>= 4.2.5)
6
6
  benchmark_methods (~> 0.7)
7
7
  bibtex-ruby (>= 5.1.0)
@@ -11,13 +11,13 @@ PATH
11
11
  concurrent-ruby (~> 1.1, >= 1.1.5)
12
12
  csl-styles (~> 1.0, >= 1.0.1.8)
13
13
  edtf (~> 3.0, >= 3.0.4)
14
- faraday (= 0.17.0)
14
+ faraday (~> 0.17.3)
15
15
  gender_detector (~> 0.1.2)
16
16
  iso8601 (~> 0.9.1)
17
17
  json-ld (~> 3.1, >= 3.1.4)
18
18
  jsonlint (~> 0.3.0)
19
19
  loofah (~> 2.0, >= 2.0.3)
20
- maremma (>= 4.3, < 5)
20
+ maremma (>= 4.7, < 5)
21
21
  namae (~> 1.0)
22
22
  nokogiri (~> 1.10.4)
23
23
  oj (~> 3.10)
@@ -56,7 +56,7 @@ GEM
56
56
  namae (~> 1.0)
57
57
  csl-styles (1.0.1.10)
58
58
  csl (~> 1.0)
59
- diff-lcs (1.4.2)
59
+ diff-lcs (1.4.4)
60
60
  docile (1.3.2)
61
61
  ebnf (1.2.0)
62
62
  rdf (~> 3.1)
@@ -64,11 +64,11 @@ GEM
64
64
  edtf (3.0.5)
65
65
  activesupport (>= 3.0, < 7.0)
66
66
  excon (0.71.1)
67
- faraday (0.17.0)
67
+ faraday (0.17.3)
68
68
  multipart-post (>= 1.2, < 3)
69
69
  faraday-encoding (0.0.5)
70
70
  faraday
71
- faraday_middleware (0.13.1)
71
+ faraday_middleware (0.14.0)
72
72
  faraday (>= 0.7.4, < 1.0)
73
73
  gender_detector (0.1.2)
74
74
  unicode_utils (>= 1.3.0)
@@ -98,23 +98,23 @@ GEM
98
98
  loofah (2.6.0)
99
99
  crass (~> 1.0.2)
100
100
  nokogiri (>= 1.5.9)
101
- maremma (4.7)
101
+ maremma (4.7.1)
102
102
  activesupport (>= 4.2.5)
103
103
  addressable (>= 2.3.6)
104
104
  builder (~> 3.2, >= 3.2.2)
105
105
  excon (~> 0.71.0)
106
- faraday (= 0.17.0)
106
+ faraday (~> 0.17.3)
107
107
  faraday-encoding (~> 0.0.4)
108
- faraday_middleware (~> 0.13.1)
108
+ faraday_middleware (~> 0.14.0)
109
109
  nokogiri (~> 1.10.4)
110
110
  oj (>= 2.8.3)
111
111
  oj_mimic_json (~> 1.0, >= 1.0.1)
112
112
  mini_portile2 (2.4.0)
113
113
  minitest (5.14.1)
114
- multi_json (1.14.1)
114
+ multi_json (1.15.0)
115
115
  multipart-post (2.1.1)
116
116
  namae (1.0.1)
117
- nokogiri (1.10.9)
117
+ nokogiri (1.10.10)
118
118
  mini_portile2 (~> 2.4.0)
119
119
  oj (3.10.6)
120
120
  oj_mimic_json (1.0.1)
@@ -128,12 +128,12 @@ GEM
128
128
  rack-test (0.8.3)
129
129
  rack (>= 1.0, < 3)
130
130
  rake (12.3.3)
131
- rdf (3.1.3)
131
+ rdf (3.1.4)
132
132
  hamster (~> 3.0)
133
133
  link_header (~> 0.0, >= 0.0.8)
134
134
  rdf-aggregate-repo (3.1.0)
135
135
  rdf (~> 3.1)
136
- rdf-rdfa (3.1.1)
136
+ rdf-rdfa (3.1.2)
137
137
  haml (~> 5.1)
138
138
  htmlentities (~> 4.3)
139
139
  rdf (~> 3.1, >= 3.1.2)
@@ -148,7 +148,7 @@ GEM
148
148
  rdf-turtle (3.1.1)
149
149
  ebnf (~> 1.2)
150
150
  rdf (~> 3.1, >= 3.1.2)
151
- rdf-vocab (3.1.5)
151
+ rdf-vocab (3.1.7)
152
152
  rdf (~> 3.1, >= 3.1.2)
153
153
  rdf-xsd (3.1.0)
154
154
  rdf (~> 3.1)
@@ -187,7 +187,7 @@ GEM
187
187
  addressable (>= 2.3.6)
188
188
  crack (>= 0.3.2)
189
189
  hashdiff (>= 0.4.0, < 2.0.0)
190
- zeitwerk (2.3.0)
190
+ zeitwerk (2.3.1)
191
191
 
192
192
  PLATFORMS
193
193
  ruby
@@ -16,8 +16,8 @@ Gem::Specification.new do |s|
16
16
  s.required_ruby_version = '~> 2.3'
17
17
 
18
18
  # Declare dependencies here, rather than in the Gemfile
19
- s.add_dependency 'maremma', '>= 4.3', '< 5'
20
- s.add_dependency 'faraday', "0.17.0"
19
+ s.add_dependency 'maremma', '>= 4.7', '< 5'
20
+ s.add_dependency 'faraday', '~> 0.17.3'
21
21
  s.add_dependency 'nokogiri', '~> 1.10.4'
22
22
  s.add_dependency 'loofah', '~> 2.0', '>= 2.0.3'
23
23
  s.add_dependency 'builder', '~> 3.2', '>= 3.2.2'
@@ -153,7 +153,7 @@ module Bolognese
153
153
  "language" => language,
154
154
  "author" => author,
155
155
  "contributor" => to_citeproc(contributors),
156
- "issued" => get_date(dates, "Issued") ? get_date_parts(get_date(dates, "Issued")) : nil,
156
+ "issued" => get_date(dates, "Issued") ? get_date_parts(get_date(dates, "Issued")) : get_date_parts(publication_year),
157
157
  "submitted" => Array.wrap(dates).find { |d| d["dateType"] == "Submitted" }.to_h.fetch("__content__", nil),
158
158
  "abstract" => parse_attributes(descriptions, content: "description", first: true),
159
159
  "container-title" => container_title,
@@ -128,6 +128,14 @@ module Bolognese
128
128
  dates << { "date" => meta.fetch("dateModified"), "dateType" => "Updated" } if Date.edtf(meta.fetch("dateModified", nil)).present?
129
129
  publication_year = meta.fetch("datePublished")[0..3] if meta.fetch("datePublished", nil).present?
130
130
 
131
+ if meta.fetch("inLanguage", nil).is_a?(String)
132
+ language = meta.fetch("inLanguage")
133
+ elsif meta.fetch("inLanguage", nil).is_a?(Object)
134
+ language = meta.dig("inLanguage", 'alternateName') || meta.dig("inLanguage", 'name')
135
+ else
136
+ language = nil
137
+ end
138
+
131
139
  state = meta.present? || read_options.present? ? "findable" : "not_found"
132
140
  geo_locations = Array.wrap(meta.fetch("spatialCoverage", nil)).map do |gl|
133
141
  if gl.dig("geo", "box")
@@ -136,7 +144,7 @@ module Bolognese
136
144
  "westBoundLongitude" => w,
137
145
  "eastBoundLongitude" => e,
138
146
  "southBoundLatitude" => s,
139
- "northBoundLatitude" => n
147
+ "northBoundLatitude" => n,
140
148
  }.compact.presence
141
149
  else
142
150
  geo_location_box = nil
@@ -179,6 +187,7 @@ module Bolognese
179
187
  "rights_list" => rights_list,
180
188
  "version_info" => meta.fetch("version", nil).to_s.presence,
181
189
  "subjects" => subjects,
190
+ "language" => language,
182
191
  "state" => state,
183
192
  "schema_version" => meta.fetch("schemaVersion", nil).to_s.presence,
184
193
  "funding_references" => funding_references,
@@ -1105,7 +1105,7 @@ module Bolognese
1105
1105
  {
1106
1106
  "rights" => license["name"],
1107
1107
  "rightsUri" => license["seeAlso"].first,
1108
- "rightsIdentifier" => license["licenseId"],
1108
+ "rightsIdentifier" => license["licenseId"].downcase,
1109
1109
  "rightsIdentifierScheme" => "SPDX",
1110
1110
  "schemeUri" => "https://spdx.org/licenses/" }.compact
1111
1111
  else
@@ -1115,21 +1115,21 @@ module Bolognese
1115
1115
 
1116
1116
  def hsh_to_spdx(hsh)
1117
1117
  spdx = JSON.load(File.read(File.expand_path('../../../resources/spdx/licenses.json', __FILE__))).fetch("licenses")
1118
- license = spdx.find { |l| l["licenseId"] == hsh["rightsIdentifier"] || l["seeAlso"].first == normalize_cc_url(hsh["rightsURI"]) || l["name"] == hsh["rights"] || l["seeAlso"].first == normalize_cc_url(hsh["rights"]) }
1118
+ license = spdx.find { |l| l["licenseId"].casecmp?(hsh["rightsIdentifier"]) || l["seeAlso"].first == normalize_cc_url(hsh["rightsURI"]) || l["name"] == hsh["rights"] || l["seeAlso"].first == normalize_cc_url(hsh["rights"]) }
1119
1119
 
1120
1120
  if license
1121
1121
  {
1122
1122
  "rights" => license["name"],
1123
1123
  "rightsUri" => license["seeAlso"].first,
1124
- "rightsIdentifier" => license["licenseId"],
1124
+ "rightsIdentifier" => license["licenseId"].downcase,
1125
1125
  "rightsIdentifierScheme" => "SPDX",
1126
1126
  "schemeUri" => "https://spdx.org/licenses/",
1127
1127
  "lang" => hsh["lang"] }.compact
1128
1128
  else
1129
1129
  {
1130
- "rights" => hsh["__content__"],
1131
- "rightsUri" => hsh["rightsURI"],
1132
- "rightsIdentifier" => hsh["rightsIdentifier"],
1130
+ "rights" => hsh["__content__"] || hsh["rights"],
1131
+ "rightsUri" => hsh["rightsURI"] || hsh["rightsUri"],
1132
+ "rightsIdentifier" => hsh["rightsIdentifier"].present? ? hsh["rightsIdentifier"].downcase : nil,
1133
1133
  "rightsIdentifierScheme" => hsh["rightsIdentifierScheme"],
1134
1134
  "schemeUri" => hsh["schemeUri"],
1135
1135
  "lang" => hsh["lang"] }.compact
@@ -1177,11 +1177,11 @@ module Bolognese
1177
1177
  def hsh_to_fos(hsh)
1178
1178
  # first find subject in Fields of Science (OECD)
1179
1179
  fos = JSON.load(File.read(File.expand_path('../../../resources/oecd/fos-mappings.json', __FILE__))).fetch("fosFields")
1180
- subject = fos.find { |l| l["fosLabel"] == hsh["__content__"] || "FOS: " + l["fosLabel"] == hsh["__content__"] }
1180
+ subject = fos.find { |l| l["fosLabel"] == hsh["__content__"] || "FOS: " + l["fosLabel"] == hsh["__content__"] || l["fosLabel"] == hsh["subject"]}
1181
1181
 
1182
1182
  if subject
1183
1183
  return [{
1184
- "subject" => sanitize(hsh["__content__"]),
1184
+ "subject" => sanitize(hsh["__content__"] || hsh["subject"]),
1185
1185
  "subjectScheme" => hsh["subjectScheme"],
1186
1186
  "schemeUri" => hsh["schemeURI"],
1187
1187
  "valueUri" => hsh["valueURI"],
@@ -1200,19 +1200,19 @@ module Bolognese
1200
1200
 
1201
1201
  # try to extract forId
1202
1202
  if hsh["subjectScheme"] == "FOR"
1203
- for_id = hsh["__content__"].split(" ").first
1203
+ for_id = hsh["__content__"].to_s.split(" ").first || hsh["subject"].to_s.split(" ").first
1204
1204
  for_id = for_id.rjust(6, "0")
1205
1205
 
1206
1206
  subject = for_fields.find { |l| l["forId"] == for_id } ||
1207
1207
  for_disciplines.find { |l| l["forId"] == for_id[0..3] }
1208
1208
  else
1209
- subject = for_fields.find { |l| l["forLabel"] == hsh["__content__"] } ||
1210
- for_disciplines.find { |l| l["forLabel"] == hsh["__content__"] }
1209
+ subject = for_fields.find { |l| l["forLabel"] == hsh["__content__"] || l["forLabel"] == hsh["subject"] } ||
1210
+ for_disciplines.find { |l| l["forLabel"] == hsh["__content__"] || l["forLabel"] == hsh["subject"] }
1211
1211
  end
1212
1212
 
1213
1213
  if subject
1214
1214
  [{
1215
- "subject" => sanitize(hsh["__content__"]),
1215
+ "subject" => sanitize(hsh["__content__"] || hsh["subject"]),
1216
1216
  "subjectScheme" => hsh["subjectScheme"],
1217
1217
  "schemeUri" => hsh["schemeURI"],
1218
1218
  "valueUri" => hsh["valueURI"],
@@ -1224,7 +1224,7 @@ module Bolognese
1224
1224
  }]
1225
1225
  else
1226
1226
  [{
1227
- "subject" => sanitize(hsh["__content__"]),
1227
+ "subject" => sanitize(hsh["__content__"] || hsh["subject"]),
1228
1228
  "subjectScheme" => hsh["subjectScheme"],
1229
1229
  "schemeUri" => hsh["schemeURI"],
1230
1230
  "valueUri" => hsh["valueURI"],
@@ -1,3 +1,3 @@
1
1
  module Bolognese
2
- VERSION = "1.6.7"
2
+ VERSION = "1.6.12"
3
3
  end
@@ -17,7 +17,7 @@ module Bolognese
17
17
  "description" => parse_attributes(descriptions, content: "description", first: true),
18
18
  "version" => version_info,
19
19
  "tags" => subjects.present? ? Array.wrap(subjects).map { |k| parse_attributes(k, content: "subject", first: true) } : nil,
20
- "datePublished" => get_date(dates, "Issued"),
20
+ "datePublished" => get_date(dates, "Issued") || publication_year,
21
21
  "dateModified" => get_date(dates, "Updated"),
22
22
  "publisher" => publisher,
23
23
  "license" => Array.wrap(rights_list).map { |l| l["rightsUri"] }.compact.unwrap,
@@ -121,7 +121,7 @@ module Bolognese
121
121
  end
122
122
 
123
123
  def date
124
- get_date_parts(date_published)
124
+ get_date(dates, "Issued") ? get_date_parts(get_date(dates, "Issued")) : get_date_parts(publication_year)
125
125
  end
126
126
 
127
127
  def publication_type
@@ -21,7 +21,7 @@ module Bolognese
21
21
  "contentSize" => Array.wrap(sizes).unwrap,
22
22
  "encodingFormat" => Array.wrap(formats).unwrap,
23
23
  "dateCreated" => get_date(dates, "Created"),
24
- "datePublished" => get_date(dates, "Issued"),
24
+ "datePublished" => get_date(dates, "Issued") || publication_year,
25
25
  "dateModified" => get_date(dates, "Updated"),
26
26
  "pageStart" => container.to_h["firstPage"],
27
27
  "pageEnd" => container.to_h["lastPage"],
@@ -160,7 +160,7 @@ describe Bolognese::Metadata, vcr: true do
160
160
  xml = Nokogiri::XML::Builder.new(:encoding => 'UTF-8') { |xml| subject.insert_rights_list(xml) }.to_xml
161
161
  response = Maremma.from_xml(xml)
162
162
  expect(response.dig("rightsList", "rights")).to eq("__content__" => "Creative Commons Zero v1.0 Universal",
163
- "rightsIdentifier" => "CC0-1.0",
163
+ "rightsIdentifier" => "cc0-1.0",
164
164
  "rightsIdentifierScheme" => "SPDX",
165
165
  "rightsURI" => "https://creativecommons.org/publicdomain/zero/1.0/legalcode",
166
166
  "schemeURI" => "https://spdx.org/licenses/")
@@ -24,6 +24,11 @@
24
24
  "description": "Eating your own dog food is a slang term to describe that an organization should itself use the products and services it provides. For DataCite this means that we should use DOIs with appropriate metadata and strategies for long-term preservation for...",
25
25
  "license": "https://creativecommons.org/licenses/by/4.0/",
26
26
  "image": "https://blog.datacite.org/images/2016/12/230785.jpg",
27
+ "inLanguage": {
28
+ "@type": "Language",
29
+ "alternateName": "en",
30
+ "name": "English"
31
+ },
27
32
  "encoding": {
28
33
  "@type": "MediaObject",
29
34
  "@id": "https://blog.datacite.org/eating-your-own-dog-food/eating-your-own-dog-food.xml",
@@ -0,0 +1,44 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.crossref.org/works/10.1101/097196/transform/application/vnd.crossref.unixsd+xml
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.7; mailto:info@datacite.org)
12
+ Accept:
13
+ - text/xml
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Link:
20
+ - !binary |-
21
+ PGh0dHA6Ly9keC5kb2kub3JnLzEwLjExMDEvMDk3MTk2PjsgcmVsPSJjYW5vbmljYWwiLCA8aHR0cHM6Ly9zeW5kaWNhdGlvbi5oaWdod2lyZS5vcmcvY29udGVudC9kb2kvMTAuMTEwMS8wOTcxOTY+OyB2ZXJzaW9uPSJ2b3IiOyByZWw9Iml0ZW0iLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTQxOS0yNDA1PjsgdGl0bGU9Ik1hcnRpbiBGZW5uZXIiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy0xMzA0LTE5Mzk+OyB0aXRsZT0iTWVyY8OoIENyb3NhcyI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTUyMTItNzA1Mj47IHRpdGxlPSJKZWZmcmV5IEdyZXRoZSI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTkzNzctMDc5Nz47IHRpdGxlPSJEYXZpZCBLZW5uZWR5IjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODQ3OS0wMjYyPjsgdGl0bGU9Ikhlbm5pbmcgSGVybWpha29iIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtOTg1My01NjY4PjsgdGl0bGU9IlBoaWxpcHBlIFJvY2NhLVNlcnJhIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMjE4OC0yNTcwPjsgdGl0bGU9Ikd1c3Rhdm8gRHVyYW5kIjsgcmVsPSJhdXRob3IiLCA8aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMTczMS01MzQ2PjsgdGl0bGU9IlJvYmluIEJlcmpvbiI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAxLTgyNDktNzM4OD47IHRpdGxlPSJTZWJhc3RpYW4gS2FyY2hlciI7IHJlbD0iYXV0aG9yIiwgPGh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTg0MDYtMzg3MT47IHRpdGxlPSJNYXJ5YW5uIE1hcnRvbmUiOyByZWw9ImF1dGhvciIsIDxodHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMy00MDYwLTczNjA+OyB0aXRsZT0iVGltb3RoeSBDbGFyayI7IHJlbD0iYXV0aG9yIg==
22
+ Access-Control-Allow-Origin:
23
+ - "*"
24
+ Access-Control-Allow-Headers:
25
+ - X-Requested-With
26
+ Content-Length:
27
+ - '16202'
28
+ Server:
29
+ - http-kit
30
+ Date:
31
+ - Wed, 01 Jul 2020 02:59:51 GMT
32
+ X-Rate-Limit-Limit:
33
+ - '50'
34
+ X-Rate-Limit-Interval:
35
+ - 1s
36
+ Connection:
37
+ - close
38
+ body:
39
+ encoding: ASCII-8BIT
40
+ string: !binary |-
41
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGNyb3NzcmVmX3Jlc3VsdCB4bWxucz0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIiB2ZXJzaW9uPSIzLjAiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhzaTpzY2hlbWFMb2NhdGlvbj0iaHR0cDovL3d3dy5jcm9zc3JlZi5vcmcvcXJzY2hlbWEvMy4wIGh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3NjaGVtYXMvY3Jvc3NyZWZfcXVlcnlfb3V0cHV0My4wLnhzZCI+DQogIDxxdWVyeV9yZXN1bHQ+DQogICAgPGhlYWQ+DQogICAgICA8ZG9pX2JhdGNoX2lkPm5vbmU8L2RvaV9iYXRjaF9pZD4NCiAgICA8L2hlYWQ+DQogICAgPGJvZHk+DQogICAgICA8cXVlcnkgc3RhdHVzPSJyZXNvbHZlZCI+DQogICAgICAgIDxkb2kgdHlwZT0icG9zdGVkX2NvbnRlbnQiPjEwLjExMDEvMDk3MTk2PC9kb2k+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwdWJsaXNoZXItbmFtZSIgdHlwZT0ic3RyaW5nIj5Db2xkIFNwcmluZyBIYXJib3IgTGFib3JhdG9yeTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJwcmVmaXgtbmFtZSIgdHlwZT0ic3RyaW5nIj5Db2xkIFNwcmluZyBIYXJib3IgTGFib3JhdG9yeTwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJtZW1iZXItaWQiIHR5cGU9Im51bWJlciI+MjQ2PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImNpdGF0aW9uLWlkIiB0eXBlPSJudW1iZXIiPjg3MTA4NDg0PC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9ImJvb2staWQiIHR5cGU9Im51bWJlciI+MjIyMTgxNDwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJkZXBvc2l0LXRpbWVzdGFtcCIgdHlwZT0ibnVtYmVyIj4yMDE5MDcxNjEzMzgxMjg0MDAwPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Im93bmVyLXByZWZpeCIgdHlwZT0ic3RyaW5nIj4xMC4xMTAxPC9jcm0taXRlbT4NCiAgICAgICAgPGNybS1pdGVtIG5hbWU9Imxhc3QtdXBkYXRlIiB0eXBlPSJkYXRlIj4yMDIwLTAxLTE4VDAyOjUzOjU3WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjcmVhdGVkIiB0eXBlPSJkYXRlIj4yMDE2LTEyLTI5VDA2OjEwOjE1WjwvY3JtLWl0ZW0+DQogICAgICAgIDxjcm0taXRlbSBuYW1lPSJjaXRlZGJ5LWNvdW50IiB0eXBlPSJudW1iZXIiPjEyPC9jcm0taXRlbT4NCiAgICAgICAgPGRvaV9yZWNvcmQ+DQogICAgICAgICAgPGNyb3NzcmVmIHhtbG5zPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vd3d3LmNyb3NzcmVmLm9yZy94c2NoZW1hLzEuMSBodHRwOi8vZG9pLmNyb3NzcmVmLm9yZy9zY2hlbWFzL3VuaXhyZWYxLjEueHNkIj4NCiAgICAgICAgICAgIDxwb3N0ZWRfY29udGVudCB0eXBlPSJwcmVwcmludCIgbGFuZ3VhZ2U9ImVuIiBtZXRhZGF0YV9kaXN0cmlidXRpb25fb3B0cz0iYW55Ij4NCiAgICAgICAgICAgICAgPGdyb3VwX3RpdGxlPlNjaWVudGlmaWMgQ29tbXVuaWNhdGlvbiBhbmQgRWR1Y2F0aW9uPC9ncm91cF90aXRsZT4NCiAgICAgICAgICAgICAgPGNvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iZmlyc3QiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+TWFydGluPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+RmVubmVyPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPE9SQ0lEPmh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAzLTE0MTktMjQwNTwvT1JDSUQ+DQogICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iYWRkaXRpb25hbCI+DQogICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5NZXJjw6g8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5Dcm9zYXM8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtMTMwNC0xOTM5PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkplZmZyZXk8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5HcmV0aGU8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtNTIxMi03MDUyPC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPkRhdmlkPC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+S2VubmVkeTwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi05Mzc3LTA3OTc8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+SGVubmluZzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkhlcm1qYWtvYjwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS04NDc5LTAyNjI8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+UGhpbGlwcGU8L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5Sb2NjYS1TZXJyYTwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMS05ODUzLTU2Njg8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+R3VzdGF2bzwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkR1cmFuZDwvc3VybmFtZT4NCiAgICAgICAgICAgICAgICAgIDxPUkNJRD5odHRwOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0yMTg4LTI1NzA8L09SQ0lEPg0KICAgICAgICAgICAgICAgIDwvcGVyc29uX25hbWU+DQogICAgICAgICAgICAgICAgPHBlcnNvbl9uYW1lIGNvbnRyaWJ1dG9yX3JvbGU9ImF1dGhvciIgc2VxdWVuY2U9ImFkZGl0aW9uYWwiPg0KICAgICAgICAgICAgICAgICAgPGdpdmVuX25hbWU+Um9iaW48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5CZXJqb248L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDItMTczMS01MzQ2PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPlNlYmFzdGlhbjwvZ2l2ZW5fbmFtZT4NCiAgICAgICAgICAgICAgICAgIDxzdXJuYW1lPkthcmNoZXI8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDEtODI0OS03Mzg4PC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICAgIDxwZXJzb25fbmFtZSBjb250cmlidXRvcl9yb2xlPSJhdXRob3IiIHNlcXVlbmNlPSJhZGRpdGlvbmFsIj4NCiAgICAgICAgICAgICAgICAgIDxnaXZlbl9uYW1lPk1hcnlhbm48L2dpdmVuX25hbWU+DQogICAgICAgICAgICAgICAgICA8c3VybmFtZT5NYXJ0b25lPC9zdXJuYW1lPg0KICAgICAgICAgICAgICAgICAgPE9SQ0lEPmh0dHA6Ly9vcmNpZC5vcmcvMDAwMC0wMDAyLTg0MDYtMzg3MTwvT1JDSUQ+DQogICAgICAgICAgICAgICAgPC9wZXJzb25fbmFtZT4NCiAgICAgICAgICAgICAgICA8cGVyc29uX25hbWUgY29udHJpYnV0b3Jfcm9sZT0iYXV0aG9yIiBzZXF1ZW5jZT0iYWRkaXRpb25hbCI+DQogICAgICAgICAgICAgICAgICA8Z2l2ZW5fbmFtZT5UaW1vdGh5PC9naXZlbl9uYW1lPg0KICAgICAgICAgICAgICAgICAgPHN1cm5hbWU+Q2xhcms8L3N1cm5hbWU+DQogICAgICAgICAgICAgICAgICA8T1JDSUQ+aHR0cDovL29yY2lkLm9yZy8wMDAwLTAwMDMtNDA2MC03MzYwPC9PUkNJRD4NCiAgICAgICAgICAgICAgICA8L3BlcnNvbl9uYW1lPg0KICAgICAgICAgICAgICA8L2NvbnRyaWJ1dG9ycz4NCiAgICAgICAgICAgICAgPHRpdGxlcz4NCiAgICAgICAgICAgICAgICA8dGl0bGU+QSBEYXRhIENpdGF0aW9uIFJvYWRtYXAgZm9yIFNjaG9sYXJseSBEYXRhIFJlcG9zaXRvcmllczwvdGl0bGU+DQogICAgICAgICAgICAgIDwvdGl0bGVzPg0KICAgICAgICAgICAgICA8cG9zdGVkX2RhdGU+DQogICAgICAgICAgICAgICAgPG1vbnRoPjEyPC9tb250aD4NCiAgICAgICAgICAgICAgICA8ZGF5PjI4PC9kYXk+DQogICAgICAgICAgICAgICAgPHllYXI+MjAxNjwveWVhcj4NCiAgICAgICAgICAgICAgPC9wb3N0ZWRfZGF0ZT4NCiAgICAgICAgICAgICAgPGFjY2VwdGFuY2VfZGF0ZT4NCiAgICAgICAgICAgICAgICA8bW9udGg+MTA8L21vbnRoPg0KICAgICAgICAgICAgICAgIDxkYXk+MDk8L2RheT4NCiAgICAgICAgICAgICAgICA8eWVhcj4yMDE3PC95ZWFyPg0KICAgICAgICAgICAgICA8L2FjY2VwdGFuY2VfZGF0ZT4NCiAgICAgICAgICAgICAgPGluc3RpdHV0aW9uPg0KICAgICAgICAgICAgICAgIDxpbnN0aXR1dGlvbl9uYW1lPmJpb1J4aXY8L2luc3RpdHV0aW9uX25hbWU+DQogICAgICAgICAgICAgIDwvaW5zdGl0dXRpb24+DQogICAgICAgICAgICAgIDxpdGVtX251bWJlciBpdGVtX251bWJlcl90eXBlPSJwaXNhIj5iaW9yeGl2OzA5NzE5NnYyPC9pdGVtX251bWJlcj4NCiAgICAgICAgICAgICAgPGphdHM6YWJzdHJhY3QgeG1sbnM6amF0cz0iaHR0cDovL3d3dy5uY2JpLm5sbS5uaWguZ292L0pBVFMxIj4NCiAgICAgICAgICAgICAgICA8amF0czp0aXRsZT5BYnN0cmFjdDwvamF0czp0aXRsZT4NCiAgICAgICAgICAgICAgICA8amF0czpwPg0KICAgICAgICAgICAgICAgICAgVGhpcyBhcnRpY2xlIHByZXNlbnRzIGEgcHJhY3RpY2FsIHJvYWRtYXAgZm9yIHNjaG9sYXJseSBkYXRhIHJlcG9zaXRvcmllcyB0byBpbXBsZW1lbnQgZGF0YSBjaXRhdGlvbiBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIEpvaW50IERlY2xhcmF0aW9uIG9mIERhdGEgQ2l0YXRpb24gUHJpbmNpcGxlcywgYSBzeW5vcHNpcyBhbmQgaGFybW9uaXphdGlvbiBvZiB0aGUgcmVjb21tZW5kYXRpb25zIG9mIG1ham9yIHNjaWVuY2UgcG9saWN5IGJvZGllcy4gVGhlIHJvYWRtYXAgd2FzIGRldmVsb3BlZCBieSB0aGUgUmVwb3NpdG9yaWVzIEV4cGVydCBHcm91cCwgYXMgcGFydCBvZiB0aGUgRGF0YSBDaXRhdGlvbiBJbXBsZW1lbnRhdGlvbiBQaWxvdCAoRENJUCkgcHJvamVjdCwgYW4gaW5pdGlhdGl2ZSBvZiBGT1JDRTExLm9yZyBhbmQgdGhlIE5JSCBCaW9DQURESUUgKA0KICAgICAgICAgICAgICAgICAgPGphdHM6ZXh0LWxpbmsgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIGV4dC1saW5rLXR5cGU9InVyaSIgeGxpbms6aHJlZj0iaHR0cHM6Ly9iaW9jYWRkaWUub3JnIj5odHRwczovL2Jpb2NhZGRpZS5vcmc8L2phdHM6ZXh0LWxpbms+DQogICAgICAgICAgICAgICAgICApIHByb2dyYW0uIFRoZSByb2FkbWFwIG1ha2VzIDExIHNwZWNpZmljIHJlY29tbWVuZGF0aW9ucywgZ3JvdXBlZCBpbnRvIHRocmVlIHBoYXNlcyBvZiBpbXBsZW1lbnRhdGlvbjogYSkgcmVxdWlyZWQgc3RlcHMgbmVlZGVkIHRvIHN1cHBvcnQgdGhlIEpvaW50IERlY2xhcmF0aW9uIG9mIERhdGEgQ2l0YXRpb24gUHJpbmNpcGxlcywgYikgcmVjb21tZW5kZWQgc3RlcHMgdGhhdCBmYWNpbGl0YXRlIGFydGljbGUvZGF0YSBwdWJsaWNhdGlvbiB3b3JrZmxvd3MsIGFuZCBjKSBvcHRpb25hbCBzdGVwcyB0aGF0IGZ1cnRoZXIgaW1wcm92ZSBkYXRhIGNpdGF0aW9uIHN1cHBvcnQgcHJvdmlkZWQgYnkgZGF0YSByZXBvc2l0b3JpZXMuDQogICAgICAgICAgICAgICAgPC9qYXRzOnA+DQogICAgICAgICAgICAgIDwvamF0czphYnN0cmFjdD4NCiAgICAgICAgICAgICAgPHByb2dyYW0geG1sbnM9Imh0dHA6Ly93d3cuY3Jvc3NyZWYub3JnL3JlbGF0aW9ucy54c2QiPg0KICAgICAgICAgICAgICAgIDxyZWxhdGVkX2l0ZW0+DQogICAgICAgICAgICAgICAgICA8aW50cmFfd29ya19yZWxhdGlvbiByZWxhdGlvbnNoaXAtdHlwZT0iaXNQcmVwcmludE9mIiBpZGVudGlmaWVyLXR5cGU9ImRvaSI+MTAuMTAzOC9zNDE1OTctMDE5LTAwMzEtODwvaW50cmFfd29ya19yZWxhdGlvbj4NCiAgICAgICAgICAgICAgICA8L3JlbGF0ZWRfaXRlbT4NCiAgICAgICAgICAgICAgPC9wcm9ncmFtPg0KICAgICAgICAgICAgICA8ZG9pX2RhdGE+DQogICAgICAgICAgICAgICAgPGRvaT4xMC4xMTAxLzA5NzE5NjwvZG9pPg0KICAgICAgICAgICAgICAgIDx0aW1lc3RhbXA+MjAxOTA3MTYxMzM4MTI4NDAwMDwvdGltZXN0YW1wPg0KICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwOi8vYmlvcnhpdi5vcmcvbG9va3VwL2RvaS8xMC4xMTAxLzA5NzE5NjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgPGNvbGxlY3Rpb24gcHJvcGVydHk9ImNyYXdsZXItYmFzZWQiPg0KICAgICAgICAgICAgICAgICAgPGl0ZW0gY3Jhd2xlcj0iaVBhcmFkaWdtcyI+DQogICAgICAgICAgICAgICAgICAgIDxyZXNvdXJjZT5odHRwczovL3N5bmRpY2F0aW9uLmhpZ2h3aXJlLm9yZy9jb250ZW50L2RvaS8xMC4xMTAxLzA5NzE5NjwvcmVzb3VyY2U+DQogICAgICAgICAgICAgICAgICA8L2l0ZW0+DQogICAgICAgICAgICAgICAgPC9jb2xsZWN0aW9uPg0KICAgICAgICAgICAgICA8L2RvaV9kYXRhPg0KICAgICAgICAgICAgICA8Y2l0YXRpb25fbGlzdD4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjEiPg0KICAgICAgICAgICAgICAgICAgPGpvdXJuYWxfdGl0bGU+QnVsbGV0aW4gb2YgdGhlIEFtZXJpY2FuIFxsZG90czwvam91cm5hbF90aXRsZT4NCiAgICAgICAgICAgICAgICAgIDx2b2x1bWU+NDE8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgIDxpc3N1ZT4zPC9pc3N1ZT4NCiAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPjQzPC9maXJzdF9wYWdlPg0KICAgICAgICAgICAgICAgICAgPGNZZWFyPjIwMTU8L2NZZWFyPg0KICAgICAgICAgICAgICAgICAgPGFydGljbGVfdGl0bGU+QW4gaW50cm9kdWN0aW9uIHRvIHRoZSBqb2ludCBwcmluY2lwbGVzIGZvciBkYXRhIGNpdGF0aW9uPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yIj4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+QWx0bWFuLCBNLiAsICZhbXA7IENyb3NhcywgTS4gKDIwMTMpLiBUaGUgRXZvbHV0aW9uIG9mIERhdGEgQ2l0YXRpb246IEZyb20gUHJpbmNpcGxlcyB0byBJbXBsZW1lbnRhdGlvbi4gSUFTU0lTVCBRdWFydGVybHkuIFJldHJpZXZlZCBmcm9tIGh0dHA6Ly9zY2hvbGFyLmhhcnZhcmQuZWR1L21lcmNlY3Jvc2FzL3B1YmxpY2F0aW9ucy9ldm9sdXRpb24tZGF0YS1jaXRhdGlvbi1wcmluY2lwbGVzLWltcGxlbWVudGF0aW9uPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjMiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5CaW9TY2hlbWFzLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAyMiwgMjAxNiwgZnJvbSBodHRwOi8vYmlvc2NoZW1hcy5vcmcvPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjQiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjI0ODEvZHNqLk9TT00xMy0wNDM8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+Q09EQVRBLUlDU1RJIFRhc2sgR3JvdXAgb24gRGF0YSBDaXRhdGlvbiBTdGFuZGFyZHMgYW5kIFByYWN0aWNlLiAoMjAxMykuIE91dCBvZiBDaXRlLCBPdXQgb2YgTWluZDogVGhlIEN1cnJlbnQgU3RhdGUgb2YgUHJhY3RpY2UsIFBvbGljeSwgYW5kIFRlY2hub2xvZ3kgZm9yIHRoZSBDaXRhdGlvbiBvZiBEYXRhLiBEYXRhIFNjaWVuY2UgSm91cm5hbCwgMTIoMCkuIGh0dHBzOi8vZG9pLm9yZy8xMC4yNDgxL2Rzai5PU09NMTMtMDQzPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjUiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5EYXRhIENpdGF0aW9uIFN5bnRoZXNpcyBHcm91cC4gKDIwMTQpLiBEYXRhIENpdGF0aW9uIFN5bnRoZXNpcyBHcm91cC4gKDIwMTQpLiBKb2ludCBEZWNsYXJhdGlvbiBvZiBEYXRhIENpdGF0aW9uIFByaW5jaXBsZXMuIEZvcmNlMTEuIGh0dHBzOi8vZG9pLm9yZy8xMC4yNTQ5MC9hOTdmLWVneWs8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuNiI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGEgQ2l0YXRpb25zOiBBIFByaW1lci4gKDIwMTYpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cDovL2ZvcmNlMTEuZ2l0aHViLmlvL2RhdGEtY2l0YXRpb24tcHJpbWVyLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi43Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+RGF0YUNpdGUgTWV0YWRhdGEgV29ya2luZy4gKDIwMTYpLiBEYXRhQ2l0ZSBNZXRhZGF0YSBTY2hlbWEgZm9yIHRoZSBQdWJsaWNhdGlvbiBhbmQgQ2l0YXRpb24gb2YgUmVzZWFyY2ggRGF0YSB2NC4wLiBEYXRhQ2l0ZS4gUmV0cmlldmVkIGZyb20gaHR0cDovL3NlYXJjaC5kYXRhY2l0ZS5vcmcvd29ya3MvMTAuNTQzOC8wMDEzPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjgiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5EYXRhQ2l0ZSBTZWFyY2guICgyMDE2KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHBzOi8vc2VhcmNoLmRhdGFjaXRlLm9yZy88L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuOSI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGFNZWQgfCBiaW9DQURESUUgRERJLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAyMiwgMjAxNiwgZnJvbSBodHRwczovL2RhdGFtZWQub3JnLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMCI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkRhdGFzZXQgLSBzY2hlbWEub3JnLiAoMjAxNikuIFJldHJpZXZlZCBEZWNlbWJlciAxMiwgMjAxNiwgZnJvbSBodHRwczovL3NjaGVtYS5vcmcvRGF0YXNldDwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMSI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkR1YmxpbiBDb3JlIE1ldGFkYXRhIEVsZW1lbnQgU2V0LCBWZXJzaW9uIDEuMS4gKDIwMTIpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cDovL2R1YmxpbmNvcmUub3JnL2RvY3VtZW50cy8yMDEyLzA2LzE0L2RjZXMvPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjEyIj4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+RUxJWElSIERhdGEgZm9yIGxpZmUuICgyMDE2KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHBzOi8vd3d3LmVsaXhpci1ldXJvcGUub3JnLzwvdW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4xMyI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPkhhbW1vbmQsIFQuICwgSGFubmF5LCBULiAsICZhbXA7IEx1bmQsIEIuICgyMDA0KS4gUkRGIFNpdGUgU3VtbWFyeSAxLjAgTW9kdWxlczogUFJJU00uPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE0Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+UHVibGlzaGluZyBSZXF1aXJlbWVudHMgZm9yIEluZHVzdHJ5IFN0YW5kYXJkIE1ldGFkYXRhIChQUklTTSkuIFJldHJpZXZlZCBmcm9tIGh0dHA6Ly9wdXJsLm9yZy9yc3MvMS4wL21vZHVsZXMvcHJpc20vPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE1Ij4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC4zMzg5L2ZuaW5mLjIwMTYuMDAwMzQ8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+SG9ub3IsIEwuIEIuICwgSGFzZWxncm92ZSwgQy4gLCBGcmF6aWVyLCBKLiBBLiAsICZhbXA7IEtlbm5lZHksIEQuIE4uICgyMDE2KS4gRGF0YSBDaXRhdGlvbiBpbiBOZXVyb2ltYWdpbmc6IFByb3Bvc2VkIEJlc3QgUHJhY3RpY2VzIGZvciBEYXRhIElkZW50aWZpY2F0aW9uIGFuZCBBdHRyaWJ1dGlvbi4gRnJvbnRpZXJzIGluIE5ldXJvaW5mb3JtYXRpY3MsIDEwLiBodHRwczovL2RvaS5vcmcvMTAuMzM4OS9mbmluZi4yMDE2LjAwMDM0PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjE2Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+S2luZywgR2FyeSAsICZhbXA7IEFsdG1hbiwgTWljYWggLiAoMjAwNykuIEEgUHJvcG9zZWQgU3RhbmRhcmQgZm9yIHRoZSBTY2hvbGFybHkgQ2l0YXRpb24gb2YgUXVhbnRpdGF0aXZlIERhdGEuIGh0dHBzOi8vZG9pLm9yZy8xMC4xMDQ1L21hcmNoMjAwNy1hbHRtYW48L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTciPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xNTI1Mi9tc2IuMjAxNTY2NTg8L2RvaT4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTgiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5QcmVmaXggQ29tbW9ucy4gKDIwMTYpLiBSZXRyaWV2ZWQgRGVjZW1iZXIgMjIsIDIwMTYsIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ByZWZpeGNvbW1vbnMvcHJlZml4ZXM8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMTkiPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5SRkMgMzk4NiAtIFVuaWZvcm0gUmVzb3VyY2UgSWRlbnRpZmllciAoVVJJKTogR2VuZXJpYyBTeW50YXguICgyMDA1KS4gUmV0cmlldmVkIERlY2VtYmVyIDIyLCAyMDE2LCBmcm9tIGh0dHA6Ly93d3cucmZjLWJhc2Uub3JnL3JmYy0zOTg2Lmh0bWw8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjAiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwMzgvc2RhdGEuMjAxNy41OTwvZG9pPg0KICAgICAgICAgICAgICAgICAgPHVuc3RydWN0dXJlZF9jaXRhdGlvbj5TYW5zb25lLCBBLiAsIEdvbnphbGV6LUJlbHRyYW4sIEEuICwgJmFtcDsgUm9jY2EtU2VycmEsIFAuICgyMDE2KS4gREFUUywgdGhlIGRhdGEgdGFnIHN1aXRlIHRvIGVuYWJsZSBkaXNjb3ZlcmFiaWxpdHkgb2YgZGF0YXNldHMuIFNjaWVudGlmaWMgRGF0YSA0LCBBcnRpY2xlIG51bWJlcjogMTcwMDU5ICgyMDE3KSBodHRwczovL2RvaS5vcmcvMTAuMTAzOC9zZGF0YS4yMDE3LjU5PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjIxIj4NCiAgICAgICAgICAgICAgICAgIDxqb3VybmFsX3RpdGxlPlBlZXJKIENvbXB1dGVyIFNjaWVuY2U8L2pvdXJuYWxfdGl0bGU+DQogICAgICAgICAgICAgICAgICA8dm9sdW1lPjI8L3ZvbHVtZT4NCiAgICAgICAgICAgICAgICAgIDxmaXJzdF9wYWdlPmU4NjwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDE2PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC43NzE3L3BlZXJqLWNzLjg2PC9kb2k+DQogICAgICAgICAgICAgICAgICA8YXJ0aWNsZV90aXRsZT5Tb2Z0d2FyZSBjaXRhdGlvbiBwcmluY2lwbGVzPC9hcnRpY2xlX3RpdGxlPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yMiI+DQogICAgICAgICAgICAgICAgICA8am91cm5hbF90aXRsZT5QZWVySiBDb21wdXRlciBTY2llbmNlPC9qb3VybmFsX3RpdGxlPg0KICAgICAgICAgICAgICAgICAgPHZvbHVtZT4xPC92b2x1bWU+DQogICAgICAgICAgICAgICAgICA8Zmlyc3RfcGFnZT5lMTwvZmlyc3RfcGFnZT4NCiAgICAgICAgICAgICAgICAgIDxjWWVhcj4yMDE1PC9jWWVhcj4NCiAgICAgICAgICAgICAgICAgIDxkb2kgcHJvdmlkZXI9ImNyb3NzcmVmIj4xMC43NzE3L3BlZXJqLWNzLjE8L2RvaT4NCiAgICAgICAgICAgICAgICAgIDxhcnRpY2xlX3RpdGxlPkFjaGlldmluZyBodW1hbiBhbmQgbWFjaGluZSBhY2Nlc3NpYmlsaXR5IG9mIGNpdGVkIGRhdGEgaW4gc2Nob2xhcmx5IHB1YmxpY2F0aW9uczwvYXJ0aWNsZV90aXRsZT4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjMiPg0KICAgICAgICAgICAgICAgICAgPGRvaT4xMC4xMTI2L3NjaWVuY2UuYWFoNjE2ODwvZG9pPg0KICAgICAgICAgICAgICAgIDwvY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPGNpdGF0aW9uIGtleT0iMjAxOTA3MTYxMzM4MTI4NDAwMF8wOTcxOTZ2Mi4yNCI+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPlRyZWxvYXIsIEEuICgyMDExKS4gRGVuIEhhYWcgUGVyc2lzdGVudCBPYmplY3QgSWRlbnRpZmllciDigJMgTGlua2VkIE9wZW4gRGF0YSBNYW5pZmVzdG8uIFplbm9kby4gaHR0cHM6Ly9kb2kub3JnLzEwLjUyODEvemVub2RvLjU1NjY2PC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8Y2l0YXRpb24ga2V5PSIyMDE5MDcxNjEzMzgxMjg0MDAwXzA5NzE5NnYyLjI1Ij4NCiAgICAgICAgICAgICAgICAgIDx1bnN0cnVjdHVyZWRfY2l0YXRpb24+VWhsaXIsIFAuIEUuIChFZC4pLiAoMjAxMikuIEZvciBBdHRyaWJ1dGlvbjogRGV2ZWxvcGluZyBEYXRhIEF0dHJpYnV0aW9uIGFuZCBDaXRhdGlvbiBQcmFjdGljZXMgYW5kIFN0YW5kYXJkczogU3VtbWFyeSBvZiBhbiBJbnRlcm5hdGlvbmFsIFdvcmtzaG9wLiBSZXRyaWV2ZWQgZnJvbSBodHRwczovL3d3dy5uYXAuZWR1L2NhdGFsb2cvMTM1NjQvZm9yLWF0dHJpYnV0aW9uLWRldmVsb3BpbmctZGF0YS1hdHRyaWJ1dGlvbi1hbmQtY2l0YXRpb24tcHJhY3RpY2VzLWFuZC1zdGFuZGFyZHM8L3Vuc3RydWN0dXJlZF9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgICA8L2NpdGF0aW9uPg0KICAgICAgICAgICAgICAgIDxjaXRhdGlvbiBrZXk9IjIwMTkwNzE2MTMzODEyODQwMDBfMDk3MTk2djIuMjYiPg0KICAgICAgICAgICAgICAgICAgPGRvaSBwcm92aWRlcj0iY3Jvc3NyZWYiPjEwLjEwNDUvbm92ZW1iZXIyMDE1LXZhbmRlc29tcGVsPC9kb2k+DQogICAgICAgICAgICAgICAgICA8dW5zdHJ1Y3R1cmVkX2NpdGF0aW9uPlZhbiBkZSBTb21wZWwsIEguICwgJmFtcDsgTmVsc29uLCBNLiBMLiAoMjAxNSkuIFJlbWluaXNjaW5nIEFib3V0IDE1IFllYXJzIG9mIEludGVyb3BlcmFiaWxpdHkgRWZmb3J0cy4gRC1MaWIgTWFnYXppbmUsIDIxKDExLzEyKS4gaHR0cHM6Ly9kb2kub3JnLzEwLjEwNDUvbm92ZW1iZXIyMDE1LXZhbmRlc29tcGVsPC91bnN0cnVjdHVyZWRfY2l0YXRpb24+DQogICAgICAgICAgICAgICAgPC9jaXRhdGlvbj4NCiAgICAgICAgICAgICAgPC9jaXRhdGlvbl9saXN0Pg0KICAgICAgICAgICAgPC9wb3N0ZWRfY29udGVudD4NCiAgICAgICAgICA8L2Nyb3NzcmVmPg0KICAgICAgICA8L2RvaV9yZWNvcmQ+DQogICAgICA8L3F1ZXJ5Pg0KICAgIDwvYm9keT4NCiAgPC9xdWVyeV9yZXN1bHQ+DQo8L2Nyb3NzcmVmX3Jlc3VsdD4=
42
+ http_version:
43
+ recorded_at: Wed, 01 Jul 2020 02:59:51 GMT
44
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.datacite.org/dois/10.34747/g6yb-3412
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.7.1; mailto:info@datacite.org)
12
+ Accept:
13
+ - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 11 Jul 2020 10:15:22 GMT
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Connection:
24
+ - keep-alive
25
+ Status:
26
+ - 200 OK
27
+ X-Anonymous-Consumer:
28
+ - 'true'
29
+ Cache-Control:
30
+ - max-age=0, private, must-revalidate
31
+ Vary:
32
+ - Accept-Encoding, Origin
33
+ X-Request-Id:
34
+ - 7648137b-5c3a-409c-b2a8-ece2d2dc81c5
35
+ Etag:
36
+ - W/"428b4daf1127c41e29e332a03d2f46c2"
37
+ X-Runtime:
38
+ - '1.399490'
39
+ X-Powered-By:
40
+ - Phusion Passenger 6.0.5
41
+ Server:
42
+ - nginx/1.14.0 + Phusion Passenger 6.0.5
43
+ body:
44
+ encoding: ASCII-8BIT
45
+ string: '{"data":{"id":"10.34747/g6yb-3412","type":"dois","attributes":{"doi":"10.34747/g6yb-3412","prefix":"10.34747","suffix":"g6yb-3412","identifiers":[],"alternateIdentifiers":[],"creators":[{"name":"Clark,
46
+ Dav","nameType":"Personal","givenName":"Dav","familyName":"Clark","affiliation":[],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0002-3982-4416","nameIdentifierScheme":"ORCID"}]}],"titles":[{"lang":null,"title":"Exploring
47
+ the \"Many analysts, one dataset\" project from COS","titleType":null}],"publisher":"Gigantum,
48
+ Inc.","container":{},"publicationYear":2019,"subjects":[],"contributors":[],"dates":[],"language":null,"types":{"resourceType":"Gigantum
49
+ Project","resourceTypeGeneral":"InteractiveResource"},"relatedIdentifiers":[],"sizes":[],"formats":[],"version":null,"rightsList":[],"descriptions":[],"geoLocations":[],"fundingReferences":[],"xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291cmNlIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCBodHRwOi8vc2NoZW1hLmRhdGFjaXRlLm9yZy9tZXRhL2tlcm5lbC00L21ldGFkYXRhLnhzZCI+CiAgPGlkZW50aWZpZXIgaWRlbnRpZmllclR5cGU9IkRPSSI+MTAuMzQ3NDcvRzZZQi0zNDEyPC9pZGVudGlmaWVyPgogIDxjcmVhdG9ycz4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5DbGFyaywgRGF2PC9jcmVhdG9yTmFtZT4KICAgICAgPGdpdmVuTmFtZT5EYXY8L2dpdmVuTmFtZT4KICAgICAgPGZhbWlseU5hbWU+Q2xhcms8L2ZhbWlseU5hbWU+CiAgICAgIDxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiIHNjaGVtZVVSST0iaHR0cHM6Ly9vcmNpZC5vcmciPmh0dHBzOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0zOTgyLTQ0MTY8L25hbWVJZGVudGlmaWVyPgogICAgPC9jcmVhdG9yPgogIDwvY3JlYXRvcnM+CiAgPHRpdGxlcz4KICAgIDx0aXRsZT5FeHBsb3JpbmcgdGhlICJNYW55IGFuYWx5c3RzLCBvbmUgZGF0YXNldCIgcHJvamVjdCBmcm9tIENPUzwvdGl0bGU+CiAgPC90aXRsZXM+CiAgPHB1Ymxpc2hlcj5HaWdhbnR1bSwgSW5jLjwvcHVibGlzaGVyPgogIDxwdWJsaWNhdGlvblllYXI+MjAxOTwvcHVibGljYXRpb25ZZWFyPgogIDxyZXNvdXJjZVR5cGUgcmVzb3VyY2VUeXBlR2VuZXJhbD0iSW50ZXJhY3RpdmVSZXNvdXJjZSI+R2lnYW50dW0gUHJvamVjdDwvcmVzb3VyY2VUeXBlPgogIDxzaXplcy8+CiAgPGZvcm1hdHMvPgogIDx2ZXJzaW9uLz4KPC9yZXNvdXJjZT4K","url":"https://gigantum.com/tinydav/football-skin-tone","contentUrl":null,"metadataVersion":2,"schemaVersion":"http://datacite.org/schema/kernel-4","source":"fabricaForm","isActive":true,"state":"findable","reason":null,"viewCount":0,"viewsOverTime":[],"downloadCount":0,"downloadsOverTime":[],"referenceCount":0,"citationCount":0,"citationsOverTime":[],"partCount":0,"partOfCount":0,"versionCount":0,"versionOfCount":0,"created":"2020-03-20T19:48:26.000Z","registered":"2020-03-20T19:49:25.000Z","published":"2019","updated":"2020-07-11T09:44:36.000Z"},"relationships":{"client":{"data":{"id":"gigantum.gigantum","type":"clients"}},"media":{"data":{"id":"10.34747/g6yb-3412","type":"media"}},"references":{"data":[]},"citations":{"data":[]},"parts":{"data":[]},"partOf":{"data":[]},"versions":{"data":[]},"versionOf":{"data":[]}}}}'
50
+ http_version:
51
+ recorded_at: Sat, 11 Jul 2020 10:15:22 GMT
52
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.datacite.org/dois/10.34747/g6yb-3412
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.7.1; mailto:info@datacite.org)
12
+ Accept:
13
+ - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 11 Jul 2020 10:13:34 GMT
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Connection:
24
+ - keep-alive
25
+ Status:
26
+ - 200 OK
27
+ X-Anonymous-Consumer:
28
+ - 'true'
29
+ Cache-Control:
30
+ - max-age=0, private, must-revalidate
31
+ Vary:
32
+ - Accept-Encoding, Origin
33
+ Etag:
34
+ - W/"428b4daf1127c41e29e332a03d2f46c2"
35
+ X-Runtime:
36
+ - '0.350807'
37
+ X-Request-Id:
38
+ - bd8c497b-5d91-46c7-ad9f-d6d787d9a549
39
+ X-Powered-By:
40
+ - Phusion Passenger 6.0.5
41
+ Server:
42
+ - nginx/1.14.0 + Phusion Passenger 6.0.5
43
+ body:
44
+ encoding: ASCII-8BIT
45
+ string: '{"data":{"id":"10.34747/g6yb-3412","type":"dois","attributes":{"doi":"10.34747/g6yb-3412","prefix":"10.34747","suffix":"g6yb-3412","identifiers":[],"alternateIdentifiers":[],"creators":[{"name":"Clark,
46
+ Dav","nameType":"Personal","givenName":"Dav","familyName":"Clark","affiliation":[],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0002-3982-4416","nameIdentifierScheme":"ORCID"}]}],"titles":[{"lang":null,"title":"Exploring
47
+ the \"Many analysts, one dataset\" project from COS","titleType":null}],"publisher":"Gigantum,
48
+ Inc.","container":{},"publicationYear":2019,"subjects":[],"contributors":[],"dates":[],"language":null,"types":{"resourceType":"Gigantum
49
+ Project","resourceTypeGeneral":"InteractiveResource"},"relatedIdentifiers":[],"sizes":[],"formats":[],"version":null,"rightsList":[],"descriptions":[],"geoLocations":[],"fundingReferences":[],"xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291cmNlIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCBodHRwOi8vc2NoZW1hLmRhdGFjaXRlLm9yZy9tZXRhL2tlcm5lbC00L21ldGFkYXRhLnhzZCI+CiAgPGlkZW50aWZpZXIgaWRlbnRpZmllclR5cGU9IkRPSSI+MTAuMzQ3NDcvRzZZQi0zNDEyPC9pZGVudGlmaWVyPgogIDxjcmVhdG9ycz4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5DbGFyaywgRGF2PC9jcmVhdG9yTmFtZT4KICAgICAgPGdpdmVuTmFtZT5EYXY8L2dpdmVuTmFtZT4KICAgICAgPGZhbWlseU5hbWU+Q2xhcms8L2ZhbWlseU5hbWU+CiAgICAgIDxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiIHNjaGVtZVVSST0iaHR0cHM6Ly9vcmNpZC5vcmciPmh0dHBzOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0zOTgyLTQ0MTY8L25hbWVJZGVudGlmaWVyPgogICAgPC9jcmVhdG9yPgogIDwvY3JlYXRvcnM+CiAgPHRpdGxlcz4KICAgIDx0aXRsZT5FeHBsb3JpbmcgdGhlICJNYW55IGFuYWx5c3RzLCBvbmUgZGF0YXNldCIgcHJvamVjdCBmcm9tIENPUzwvdGl0bGU+CiAgPC90aXRsZXM+CiAgPHB1Ymxpc2hlcj5HaWdhbnR1bSwgSW5jLjwvcHVibGlzaGVyPgogIDxwdWJsaWNhdGlvblllYXI+MjAxOTwvcHVibGljYXRpb25ZZWFyPgogIDxyZXNvdXJjZVR5cGUgcmVzb3VyY2VUeXBlR2VuZXJhbD0iSW50ZXJhY3RpdmVSZXNvdXJjZSI+R2lnYW50dW0gUHJvamVjdDwvcmVzb3VyY2VUeXBlPgogIDxzaXplcy8+CiAgPGZvcm1hdHMvPgogIDx2ZXJzaW9uLz4KPC9yZXNvdXJjZT4K","url":"https://gigantum.com/tinydav/football-skin-tone","contentUrl":null,"metadataVersion":2,"schemaVersion":"http://datacite.org/schema/kernel-4","source":"fabricaForm","isActive":true,"state":"findable","reason":null,"viewCount":0,"viewsOverTime":[],"downloadCount":0,"downloadsOverTime":[],"referenceCount":0,"citationCount":0,"citationsOverTime":[],"partCount":0,"partOfCount":0,"versionCount":0,"versionOfCount":0,"created":"2020-03-20T19:48:26.000Z","registered":"2020-03-20T19:49:25.000Z","published":"2019","updated":"2020-07-11T09:44:36.000Z"},"relationships":{"client":{"data":{"id":"gigantum.gigantum","type":"clients"}},"media":{"data":{"id":"10.34747/g6yb-3412","type":"media"}},"references":{"data":[]},"citations":{"data":[]},"parts":{"data":[]},"partOf":{"data":[]},"versions":{"data":[]},"versionOf":{"data":[]}}}}'
50
+ http_version:
51
+ recorded_at: Sat, 11 Jul 2020 10:13:34 GMT
52
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.datacite.org/dois/10.34747/g6yb-3412
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.7.1; mailto:info@datacite.org)
12
+ Accept:
13
+ - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 11 Jul 2020 10:24:59 GMT
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Connection:
24
+ - keep-alive
25
+ Status:
26
+ - 200 OK
27
+ X-Anonymous-Consumer:
28
+ - 'true'
29
+ Cache-Control:
30
+ - max-age=0, private, must-revalidate
31
+ Vary:
32
+ - Accept-Encoding, Origin
33
+ Etag:
34
+ - W/"428b4daf1127c41e29e332a03d2f46c2"
35
+ X-Runtime:
36
+ - '0.825431'
37
+ X-Request-Id:
38
+ - 2068e42a-4388-41a2-b3e8-5761b8273211
39
+ X-Powered-By:
40
+ - Phusion Passenger 6.0.5
41
+ Server:
42
+ - nginx/1.14.0 + Phusion Passenger 6.0.5
43
+ body:
44
+ encoding: ASCII-8BIT
45
+ string: '{"data":{"id":"10.34747/g6yb-3412","type":"dois","attributes":{"doi":"10.34747/g6yb-3412","prefix":"10.34747","suffix":"g6yb-3412","identifiers":[],"alternateIdentifiers":[],"creators":[{"name":"Clark,
46
+ Dav","nameType":"Personal","givenName":"Dav","familyName":"Clark","affiliation":[],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0002-3982-4416","nameIdentifierScheme":"ORCID"}]}],"titles":[{"lang":null,"title":"Exploring
47
+ the \"Many analysts, one dataset\" project from COS","titleType":null}],"publisher":"Gigantum,
48
+ Inc.","container":{},"publicationYear":2019,"subjects":[],"contributors":[],"dates":[],"language":null,"types":{"resourceType":"Gigantum
49
+ Project","resourceTypeGeneral":"InteractiveResource"},"relatedIdentifiers":[],"sizes":[],"formats":[],"version":null,"rightsList":[],"descriptions":[],"geoLocations":[],"fundingReferences":[],"xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291cmNlIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCBodHRwOi8vc2NoZW1hLmRhdGFjaXRlLm9yZy9tZXRhL2tlcm5lbC00L21ldGFkYXRhLnhzZCI+CiAgPGlkZW50aWZpZXIgaWRlbnRpZmllclR5cGU9IkRPSSI+MTAuMzQ3NDcvRzZZQi0zNDEyPC9pZGVudGlmaWVyPgogIDxjcmVhdG9ycz4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5DbGFyaywgRGF2PC9jcmVhdG9yTmFtZT4KICAgICAgPGdpdmVuTmFtZT5EYXY8L2dpdmVuTmFtZT4KICAgICAgPGZhbWlseU5hbWU+Q2xhcms8L2ZhbWlseU5hbWU+CiAgICAgIDxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiIHNjaGVtZVVSST0iaHR0cHM6Ly9vcmNpZC5vcmciPmh0dHBzOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0zOTgyLTQ0MTY8L25hbWVJZGVudGlmaWVyPgogICAgPC9jcmVhdG9yPgogIDwvY3JlYXRvcnM+CiAgPHRpdGxlcz4KICAgIDx0aXRsZT5FeHBsb3JpbmcgdGhlICJNYW55IGFuYWx5c3RzLCBvbmUgZGF0YXNldCIgcHJvamVjdCBmcm9tIENPUzwvdGl0bGU+CiAgPC90aXRsZXM+CiAgPHB1Ymxpc2hlcj5HaWdhbnR1bSwgSW5jLjwvcHVibGlzaGVyPgogIDxwdWJsaWNhdGlvblllYXI+MjAxOTwvcHVibGljYXRpb25ZZWFyPgogIDxyZXNvdXJjZVR5cGUgcmVzb3VyY2VUeXBlR2VuZXJhbD0iSW50ZXJhY3RpdmVSZXNvdXJjZSI+R2lnYW50dW0gUHJvamVjdDwvcmVzb3VyY2VUeXBlPgogIDxzaXplcy8+CiAgPGZvcm1hdHMvPgogIDx2ZXJzaW9uLz4KPC9yZXNvdXJjZT4K","url":"https://gigantum.com/tinydav/football-skin-tone","contentUrl":null,"metadataVersion":2,"schemaVersion":"http://datacite.org/schema/kernel-4","source":"fabricaForm","isActive":true,"state":"findable","reason":null,"viewCount":0,"viewsOverTime":[],"downloadCount":0,"downloadsOverTime":[],"referenceCount":0,"citationCount":0,"citationsOverTime":[],"partCount":0,"partOfCount":0,"versionCount":0,"versionOfCount":0,"created":"2020-03-20T19:48:26.000Z","registered":"2020-03-20T19:49:25.000Z","published":"2019","updated":"2020-07-11T09:44:36.000Z"},"relationships":{"client":{"data":{"id":"gigantum.gigantum","type":"clients"}},"media":{"data":{"id":"10.34747/g6yb-3412","type":"media"}},"references":{"data":[]},"citations":{"data":[]},"parts":{"data":[]},"partOf":{"data":[]},"versions":{"data":[]},"versionOf":{"data":[]}}}}'
50
+ http_version:
51
+ recorded_at: Sat, 11 Jul 2020 10:24:59 GMT
52
+ recorded_with: VCR 3.0.3
@@ -0,0 +1,52 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://api.datacite.org/dois/10.34747/g6yb-3412
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Mozilla/5.0 (compatible; Maremma/4.7.1; mailto:info@datacite.org)
12
+ Accept:
13
+ - text/html,application/json,application/xml;q=0.9, text/plain;q=0.8,image/png,*/*;q=0.5
14
+ response:
15
+ status:
16
+ code: 200
17
+ message: OK
18
+ headers:
19
+ Date:
20
+ - Sat, 11 Jul 2020 10:17:43 GMT
21
+ Content-Type:
22
+ - application/json; charset=utf-8
23
+ Connection:
24
+ - keep-alive
25
+ Status:
26
+ - 200 OK
27
+ X-Anonymous-Consumer:
28
+ - 'true'
29
+ Cache-Control:
30
+ - max-age=0, private, must-revalidate
31
+ Vary:
32
+ - Accept-Encoding, Origin
33
+ Etag:
34
+ - W/"428b4daf1127c41e29e332a03d2f46c2"
35
+ X-Runtime:
36
+ - '0.764455'
37
+ X-Request-Id:
38
+ - f7078933-5bd6-4ab1-8fe8-1debdab355fb
39
+ X-Powered-By:
40
+ - Phusion Passenger 6.0.5
41
+ Server:
42
+ - nginx/1.14.0 + Phusion Passenger 6.0.5
43
+ body:
44
+ encoding: ASCII-8BIT
45
+ string: '{"data":{"id":"10.34747/g6yb-3412","type":"dois","attributes":{"doi":"10.34747/g6yb-3412","prefix":"10.34747","suffix":"g6yb-3412","identifiers":[],"alternateIdentifiers":[],"creators":[{"name":"Clark,
46
+ Dav","nameType":"Personal","givenName":"Dav","familyName":"Clark","affiliation":[],"nameIdentifiers":[{"schemeUri":"https://orcid.org","nameIdentifier":"https://orcid.org/0000-0002-3982-4416","nameIdentifierScheme":"ORCID"}]}],"titles":[{"lang":null,"title":"Exploring
47
+ the \"Many analysts, one dataset\" project from COS","titleType":null}],"publisher":"Gigantum,
48
+ Inc.","container":{},"publicationYear":2019,"subjects":[],"contributors":[],"dates":[],"language":null,"types":{"resourceType":"Gigantum
49
+ Project","resourceTypeGeneral":"InteractiveResource"},"relatedIdentifiers":[],"sizes":[],"formats":[],"version":null,"rightsList":[],"descriptions":[],"geoLocations":[],"fundingReferences":[],"xml":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291cmNlIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtNCBodHRwOi8vc2NoZW1hLmRhdGFjaXRlLm9yZy9tZXRhL2tlcm5lbC00L21ldGFkYXRhLnhzZCI+CiAgPGlkZW50aWZpZXIgaWRlbnRpZmllclR5cGU9IkRPSSI+MTAuMzQ3NDcvRzZZQi0zNDEyPC9pZGVudGlmaWVyPgogIDxjcmVhdG9ycz4KICAgIDxjcmVhdG9yPgogICAgICA8Y3JlYXRvck5hbWUgbmFtZVR5cGU9IlBlcnNvbmFsIj5DbGFyaywgRGF2PC9jcmVhdG9yTmFtZT4KICAgICAgPGdpdmVuTmFtZT5EYXY8L2dpdmVuTmFtZT4KICAgICAgPGZhbWlseU5hbWU+Q2xhcms8L2ZhbWlseU5hbWU+CiAgICAgIDxuYW1lSWRlbnRpZmllciBuYW1lSWRlbnRpZmllclNjaGVtZT0iT1JDSUQiIHNjaGVtZVVSST0iaHR0cHM6Ly9vcmNpZC5vcmciPmh0dHBzOi8vb3JjaWQub3JnLzAwMDAtMDAwMi0zOTgyLTQ0MTY8L25hbWVJZGVudGlmaWVyPgogICAgPC9jcmVhdG9yPgogIDwvY3JlYXRvcnM+CiAgPHRpdGxlcz4KICAgIDx0aXRsZT5FeHBsb3JpbmcgdGhlICJNYW55IGFuYWx5c3RzLCBvbmUgZGF0YXNldCIgcHJvamVjdCBmcm9tIENPUzwvdGl0bGU+CiAgPC90aXRsZXM+CiAgPHB1Ymxpc2hlcj5HaWdhbnR1bSwgSW5jLjwvcHVibGlzaGVyPgogIDxwdWJsaWNhdGlvblllYXI+MjAxOTwvcHVibGljYXRpb25ZZWFyPgogIDxyZXNvdXJjZVR5cGUgcmVzb3VyY2VUeXBlR2VuZXJhbD0iSW50ZXJhY3RpdmVSZXNvdXJjZSI+R2lnYW50dW0gUHJvamVjdDwvcmVzb3VyY2VUeXBlPgogIDxzaXplcy8+CiAgPGZvcm1hdHMvPgogIDx2ZXJzaW9uLz4KPC9yZXNvdXJjZT4K","url":"https://gigantum.com/tinydav/football-skin-tone","contentUrl":null,"metadataVersion":2,"schemaVersion":"http://datacite.org/schema/kernel-4","source":"fabricaForm","isActive":true,"state":"findable","reason":null,"viewCount":0,"viewsOverTime":[],"downloadCount":0,"downloadsOverTime":[],"referenceCount":0,"citationCount":0,"citationsOverTime":[],"partCount":0,"partOfCount":0,"versionCount":0,"versionOfCount":0,"created":"2020-03-20T19:48:26.000Z","registered":"2020-03-20T19:49:25.000Z","published":"2019","updated":"2020-07-11T09:44:36.000Z"},"relationships":{"client":{"data":{"id":"gigantum.gigantum","type":"clients"}},"media":{"data":{"id":"10.34747/g6yb-3412","type":"media"}},"references":{"data":[]},"citations":{"data":[]},"parts":{"data":[]},"partOf":{"data":[]},"versions":{"data":[]},"versionOf":{"data":[]}}}}'
50
+ http_version:
51
+ recorded_at: Sat, 11 Jul 2020 10:17:43 GMT
52
+ recorded_with: VCR 3.0.3
@@ -36,7 +36,7 @@ describe Bolognese::Metadata, vcr: true do
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).to eq([{"rights"=>"Creative Commons Attribution 3.0 Unported",
39
- "rightsIdentifier"=>"CC-BY-3.0",
39
+ "rightsIdentifier"=>"cc-by-3.0",
40
40
  "rightsIdentifierScheme"=>"SPDX",
41
41
  "rightsUri"=>"https://creativecommons.org/licenses/by/3.0/legalcode",
42
42
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -37,7 +37,7 @@ describe Bolognese::Metadata, vcr: true do
37
37
  expect(subject.publication_year).to eq("2017")
38
38
  expect(subject.publisher).to eq("DataCite")
39
39
  expect(subject.rights_list).to eq([{"rights"=>"MIT License",
40
- "rightsIdentifier"=>"MIT",
40
+ "rightsIdentifier"=>"mit",
41
41
  "rightsIdentifierScheme"=>"SPDX",
42
42
  "rightsUri"=>"https://opensource.org/licenses/MIT",
43
43
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -78,7 +78,7 @@ describe Bolognese::Metadata, vcr: true do
78
78
  expect(subject.publication_year).to eq("2016")
79
79
  expect(subject.publisher).to eq("https://cran.r-project.org")
80
80
  expect(subject.rights_list).to eq([{"rights"=>"Apache License 2.0",
81
- "rightsIdentifier"=>"Apache-2.0",
81
+ "rightsIdentifier"=>"apache-2.0",
82
82
  "rightsIdentifierScheme"=>"SPDX",
83
83
  "rightsUri"=>"http://www.apache.org/licenses/LICENSE-2.0",
84
84
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -107,7 +107,7 @@ describe Bolognese::Metadata, vcr: true do
107
107
  expect(subject.publication_year).to eq("2017")
108
108
  expect(subject.publisher).to eq("DataCite")
109
109
  expect(subject.rights_list).to eq([{"rights"=>"MIT License",
110
- "rightsIdentifier"=>"MIT",
110
+ "rightsIdentifier"=>"mit",
111
111
  "rightsIdentifierScheme"=>"SPDX",
112
112
  "rightsUri"=>"https://opensource.org/licenses/MIT",
113
113
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -129,7 +129,7 @@ describe Bolognese::Metadata, vcr: true do
129
129
  expect(subject.publication_year).to eq("2018")
130
130
  expect(subject.publisher).to eq("DataCite")
131
131
  expect(subject.rights_list).to eq([{"rights"=>"MIT License",
132
- "rightsIdentifier"=>"MIT",
132
+ "rightsIdentifier"=>"mit",
133
133
  "rightsIdentifierScheme"=>"SPDX",
134
134
  "rightsUri"=>"https://opensource.org/licenses/MIT",
135
135
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -24,7 +24,7 @@ describe Bolognese::Metadata, vcr: true do
24
24
  expect(subject.creators.length).to eq(5)
25
25
  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"}])
26
26
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 3.0 Unported",
27
- "rightsIdentifier"=>"CC-BY-3.0",
27
+ "rightsIdentifier"=>"cc-by-3.0",
28
28
  "rightsIdentifierScheme"=>"SPDX",
29
29
  "rightsUri"=>"https://creativecommons.org/licenses/by/3.0/legalcode",
30
30
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -61,7 +61,7 @@ describe Bolognese::Metadata, vcr: true do
61
61
  expect(subject.contributors).to eq("contributorType"=>"Editor", "familyName"=>"Janbon", "givenName"=>"Guilhem", "name"=>"Janbon, Guilhem", "nameType"=>"Personal")
62
62
  expect(subject.titles).to eq([{"title"=>"Triose Phosphate Isomerase Deficiency Is Caused by Altered Dimerization–Not Catalytic Inactivity–of the Mutant Enzymes"}])
63
63
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 4.0 International",
64
- "rightsIdentifier"=>"CC-BY-4.0",
64
+ "rightsIdentifier"=>"cc-by-4.0",
65
65
  "rightsIdentifierScheme"=>"SPDX",
66
66
  "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode",
67
67
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -86,7 +86,7 @@ describe Bolognese::Metadata, vcr: true do
86
86
  expect(subject.creators.first).to eq("familyName"=>"Fortes", "givenName"=>"Ana Margarida", "name"=>"Fortes, Ana Margarida", "nameType"=>"Personal")
87
87
  expect(subject.titles).to eq([{"title"=>"Transcriptional Modulation of Polyamine Metabolism in Fruit Species Under Abiotic and Biotic Stress"}])
88
88
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 4.0 International",
89
- "rightsIdentifier"=>"CC-BY-4.0",
89
+ "rightsIdentifier"=>"cc-by-4.0",
90
90
  "rightsIdentifierScheme"=>"SPDX",
91
91
  "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode",
92
92
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -205,7 +205,7 @@ describe Bolognese::Metadata, vcr: true do
205
205
  expect(subject.creators.length).to eq(7)
206
206
  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"}])
207
207
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 3.0 Unported",
208
- "rightsIdentifier"=>"CC-BY-3.0",
208
+ "rightsIdentifier"=>"cc-by-3.0",
209
209
  "rightsIdentifierScheme"=>"SPDX",
210
210
  "rightsUri"=>"https://creativecommons.org/licenses/by/3.0/legalcode",
211
211
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -32,7 +32,7 @@ describe Bolognese::Metadata, vcr: true do
32
32
  "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.",
33
33
  "identifierType"=>"citation"}])
34
34
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Zero v1.0 Universal",
35
- "rightsIdentifier"=>"CC0-1.0",
35
+ "rightsIdentifier"=>"cc0-1.0",
36
36
  "rightsIdentifierScheme"=>"SPDX",
37
37
  "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode",
38
38
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -125,7 +125,7 @@ describe Bolognese::Metadata, vcr: true do
125
125
  {"identifier"=>
126
126
  "https://schema.datacite.org/meta/kernel-4.2/example/datacite-example-full-v4.2.xml",
127
127
  "identifierType"=>"URL"}])
128
- expect(subject.rights_list).to eq([{"lang"=>"en-US", "rights"=>"Creative Commons Zero v1.0 Universal", "rightsIdentifier"=>"CC0-1.0", "rightsIdentifierScheme"=>"SPDX", "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode", "schemeUri"=>"https://spdx.org/licenses/"}])
128
+ expect(subject.rights_list).to eq([{"lang"=>"en-US", "rights"=>"Creative Commons Zero v1.0 Universal", "rightsIdentifier"=>"cc0-1.0", "rightsIdentifierScheme"=>"SPDX", "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode", "schemeUri"=>"https://spdx.org/licenses/"}])
129
129
  expect(subject.publication_year).to eq("2014")
130
130
  expect(subject.contributors).to eq([{"name"=>"Starr, Joan", "givenName"=>"Joan", "familyName"=>"Starr", "nameIdentifiers"=>[{"nameIdentifier"=>"https://orcid.org/0000-0002-7285-027X", "schemeUri"=>"https://orcid.org", "nameIdentifierScheme"=>"ORCID"}], "affiliation"=>
131
131
  [{"affiliationIdentifier"=>"https://ror.org/03yrm5c26",
@@ -199,7 +199,7 @@ describe Bolognese::Metadata, vcr: true do
199
199
  expect(subject.descriptions.first["description"]).to start_with("This tools are used to analyse the data produced by the Crosssover Experiment")
200
200
  expect(subject.rights_list).to eq([{"rights"=>
201
201
  "Creative Commons Attribution Non Commercial Share Alike 4.0 International",
202
- "rightsIdentifier"=>"CC-BY-NC-SA-4.0",
202
+ "rightsIdentifier"=>"cc-by-nc-sa-4.0",
203
203
  "rightsIdentifierScheme"=>"SPDX",
204
204
  "rightsUri"=>"https://creativecommons.org/licenses/by-nc-sa/4.0/legalcode",
205
205
  "schemeUri"=>"https://spdx.org/licenses/"},
@@ -229,7 +229,7 @@ describe Bolognese::Metadata, vcr: true do
229
229
  expect(subject.titles).to eq([{"title"=>"RAIN v1"}])
230
230
  expect(subject.descriptions.first["description"]).to start_with("<b>RAIN: RNA–protein Association and Interaction Networks")
231
231
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 4.0 International",
232
- "rightsIdentifier"=>"CC-BY-4.0",
232
+ "rightsIdentifier"=>"cc-by-4.0",
233
233
  "rightsIdentifierScheme"=>"SPDX",
234
234
  "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode",
235
235
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -264,7 +264,7 @@ describe Bolognese::Metadata, vcr: true do
264
264
  expect(subject.titles).to eq([{"title"=>"Drosophila melanogaster African Wings"}])
265
265
  expect(subject.descriptions.first["description"]).to start_with("These are raw wing images from <i>Drosophila melanogaster</i>")
266
266
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 4.0 International",
267
- "rightsIdentifier"=>"CC-BY-4.0",
267
+ "rightsIdentifier"=>"cc-by-4.0",
268
268
  "rightsIdentifierScheme"=>"SPDX",
269
269
  "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode",
270
270
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -704,7 +704,7 @@ describe Bolognese::Metadata, vcr: true do
704
704
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.5272/oldertestpub", "relatedIdentifierType"=>"DOI", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Text")
705
705
  expect(subject.rights_list).to eq([{"lang"=>"eng",
706
706
  "rights"=>"Creative Commons Attribution No Derivatives 2.0 Generic",
707
- "rightsIdentifier"=>"CC-BY-ND-2.0",
707
+ "rightsIdentifier"=>"cc-by-nd-2.0",
708
708
  "rightsIdentifierScheme"=>"SPDX",
709
709
  "rightsUri"=>"https://creativecommons.org/licenses/by-nd/2.0/legalcode",
710
710
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -733,7 +733,7 @@ describe Bolognese::Metadata, vcr: true do
733
733
  expect(subject.related_identifiers.length).to eq(1)
734
734
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.5272/oldertestpub", "relatedIdentifierType"=>"DOI", "relationType"=>"IsPartOf")
735
735
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution No Derivatives 2.0 Generic",
736
- "rightsIdentifier"=>"CC-BY-ND-2.0",
736
+ "rightsIdentifier"=>"cc-by-nd-2.0",
737
737
  "rightsIdentifierScheme"=>"SPDX",
738
738
  "rightsUri"=>"https://creativecommons.org/licenses/by-nd/2.0/legalcode",
739
739
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -762,7 +762,7 @@ describe Bolognese::Metadata, vcr: true do
762
762
  expect(subject.related_identifiers.length).to eq(4)
763
763
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"19478877", "relatedIdentifierType"=>"PMID", "relationType"=>"IsReferencedBy")
764
764
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Zero v1.0 Universal",
765
- "rightsIdentifier"=>"CC0-1.0",
765
+ "rightsIdentifier"=>"cc0-1.0",
766
766
  "rightsIdentifierScheme"=>"SPDX",
767
767
  "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode",
768
768
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -791,7 +791,7 @@ describe Bolognese::Metadata, vcr: true do
791
791
  expect(subject.related_identifiers.length).to eq(1)
792
792
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.5272/oldertestpub", "relatedIdentifierType"=>"DOI", "relationType"=>"IsPartOf")
793
793
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution No Derivatives 2.0 Generic",
794
- "rightsIdentifier"=>"CC-BY-ND-2.0",
794
+ "rightsIdentifier"=>"cc-by-nd-2.0",
795
795
  "rightsIdentifierScheme"=>"SPDX",
796
796
  "rightsUri"=>"https://creativecommons.org/licenses/by-nd/2.0/legalcode",
797
797
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -848,7 +848,7 @@ describe Bolognese::Metadata, vcr: true do
848
848
  expect(subject.related_identifiers.last).to eq("relatedIdentifier"=>"10.5272/oldertestpub", "relatedIdentifierType"=>"DOI", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Text")
849
849
  expect(subject.rights_list).to eq([{"lang"=>"eng",
850
850
  "rights"=>"Creative Commons Attribution No Derivatives 2.0 Generic",
851
- "rightsIdentifier"=>"CC-BY-ND-2.0",
851
+ "rightsIdentifier"=>"cc-by-nd-2.0",
852
852
  "rightsIdentifierScheme"=>"SPDX",
853
853
  "rightsUri"=>"https://creativecommons.org/licenses/by-nd/2.0/legalcode",
854
854
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -66,6 +66,8 @@ describe Bolognese::Metadata, vcr: true do
66
66
  input = "https://www.zenodo.org/record/1196821"
67
67
  subject = Bolognese::Metadata.new(input: input, from: "schema_org")
68
68
  expect(subject.valid?).to be false
69
+
70
+ expect(subject.language).to eq("eng")
69
71
  expect(subject.errors).to eq("49:0: ERROR: Element '{http://datacite.org/schema/kernel-4}publisher': [facet 'minLength'] The value has a length of '0'; this underruns the allowed minimum length of '1'.")
70
72
  expect(subject.identifiers).to eq([{"identifier"=>"https://doi.org/10.5281/zenodo.1196821", "identifierType"=>"DOI"}])
71
73
  expect(subject.doi).to eq("10.5281/zenodo.1196821")
@@ -154,6 +156,7 @@ describe Bolognese::Metadata, vcr: true do
154
156
  input = fixture_path + 'schema_org.json'
155
157
  subject = Bolognese::Metadata.new(input: input)
156
158
  expect(subject.valid?).to be true
159
+ expect(subject.language).to eq("en")
157
160
  expect(subject.identifiers).to eq([{"identifier"=>"https://doi.org/10.5438/4k3m-nyvg", "identifierType"=>"DOI"}])
158
161
  expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
159
162
  expect(subject.types).to eq("bibtex"=>"article", "citeproc"=>"post-weblog", "resourceTypeGeneral"=>"Text", "ris"=>"GEN", "schemaOrg"=>"BlogPosting")
@@ -247,6 +250,7 @@ describe Bolognese::Metadata, vcr: true do
247
250
  subject = Bolognese::Metadata.new(input: input)
248
251
 
249
252
  expect(subject.valid?).to be true
253
+ expect(subject.language).to eq("en")
250
254
  expect(subject.identifiers).to eq([{"identifier"=>"https://doi.org/10.1594/pangaea.842237", "identifierType"=>"DOI"}])
251
255
  expect(subject.types).to eq("bibtex"=>"misc", "citeproc"=>"dataset", "resourceTypeGeneral"=>"Dataset", "ris"=>"DATA", "schemaOrg"=>"Dataset")
252
256
  expect(subject.creators.length).to eq(2)
@@ -512,25 +512,25 @@ describe Bolognese::Metadata, vcr: true do
512
512
  it "name_to_spdx exists" do
513
513
  name = "Creative Commons Attribution 4.0 International"
514
514
  response = subject.name_to_spdx(name)
515
- expect(response).to eq({"rights"=>"Creative Commons Attribution 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode", "rightsIdentifier"=>"CC-BY-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/"})
515
+ expect(response).to eq({"rights"=>"Creative Commons Attribution 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode", "rightsIdentifier"=>"cc-by-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/"})
516
516
  end
517
517
 
518
518
  it "name_to_spdx id" do
519
519
  name = "CC-BY-4.0"
520
520
  response = subject.name_to_spdx(name)
521
- expect(response).to eq({"rights"=>"Creative Commons Attribution 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode", "rightsIdentifier"=>"CC-BY-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/"})
521
+ expect(response).to eq({"rights"=>"Creative Commons Attribution 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode", "rightsIdentifier"=>"cc-by-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/"})
522
522
  end
523
523
 
524
524
  it "hsh_to_spdx id" do
525
- hsh = { "rightsIdentifier" => "CC-BY-4.0" }
525
+ hsh = { "rightsIdentifier" => "cc-by-4.0" }
526
526
  response = subject.hsh_to_spdx(hsh)
527
- expect(response).to eq({"rights"=>"Creative Commons Attribution 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode", "rightsIdentifier"=>"CC-BY-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/"})
527
+ expect(response).to eq({"rights"=>"Creative Commons Attribution 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode", "rightsIdentifier"=>"cc-by-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/"})
528
528
  end
529
529
 
530
530
  it "hsh_to_spdx url" do
531
531
  hsh = { "rightsURI" => "http://creativecommons.org/licenses/by-nc/4.0/legalcode" }
532
532
  response = subject.hsh_to_spdx(hsh)
533
- expect(response).to eq("rights"=>"Creative Commons Attribution Non Commercial 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by-nc/4.0/legalcode", "rightsIdentifier"=>"CC-BY-NC-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/")
533
+ expect(response).to eq("rights"=>"Creative Commons Attribution Non Commercial 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by-nc/4.0/legalcode", "rightsIdentifier"=>"cc-by-nc-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/")
534
534
  end
535
535
 
536
536
  it "hsh_to_spdx not found" do
@@ -40,5 +40,13 @@ describe Bolognese::Metadata, vcr: true do
40
40
  expect(subject.locale).to eq("en-US")
41
41
  expect(subject.citation).to eq("Lab For Exosphere And Near Space Environment Studies. (2019). <i>lenses-lab/LYAO_RT-2018JA026426: Original Release</i> (Version 1.0.0) [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.2598836")
42
42
  end
43
+
44
+ it "interactive resource without dates" do
45
+ input = "https://doi.org/10.34747/g6yb-3412"
46
+ subject = Bolognese::Metadata.new(input: input, from: "datacite")
47
+ expect(subject.style).to eq("apa")
48
+ expect(subject.locale).to eq("en-US")
49
+ expect(subject.citation).to eq("Clark, D. (2019). <i>Exploring the \"Many analysts, one dataset\" project from COS</i>. Gigantum, Inc. https://doi.org/10.34747/g6yb-3412")
50
+ end
43
51
  end
44
52
  end
@@ -264,5 +264,14 @@ describe Bolognese::Metadata, vcr: true do
264
264
  {"literal"=>"The Genome Denmark Consortium"}])
265
265
  expect(json["container-title"]).to eq("GigaScience")
266
266
  end
267
+
268
+ it "interactive resource without dates" do
269
+ input = "https://doi.org/10.34747/g6yb-3412"
270
+ subject = Bolognese::Metadata.new(input: input, from: "datacite")
271
+ json = JSON.parse(subject.citeproc)
272
+ expect(json["type"]).to eq("article")
273
+ expect(json["DOI"]).to eq("10.34747/g6yb-3412")
274
+ expect(json["issued"]).to eq("date-parts"=>[[2019]])
275
+ end
267
276
  end
268
277
  end
@@ -15,7 +15,7 @@ describe Bolognese::Metadata, vcr: true do
15
15
  expect(crosscite.fetch("related_identifiers").first).to eq("relatedIdentifier"=>"2050-084X", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
16
16
  expect(crosscite.fetch("related_identifiers").last).to eq("relatedIdentifier"=>"10.1038/ncb2764", "relatedIdentifierType"=>"DOI", "relationType"=>"References")
17
17
  expect(crosscite.fetch("rights_list")).to eq([{"rights"=>"Creative Commons Attribution 3.0 Unported",
18
- "rightsIdentifier"=>"CC-BY-3.0",
18
+ "rightsIdentifier"=>"cc-by-3.0",
19
19
  "rightsIdentifierScheme"=>"SPDX",
20
20
  "rightsUri"=>"https://creativecommons.org/licenses/by/3.0/legalcode",
21
21
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -14,7 +14,7 @@ describe Bolognese::Metadata, vcr: true do
14
14
  expect(datacite.fetch("relatedIdentifiers").length).to eq(27)
15
15
  expect(datacite.fetch("relatedIdentifiers").first).to eq("relatedIdentifier"=>"2050-084X", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
16
16
  expect(datacite.fetch("rightsList")).to eq([{"rights"=>"Creative Commons Attribution 3.0 Unported",
17
- "rightsIdentifier"=>"CC-BY-3.0",
17
+ "rightsIdentifier"=>"cc-by-3.0",
18
18
  "rightsIdentifierScheme"=>"SPDX",
19
19
  "rightsUri"=>"https://creativecommons.org/licenses/by/3.0/legalcode",
20
20
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -14,7 +14,7 @@ describe Bolognese::Metadata, vcr: true do
14
14
  expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").length).to eq(27)
15
15
  expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").first).to eq("relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "__content__"=>"2050-084X", "resourceTypeGeneral"=>"Collection")
16
16
  expect(datacite.dig("relatedIdentifiers", "relatedIdentifier")[1]).to eq("relatedIdentifierType"=>"DOI", "relationType"=>"References", "__content__"=>"10.1038/nature02100")
17
- expect(datacite.dig("rightsList", "rights")).to eq("rightsURI"=>"https://creativecommons.org/licenses/by/3.0/legalcode", "rightsIdentifier"=>"CC-BY-3.0", "rightsIdentifierScheme"=>"SPDX", "schemeURI"=>"https://spdx.org/licenses/", "__content__"=>"Creative Commons Attribution 3.0 Unported")
17
+ expect(datacite.dig("rightsList", "rights")).to eq("rightsURI"=>"https://creativecommons.org/licenses/by/3.0/legalcode", "rightsIdentifier"=>"cc-by-3.0", "rightsIdentifierScheme"=>"SPDX", "schemeURI"=>"https://spdx.org/licenses/", "__content__"=>"Creative Commons Attribution 3.0 Unported")
18
18
  expect(datacite.dig("fundingReferences", "fundingReference").count).to eq(4)
19
19
  expect(datacite.dig("fundingReferences", "fundingReference").last).to eq("funderName"=>"University of Lausanne", "funderIdentifier" => {"funderIdentifierType"=>"Crossref Funder ID", "__content__"=>"https://doi.org/10.13039/501100006390"})
20
20
  end
@@ -161,7 +161,7 @@ describe Bolognese::Metadata, vcr: true do
161
161
  expect(subject.creators.first).to eq("nameType"=>"Personal", "familyName" => "Paglione", "givenName" => "Laura", "nameIdentifiers" => [{"nameIdentifier"=>"https://orcid.org/0000-0003-3188-6273", "nameIdentifierScheme"=>"ORCID", "schemeUri"=>"https://orcid.org"}], "name" => "Paglione, Laura", "affiliation" => [])
162
162
  expect(subject.titles).to eq([{"title"=>"Recommendation of: ORCID Works Metadata Working Group"}])
163
163
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Zero v1.0 Universal",
164
- "rightsIdentifier"=>"CC0-1.0",
164
+ "rightsIdentifier"=>"cc0-1.0",
165
165
  "rightsIdentifierScheme"=>"SPDX",
166
166
  "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode",
167
167
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -187,7 +187,7 @@ describe Bolognese::Metadata, vcr: true do
187
187
  expect(subject.creators.first).to eq("nameType" => "Personal", "familyName" => "Paglione", "givenName" => "Laura", "name" => "Paglione, Laura", "nameIdentifiers" => [{"nameIdentifier"=>"https://orcid.org/0000-0003-3188-6273", "nameIdentifierScheme"=>"ORCID", "schemeUri"=>"https://orcid.org"}],"affiliation" => [])
188
188
  expect(subject.titles).to eq([{"title"=>"Recommendation of: ORCID Works Metadata Working Group"}])
189
189
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Zero v1.0 Universal",
190
- "rightsIdentifier"=>"CC0-1.0",
190
+ "rightsIdentifier"=>"cc0-1.0",
191
191
  "rightsIdentifierScheme"=>"SPDX",
192
192
  "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode",
193
193
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -216,7 +216,7 @@ describe Bolognese::Metadata, vcr: true do
216
216
  "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.",
217
217
  "identifierType"=>"citation"}])
218
218
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Zero v1.0 Universal",
219
- "rightsIdentifier"=>"CC0-1.0",
219
+ "rightsIdentifier"=>"cc0-1.0",
220
220
  "rightsIdentifierScheme"=>"SPDX",
221
221
  "rightsUri"=>"https://creativecommons.org/publicdomain/zero/1.0/legalcode",
222
222
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -243,7 +243,7 @@ describe Bolognese::Metadata, vcr: true do
243
243
  expect(subject.titles).to eq([{"title"=>"Southern Sierra Critical Zone Observatory (SSCZO), Providence Creek meteorological data, soil moisture and temperature, snow depth and air temperature"}])
244
244
  expect(subject.identifiers).to eq([{"identifier"=>"https://doi.org/10.6071/z7wc73", "identifierType"=>"DOI"}])
245
245
  expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 4.0 International",
246
- "rightsIdentifier"=>"CC-BY-4.0",
246
+ "rightsIdentifier"=>"cc-by-4.0",
247
247
  "rightsIdentifierScheme"=>"SPDX",
248
248
  "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode",
249
249
  "schemeUri"=>"https://spdx.org/licenses/"}])
@@ -306,7 +306,7 @@ describe Bolognese::Metadata, vcr: true do
306
306
  expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").length).to eq(27)
307
307
  expect(datacite.dig("relatedIdentifiers", "relatedIdentifier").first).to eq("__content__"=>"2050-084X", "relatedIdentifierType"=>"ISSN", "relationType"=>"IsPartOf", "resourceTypeGeneral"=>"Collection")
308
308
  expect(datacite.dig("relatedIdentifiers", "relatedIdentifier")[1]).to eq("relatedIdentifierType"=>"DOI", "relationType"=>"References", "__content__"=>"10.1038/nature02100")
309
- expect(datacite.dig("rightsList", "rights")).to eq("rightsURI"=>"https://creativecommons.org/licenses/by/3.0/legalcode", "rightsIdentifier"=>"CC-BY-3.0", "rightsIdentifierScheme"=>"SPDX", "schemeURI"=>"https://spdx.org/licenses/", "__content__"=>"Creative Commons Attribution 3.0 Unported")
309
+ expect(datacite.dig("rightsList", "rights")).to eq("rightsURI"=>"https://creativecommons.org/licenses/by/3.0/legalcode", "rightsIdentifier"=>"cc-by-3.0", "rightsIdentifierScheme"=>"SPDX", "schemeURI"=>"https://spdx.org/licenses/", "__content__"=>"Creative Commons Attribution 3.0 Unported")
310
310
  expect(datacite.dig("fundingReferences", "fundingReference").count).to eq(4)
311
311
  expect(datacite.dig("fundingReferences", "fundingReference").last).to eq("funderName"=>"University of Lausanne", "funderIdentifier" => {"funderIdentifierType"=>"Crossref Funder ID", "__content__"=>"https://doi.org/10.13039/501100006390"})
312
312
  end
@@ -158,6 +158,20 @@ describe Bolognese::Metadata, vcr: true do
158
158
  expect(jats.dig("day")).to eq("20")
159
159
  expect(jats.dig("pub_id")).to eq("pub_id_type"=>"doi", "__content__"=>"10.5438/4k3m-nyvg")
160
160
  end
161
+
162
+ it "interactive resource without dates" do
163
+ input = "https://doi.org/10.34747/g6yb-3412"
164
+ subject = Bolognese::Metadata.new(input: input, from: "datacite")
165
+ jats = Maremma.from_xml(subject.jats).fetch("element_citation", {})
166
+ expect(jats.dig("publication_type")).to be_nil
167
+ expect(jats.dig("source")).to eq("Exploring the \"Many analysts, one dataset\" project from COS")
168
+ expect(jats.dig("publisher_name")).to eq("Gigantum, Inc.")
169
+ expect(jats.dig("person_group", "name")).to eq("given_names"=>"Dav", "surname"=>"Clark")
170
+ expect(jats.dig("year")).to eq("__content__"=>"2019", "iso_8601_date"=>"2019")
171
+ expect(jats.dig("month")).to be_nil
172
+ expect(jats.dig("day")).to be_nil
173
+ expect(jats.dig("pub_id")).to eq("pub_id_type"=>"doi", "__content__"=>"10.34747/g6yb-3412")
174
+ end
161
175
  end
162
176
 
163
177
  context "change metadata as datacite xml" do
@@ -368,5 +368,14 @@ describe Bolognese::Metadata, vcr: true do
368
368
  expect(json["funder"]).to eq("@id"=>"https://doi.org/10.13039/100000050", "@type"=>"Organization", "name"=>"National Heart, Lung, and Blood Institute (NHLBI)")
369
369
  expect(json["provider"]).to eq("@type"=>"Organization", "name"=>"DataCite")
370
370
  end
371
+
372
+ it "interactive resource without dates" do
373
+ input = "https://doi.org/10.34747/g6yb-3412"
374
+ subject = Bolognese::Metadata.new(input: input, from: "datacite")
375
+ json = JSON.parse(subject.schema_org)
376
+ expect(json["@id"]).to eq("https://doi.org/10.34747/g6yb-3412")
377
+ expect(json["@type"]).to eq("CreativeWork")
378
+ expect(json["datePublished"]).to eq("2019")
379
+ end
371
380
  end
372
381
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bolognese
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.7
4
+ version: 1.6.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Fenner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-24 00:00:00.000000000 Z
11
+ date: 2020-07-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: maremma
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '4.3'
19
+ version: '4.7'
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: '5'
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: '4.3'
29
+ version: '4.7'
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '5'
@@ -34,16 +34,16 @@ dependencies:
34
34
  name: faraday
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
- - - '='
37
+ - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: 0.17.0
39
+ version: 0.17.3
40
40
  type: :runtime
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
- - - '='
44
+ - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: 0.17.0
46
+ version: 0.17.3
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: nokogiri
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -1083,6 +1083,7 @@ files:
1083
1083
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_only_keep_specific_tags.yml
1084
1084
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/sanitize/should_remove_a_tags.yml
1085
1085
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_id.yml
1086
+ - spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_id_lowercase.yml
1086
1087
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_not_found.yml
1087
1088
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/hsh_to_spdx_url.yml
1088
1089
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/spdx/name_to_spdx_exists.yml
@@ -1129,11 +1130,13 @@ files:
1129
1130
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Dataset.yml
1130
1131
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Journal_article.yml
1131
1132
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/Missing_author.yml
1133
+ - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/interactive_resource_without_dates.yml
1132
1134
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citation/software_w/version.yml
1133
1135
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting.yml
1134
1136
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/BlogPosting_schema_org.yml
1135
1137
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/Dataset.yml
1136
1138
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/container_title.yml
1139
+ - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/interactive_resource_without_dates.yml
1137
1140
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/journal_article.yml
1138
1141
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/keywords_subject_scheme.yml
1139
1142
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_citeproc/maremma.yml
@@ -1175,6 +1178,7 @@ files:
1175
1178
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/Dataset_in_schema_4_0.yml
1176
1179
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/Text_pass-thru.yml
1177
1180
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/book_chapter.yml
1181
+ - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/interactive_resource_without_dates.yml
1178
1182
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/maremma.yml
1179
1183
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_ORCID_ID.yml
1180
1184
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_jats_xml/with_data_citation.yml
@@ -1202,6 +1206,7 @@ files:
1202
1206
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/alternate_identifiers.yml
1203
1207
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/data_catalog.yml
1204
1208
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/geo_location_box.yml
1209
+ - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/interactive_resource_without_dates.yml
1205
1210
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/journal_article.yml
1206
1211
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/maremma_schema_org_JSON.yml
1207
1212
  - spec/fixtures/vcr_cassettes/Bolognese_Metadata/write_metadata_as_schema_org/series_information.yml