commonmeta-ruby 3.2.3 → 3.2.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/lib/commonmeta/author_utils.rb +11 -0
  4. data/lib/commonmeta/cli.rb +5 -1
  5. data/lib/commonmeta/readers/json_feed_reader.rb +9 -5
  6. data/lib/commonmeta/utils.rb +4 -2
  7. data/lib/commonmeta/version.rb +1 -1
  8. data/spec/author_utils_spec.rb +9 -8
  9. data/spec/cli_spec.rb +1 -1
  10. data/spec/fixtures/vcr_cassettes/Commonmeta_CLI/json_feed/blog_post.yml +14 -14
  11. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed/all_posts.yml +2625 -0
  12. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed/behind_the_science.yml +1176 -0
  13. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_item_metadata/blogger_post.yml +7 -7
  14. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_item_metadata/ghost_post_with_doi.yml +7 -7
  15. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_item_metadata/ghost_post_without_doi.yml +196 -0
  16. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_item_metadata/jekyll_post.yml +7 -7
  17. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_item_metadata/wordpress_post.yml +7 -7
  18. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/json_feed_url/all_posts.yml +221 -0
  19. data/spec/readers/json_feed_reader_spec.rb +35 -10
  20. data/spec/utils_spec.rb +5 -0
  21. data/spec/writers/citation_writer_spec.rb +1 -1
  22. metadata +6 -15
  23. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_metadata/blogger_post.yml +0 -141
  24. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_metadata/ghost_post_with_doi.yml +0 -164
  25. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_metadata/jekyll_post.yml +0 -134
  26. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_feed_metadata/wordpress_post.yml +0 -210
  27. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_item_metadata/blogger_post.yml +0 -94
  28. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_item_metadata/ghost_post.yml +0 -117
  29. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_item_metadata/ghost_post_with_doi.yml +0 -117
  30. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_item_metadata/jekyll_post.yml +0 -170
  31. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_item_metadata/wordpress_post.yml +0 -163
  32. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_post_metadata/blogger_post.yml +0 -141
  33. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_post_metadata/ghost_post_with_doi.yml +0 -164
  34. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_post_metadata/jekyll_post.yml +0 -134
  35. data/spec/fixtures/vcr_cassettes/Commonmeta_Metadata/get_json_post_metadata/wordpress_post.yml +0 -210
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a4f7fe678426a805430b1b984753c49ba0f7203925cc88c7791fa2f49355b52e
4
- data.tar.gz: 4dfd5a78831a19c59cebae1bcf96ad2460d3b937f0e48b01980ce92812887f10
3
+ metadata.gz: d39024b030308bfeb8bddbc31a34396f630967c375c5ee15e38ce76fefd97e5b
4
+ data.tar.gz: 93e0dcceac66451bbcd81745ef829f2d489a83bad5bd9abd32f74c77efbcb200
5
5
  SHA512:
6
- metadata.gz: ac4861caf56b5f07e0137e240cb15e5f3f752ada0ee48dafd0ab09f9635b10152bd7815a2aa52b05d1cbac094d6e0c73ed997b9e62f77d7cb526950da64cbbdf
7
- data.tar.gz: 99120b5d7aaf9bd26a464e81b6eec2afadf545456d4065b9c06a4c278948631e94b87650c56cb84b1b5c1ba2159f692aaeca50011ab85208afa4fb46f49afd1e
6
+ metadata.gz: d5fc95306870e50f0db71d994fa41b2d776523535ec2e81f0d5ecac721cff5c0a0b4ead67a0910e7633e9bab66fc65cabc7362a411469c9d31a4fd1cb25d1af8
7
+ data.tar.gz: 233a74b81551bd4951a3852b400c0fb07baf9bd0c8d557348a1f6c1d17483bc56c158f95a68063490929ff8e9078f67fe9f1094b8ce1b32ddccea6ed2406c1a4
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- commonmeta-ruby (3.2.3)
4
+ commonmeta-ruby (3.2.4)
5
5
  activesupport (>= 4.2.5, < 8.0)
6
6
  addressable (~> 2.8.1, < 2.8.2)
7
7
  base32-url (>= 0.5.0, < 1)
@@ -49,6 +49,8 @@ module Commonmeta
49
49
 
50
50
  if type.blank? && id.is_a?(String) && URI.parse(id).host == 'ror.org'
51
51
  type = 'Organization'
52
+ elsif type.blank? && author['type'] == 'Organization'
53
+ type = 'Organization'
52
54
  elsif type.blank? && id.is_a?(String) && URI.parse(id).host == 'orcid.org'
53
55
  type = 'Person'
54
56
  elsif type.blank? && (given_name.present? || family_name.present?)
@@ -108,6 +110,15 @@ module Commonmeta
108
110
  def is_personal_name?(name: nil)
109
111
  return true if name_exists?(name.to_s.split.first) || name_exists?(name.to_s.split(', ').last)
110
112
 
113
+ # check if a name has only one word, e.g. "FamousOrganization"
114
+ return false if name.to_s.split(' ').size == 1
115
+
116
+ # check of name can be parsed into given/family name
117
+ Namae.options[:include_particle_in_family] = true
118
+ names = Namae.parse(name)
119
+ parsed_name = names.first
120
+ return true if parsed_name && parsed_name.given
121
+
111
122
  false
112
123
  end
113
124
 
@@ -83,7 +83,11 @@ module Commonmeta
83
83
  desc '', 'feed'
84
84
 
85
85
  def json_feed(id)
86
- puts get_json_feed(id)
86
+ if id.present?
87
+ puts get_json_feed(id)
88
+ else
89
+ puts get_json_feed
90
+ end
87
91
  end
88
92
 
89
93
  default_task :convert
@@ -74,16 +74,20 @@ module Commonmeta
74
74
  "state" => state }.compact.merge(read_options)
75
75
  end
76
76
 
77
- def get_json_feed(id)
77
+ def get_json_feed(id = nil)
78
78
  # get JSON Feed items not registered as DOIs
79
- return { "string" => nil, "state" => "not_found" } unless id.present?
80
-
79
+
81
80
  url = json_feed_url(id)
82
81
  response = HTTP.get(url)
83
82
  return { "string" => nil, "state" => "not_found" } unless response.status.success?
84
83
 
85
- blog = JSON.parse(response.body.to_s)
86
- blog["items"].select { |item| !validate_doi(item["id"]) }.map { |item| item["short_id"] }.first
84
+ if id.present?
85
+ blog = JSON.parse(response.body.to_s)
86
+ blog["items"].select { |item| !validate_doi(item["id"]) }.map { |item| item["uuid"] }.first
87
+ else
88
+ posts = JSON.parse(response.body.to_s)
89
+ posts.select { |post| !validate_doi(post["id"]) }.map { |post| post["uuid"] }.first
90
+ end
87
91
  end
88
92
  end
89
93
  end
@@ -1381,8 +1381,10 @@ module Commonmeta
1381
1381
  Base32::URL.decode(id)
1382
1382
  end
1383
1383
 
1384
- def json_feed_url(id)
1385
- "https://rogue-scholar.org/api/blogs/#{id}"
1384
+ def json_feed_url(id = nil)
1385
+ return "https://rogue-scholar.org/api/blogs/#{id}" if id.present?
1386
+
1387
+ "https://rogue-scholar.org/api/posts"
1386
1388
  end
1387
1389
  end
1388
1390
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Commonmeta
4
- VERSION = '3.2.3'
4
+ VERSION = '3.2.4'
5
5
  end
@@ -8,12 +8,6 @@ describe Commonmeta::Metadata, vcr: true do
8
8
  end
9
9
 
10
10
  context 'is_personal_name?' do
11
- it 'has type organization' do
12
- author = { 'email' => 'info@ucop.edu', 'name' => 'University of California, Santa Barbara',
13
- 'role' => { 'namespace' => 'http://www.ngdc.noaa.gov/metadata/published/xsd/schema/resources/Codelist/gmxCodelists.xml#CI_RoleCode', 'roleCode' => 'copyrightHolder' }, 'type' => 'Organization' }
14
- expect(subject.is_personal_name?(name: author['name'])).to be false
15
- end
16
-
17
11
  it 'has id' do
18
12
  author = { 'id' => 'http://orcid.org/0000-0003-1419-2405', 'givenName' => 'Martin', 'familyName' => 'Fenner', 'name' => 'Martin Fenner' }
19
13
  expect(subject.is_personal_name?(name: author['name'])).to be true
@@ -42,7 +36,7 @@ describe Commonmeta::Metadata, vcr: true do
42
36
 
43
37
  it 'has unknown given name' do
44
38
  author = { 'name' => 'Rintze Zelle' }
45
- expect(subject.is_personal_name?(name: author['name'])).to be false
39
+ expect(subject.is_personal_name?(name: author['name'])).to be true
46
40
  end
47
41
 
48
42
  it 'has middle initial' do
@@ -52,11 +46,18 @@ describe Commonmeta::Metadata, vcr: true do
52
46
 
53
47
  it 'has no info' do
54
48
  author = { 'name' => 'M Fenner' }
55
- expect(subject.is_personal_name?(name: author['name'])).to be false
49
+ expect(subject.is_personal_name?(name: author['name'])).to be true
56
50
  end
57
51
  end
58
52
 
59
53
  context 'get_one_author' do
54
+ it 'has type organization' do
55
+ author = { 'email' => 'info@ucop.edu', 'name' => 'University of California, Santa Barbara',
56
+ 'role' => { 'namespace' => 'http://www.ngdc.noaa.gov/metadata/published/xsd/schema/resources/Codelist/gmxCodelists.xml#CI_RoleCode', 'roleCode' => 'copyrightHolder' }, 'type' => 'Organization' }
57
+ response = subject.get_one_author(author)
58
+ expect(response).to eq('name' => 'University of California, Santa Barbara', 'type' => 'Organization')
59
+ end
60
+
60
61
  it 'has familyName' do
61
62
  input = 'https://doi.org/10.5438/4K3M-NYVG'
62
63
  subject = described_class.new(input: input)
data/spec/cli_spec.rb CHANGED
@@ -345,7 +345,7 @@ describe Commonmeta::CLI do
345
345
  let(:input) { "prmb582" }
346
346
 
347
347
  it "blog post" do
348
- expect { subject.json_feed input }.to output(/1jdkoe52\n/).to_stdout
348
+ expect { subject.json_feed input }.to output(/89a326c6-f5d1-443a-99b8-ea75e705ce11\n/).to_stdout
349
349
  end
350
350
  end
351
351
  end
@@ -23,13 +23,13 @@ http_interactions:
23
23
  Cache-Control:
24
24
  - public, max-age=0, must-revalidate
25
25
  Content-Length:
26
- - '29830'
26
+ - '30046'
27
27
  Content-Type:
28
28
  - application/json; charset=utf-8
29
29
  Date:
30
- - Sun, 04 Jun 2023 14:05:32 GMT
30
+ - Mon, 05 Jun 2023 08:27:03 GMT
31
31
  Etag:
32
- - '"pp488uitdomy8"'
32
+ - '"3osxmn59l4n48"'
33
33
  Server:
34
34
  - Vercel
35
35
  Strict-Transport-Security:
@@ -39,7 +39,7 @@ http_interactions:
39
39
  X-Vercel-Cache:
40
40
  - MISS
41
41
  X-Vercel-Id:
42
- - fra1::iad1::wc5sv-1685887531972-fdcad9a39325
42
+ - fra1::iad1::djztz-1685953622736-2b55f4de8668
43
43
  Connection:
44
44
  - close
45
45
  body:
@@ -47,7 +47,7 @@ http_interactions:
47
47
  string: '{"id":"prmb582","title":"Citation Style Language","description":"CitationStyles.org,
48
48
  home of the Citation Style Language (CSL), a popular open XML-based language
49
49
  to describe the formatting of citations and bibliographies.","language":"en","icon":null,"favicon":null,"feed_url":"https://citationstyles.org/feed.xml","feed_format":"application/atom+xml","home_page_url":"https://citationstyles.org/","indexed_at":"2023-04-25","license":"https://creativecommons.org/licenses/by/4.0/legalcode","generator":"Jekyll","category":"Engineering
50
- and Technology","items":[{"id":"https://citationstyles.org/2014/01/29/mendeley-donates-to-the-csl-project/","short_id":"1jdkoe52","url":"https://citationstyles.org/2014/01/29/mendeley-donates-to-the-csl-project/","title":"Mendeley
50
+ and Technology","items":[{"id":"https://citationstyles.org/2014/01/29/mendeley-donates-to-the-csl-project/","uuid":"89a326c6-f5d1-443a-99b8-ea75e705ce11","url":"https://citationstyles.org/2014/01/29/mendeley-donates-to-the-csl-project/","title":"Mendeley
51
51
  Donates to the CSL Project","summary":"CSL has seen a lot of growth in recent
52
52
  years: more than 20 software products use CSL (see the citationstyles.org
53
53
  frontpage), and we offer over 6750 free citation styles, covering thousands
@@ -82,7 +82,7 @@ http_interactions:
82
82
  citing items in multiple languages.\nWe’ll of course continue to maintain
83
83
  the project website and documentation, and handle style submissions to the
84
84
  repository.\nFinally, we’ll keep reaching out to publishers to further increase
85
- the number of journals covered by CSL styles.</p>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2010/03/22/citation-style-language-1-0/","short_id":"4qe9ypg1","url":"https://citationstyles.org/2010/03/22/citation-style-language-1-0/","title":"Citation
85
+ the number of journals covered by CSL styles.</p>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2010/03/22/citation-style-language-1-0/","uuid":"6cb26c61-ef77-4b7f-9d60-9925298ed738","url":"https://citationstyles.org/2010/03/22/citation-style-language-1-0/","title":"Citation
86
86
  Style Language 1.0","summary":"The Citation Style Language (CSL) team is proud
87
87
  to announce CSL 1.0, a free and open XML language for the formatting of citations
88
88
  and bibliographies. A New Home CitationStyles.org is the new home of the CSL...","date_published":"2010-03-22T00:00:00Z","date_modified":"2010-03-22T00:00:00Z","authors":[{"url":null,"name":"Rintze
@@ -125,7 +125,7 @@ http_interactions:
125
125
  upgrade the more than thousand CSL 0.8 styles hosted in the <a href=\"http://zotero.org/styles\">Zotero
126
126
  Style Repository</a>.\nTo upgrade a CSL 0.8 style yourself, follow the <a
127
127
  href=\"http://citationstyles.org/downloads/upgrade-notes.html#updating-csl-0-8-styles\">upgrade
128
- procedure</a>.</p>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2020/07/11/seeking-public-comment-on-CSL-1-0-2/","short_id":"1jdkwod5","url":"https://citationstyles.org/2020/07/11/seeking-public-comment-on-CSL-1-0-2/","title":"Seeking
128
+ procedure</a>.</p>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2020/07/11/seeking-public-comment-on-CSL-1-0-2/","uuid":"efdacb04-bcec-49d7-b689-ab3eab0634bf","url":"https://citationstyles.org/2020/07/11/seeking-public-comment-on-CSL-1-0-2/","title":"Seeking
129
129
  Public Comment on CSL 1.0.2 Release","summary":"Over the past few months,
130
130
  Citation Style Language developers have worked to address a backlog of feature
131
131
  requests. This work will be reflected in two upcoming releases. The first
@@ -161,7 +161,7 @@ http_interactions:
161
161
  approximate qualifiers, and decades and centuries.</li>\n <li>A new “custom”
162
162
  property to add extension metadata.</li>\n <li>New related modelling
163
163
  to match the new style attribute (as above, still in discussion).</li>\n <li>An
164
- official YAML representation, which can be validated with the same JSON schemas.</li>\n </ul>\n </li>\n</ul>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2015/05/20/papers-and-springer-donation/","short_id":"56glp9d9","url":"https://citationstyles.org/2015/05/20/papers-and-springer-donation/","title":"Papers
164
+ official YAML representation, which can be validated with the same JSON schemas.</li>\n </ul>\n </li>\n</ul>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2015/05/20/papers-and-springer-donation/","uuid":"e185bf99-5d57-49ef-ae77-f30dd838f53a","url":"https://citationstyles.org/2015/05/20/papers-and-springer-donation/","title":"Papers
165
165
  and Springer Donation","summary":"Today, with 30 software products using the
166
166
  Citation Style Language (CSL), and a style repository with over 7700 styles,
167
167
  we are excited to announce that Papers and Springer have made a $5000 donation
@@ -194,7 +194,7 @@ http_interactions:
194
194
  these automated reports into easy-to-understand feedback, and provide contributors
195
195
  with detailed instructions on how to correct their submissions.\nAnd last
196
196
  but not least, we also hope to pick up the pace again on creating the next
197
- version of CSL.</p>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2010/05/30/csl-1-0-specification-update-2010-05-30/","short_id":"1xdnk0d0","url":"https://citationstyles.org/2010/05/30/csl-1-0-specification-update-2010-05-30/","title":"CSL
197
+ version of CSL.</p>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2010/05/30/csl-1-0-specification-update-2010-05-30/","uuid":"3f903896-a7bc-4342-ab5a-6f9ce57c9683","url":"https://citationstyles.org/2010/05/30/csl-1-0-specification-update-2010-05-30/","title":"CSL
198
198
  1.0 Specification Update 2010-05-30","summary":"Changelog The CSL 1.0 specification
199
199
  update of 2010-05-30 includes the following changes: clarified behavior of
200
200
  the line-spacing and entry-spacing attributes [diff] clarified behavior of
@@ -223,7 +223,7 @@ http_interactions:
223
223
  to the CSL schema will be accompanied by an updated CSL specification.\nIn
224
224
  addition, minor date-versioned updates to the CSL specification can be released
225
225
  without accompanying changes to the CSL schema (as is the case for the current
226
- specification update).</p>","tags":[],"language":null},{"id":"https://citationstyles.org/2015/07/21/mendeley-and-elsevier-donation-for-2015/","short_id":"56glmmd9","url":"https://citationstyles.org/2015/07/21/mendeley-and-elsevier-donation-for-2015/","title":"Mendeley
226
+ specification update).</p>","tags":[],"language":null},{"id":"https://citationstyles.org/2015/07/21/mendeley-and-elsevier-donation-for-2015/","uuid":"f520b59c-db35-4b19-9085-8f7ac35e0532","url":"https://citationstyles.org/2015/07/21/mendeley-and-elsevier-donation-for-2015/","title":"Mendeley
227
227
  and Elsevier Donation for 2015","summary":"For a second year, Mendeley and
228
228
  Elsevier have generously supported the CSL project with a $5,000 donation.
229
229
  Donations like these allow us to dedicate time to the project, cover expenses,
@@ -254,7 +254,7 @@ http_interactions:
254
254
  for a new maintainer/developer of the <a href=\"http://editor.citationstyles.org/about/\">Visual
255
255
  CSL Editor</a>.\nThanks to the donations made to the CSL project, we are able
256
256
  to offer (limited) funding to anybody willing to take over this work from
257
- Steve Ridout, the editor’s original developer.</p>","tags":[],"language":null},{"id":"https://citationstyles.org/2016/10/06/mendeley-and-elsevier-donation-for-2016/","short_id":"1xdnoje0","url":"https://citationstyles.org/2016/10/06/mendeley-and-elsevier-donation-for-2016/","title":"Mendeley
257
+ Steve Ridout, the editor’s original developer.</p>","tags":[],"language":null},{"id":"https://citationstyles.org/2016/10/06/mendeley-and-elsevier-donation-for-2016/","uuid":"a30f5f1d-0b27-44f8-ad16-d41ed1cbd0ed","url":"https://citationstyles.org/2016/10/06/mendeley-and-elsevier-donation-for-2016/","title":"Mendeley
258
258
  and Elsevier Donation for 2016","summary":"For their third straight year,
259
259
  Mendeley and Elsevier have kindly supported the open source Citation Style
260
260
  Language project with a $5000 donation. Donations allow us to hire developers
@@ -289,7 +289,7 @@ http_interactions:
289
289
  multiple citation formats are used across your collection, an indication of
290
290
  which journal uses which citation format.\nWe’ll gladly (and without charge)
291
291
  use this metadata to generate CSL styles for all your journals.\nYou can also
292
- help us by standardizing citation formats across your journals.</p>","tags":[],"language":null},{"id":"https://citationstyles.org/2012/09/03/citation-style-language-1-0-1-update/","short_id":"31epl0dn","url":"https://citationstyles.org/2012/09/03/citation-style-language-1-0-1-update/","title":"Citation
292
+ help us by standardizing citation formats across your journals.</p>","tags":[],"language":null},{"id":"https://citationstyles.org/2012/09/03/citation-style-language-1-0-1-update/","uuid":"7555e981-a931-4df1-adc0-1cdc4a1b417a","url":"https://citationstyles.org/2012/09/03/citation-style-language-1-0-1-update/","title":"Citation
293
293
  Style Language 1.0.1 Update","summary":"The Citation Style Language (CSL)
294
294
  team is happy to announce CSL 1.0.1. CSL 1.0.1 is an (almost completely) backwards
295
295
  compatible release, and CSL 1.0 styles and locale files don’t have to be updated
@@ -330,7 +330,7 @@ http_interactions:
330
330
  quite the challenge).\nAnother exciting development is the work of Frank Bennett
331
331
  on his forks of Zotero and CSL to revolutionize the field of multilingual
332
332
  and legal citation management, the progress of which can be followed on his
333
- website <a href=\"http://citationstylist.org/\">citationstylist.org</a>.</p>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2011/03/18/csl-1-0-first-anniversary/","short_id":"q0dqm6go","url":"https://citationstyles.org/2011/03/18/csl-1-0-first-anniversary/","title":"CSL
333
+ website <a href=\"http://citationstylist.org/\">citationstylist.org</a>.</p>","tags":[],"language":"en"},{"id":"https://citationstyles.org/2011/03/18/csl-1-0-first-anniversary/","uuid":"031faba3-3a6e-49d1-a540-26523be2fd09","url":"https://citationstyles.org/2011/03/18/csl-1-0-first-anniversary/","title":"CSL
334
334
  1.0 First Anniversary","summary":"It’s been a year since version 1.0 of the
335
335
  Citation Style Language was released, but now is as an exciting time as ever.
336
336
  Zotero 2.1, Mendeley 0.9.8 and Papers2 now all use CSL 1.0 for citation formatting...","date_published":"2011-03-18T00:00:00Z","date_modified":"2011-03-18T00:00:00Z","authors":[{"url":null,"name":"Rintze
@@ -356,5 +356,5 @@ http_interactions:
356
356
  preview and install styles.\nInterested parties are strongly invited to participate
357
357
  in the <a href=\"http://sourceforge.net/mail/?group_id=117435\">xbiblio mailing
358
358
  list</a> to discuss and help out with these future improvements.</p>","tags":[],"language":"en"}]}'
359
- recorded_at: Sun, 04 Jun 2023 14:05:32 GMT
359
+ recorded_at: Mon, 05 Jun 2023 08:27:03 GMT
360
360
  recorded_with: VCR 6.1.0