briard 2.8.1 → 2.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (529) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/Gemfile.lock +11 -1
  4. data/briard.gemspec +1 -0
  5. data/lib/briard/metadata.rb +25 -22
  6. data/lib/briard/metadata_utils.rb +2 -0
  7. data/lib/briard/readers/crossref_json_reader.rb +6 -5
  8. data/lib/briard/readers/datacite_reader.rb +1 -1
  9. data/lib/briard/schema_utils.rb +15 -0
  10. data/lib/briard/utils.rb +6 -2
  11. data/lib/briard/version.rb +1 -1
  12. data/resources/json-schema/briard_schema.json +367 -0
  13. data/spec/cli_spec.rb +64 -3
  14. data/spec/find_from_format_spec.rb +27 -0
  15. data/spec/fixtures/crosscite.json +1 -1
  16. data/spec/fixtures/datacite.json +1 -1
  17. data/spec/fixtures/datacite_software.json +1 -1
  18. data/spec/fixtures/datacite_software_version.json +1 -1
  19. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/default.yml +51 -0
  20. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/to_bibtex.yml +51 -0
  21. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/to_crossref.yml +51 -0
  22. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/to_datacite.yml +51 -0
  23. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/to_schema_org.yml +51 -0
  24. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/default.yml +9 -9
  25. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_bibtex.yml +9 -9
  26. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_citation.yml +9 -9
  27. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_crossref.yml +9 -9
  28. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_datacite.yml +9 -9
  29. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_jats.yml +9 -9
  30. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_schema_org.yml +9 -9
  31. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/default.yml +120 -0
  32. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_bibtex.yml +112 -0
  33. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_citation.yml +112 -0
  34. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_crossref.yml +112 -0
  35. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_datacite.yml +112 -0
  36. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_schema_org.yml +112 -0
  37. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/default.yml +10 -10
  38. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_bibtex.yml +10 -10
  39. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_citation.yml +10 -10
  40. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_datacite.yml +10 -10
  41. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_datacite_json.yml +10 -10
  42. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_jats.yml +10 -10
  43. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_schema_org.yml +10 -10
  44. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/schema_org/default.yml +5 -5
  45. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/schema_org/to_datacite.yml +5 -5
  46. data/spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/schema_org/to_schema_org.yml +7 -9
  47. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/crossref.yml +4 -4
  48. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/datacite.yml +4 -4
  49. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/jalc.yml +4 -4
  50. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/kisti.yml +4 -4
  51. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/medra.yml +4 -4
  52. data/spec/fixtures/vcr_cassettes/Briard_CLI/find_from_format_by_id/op.yml +4 -4
  53. data/spec/fixtures/vcr_cassettes/Briard_Metadata/authors_as_string/author.yml +6 -6
  54. data/spec/fixtures/vcr_cassettes/Briard_Metadata/authors_as_string/no_author.yml +5 -5
  55. data/spec/fixtures/vcr_cassettes/Briard_Metadata/authors_as_string/single_author.yml +5 -5
  56. data/spec/fixtures/vcr_cassettes/Briard_Metadata/authors_as_string/with_organization.yml +5 -5
  57. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_datacite_metadata/change_state.yml +10 -10
  58. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_datacite_metadata/change_title.yml +10 -10
  59. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/change_description.yml +5 -5
  60. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/change_identifiers.yml +5 -5
  61. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/change_license.yml +5 -5
  62. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/change_license_name.yml +5 -5
  63. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/change_license_url.yml +5 -5
  64. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/change_state.yml +5 -5
  65. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/validates_against_schema.yml +5 -5
  66. data/spec/fixtures/vcr_cassettes/Briard_Metadata/change_metadata_as_datacite_xml/with_data_citation.yml +5 -5
  67. data/spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/doi.yml +5 -5
  68. data/spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/doi_with_protocol.yml +6 -6
  69. data/spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/dx_doi_org_url.yml +5 -5
  70. data/spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/force_test_resolver.yml +6 -6
  71. data/spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/https_url.yml +6 -6
  72. data/spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/test_resolver.yml +5 -5
  73. data/spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/test_resolver_http.yml +6 -6
  74. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/doi.yml +6 -6
  75. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/doi_with_special_characters.yml +6 -6
  76. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/not_a_doi.yml +5 -5
  77. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/sandbox_url.yml +6 -6
  78. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/url.yml +6 -6
  79. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/crossref.yml +10 -10
  80. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/datacite.yml +9 -9
  81. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/jalc.yml +9 -9
  82. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/kisti.yml +9 -9
  83. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/medra.yml +9 -9
  84. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/not_a_valid_prefix.yml +6 -6
  85. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/not_found.yml +9 -9
  86. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_registration_agency/op.yml +10 -10
  87. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_resolver/doi.yml +5 -5
  88. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_resolver/doi_with_protocol.yml +5 -5
  89. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_resolver/dx_doi_org_url.yml +5 -5
  90. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_resolver/force_stage_resolver.yml +6 -6
  91. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_resolver/https_url.yml +5 -5
  92. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_resolver/stage_resolver.yml +6 -6
  93. data/spec/fixtures/vcr_cassettes/Briard_Metadata/doi_resolver/stage_resolver_http.yml +5 -5
  94. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/crossref.yml +14 -14
  95. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/crossref_doi_not_url.yml +14 -14
  96. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/datacite.yml +14 -14
  97. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/datacite_doi_http.yml +14 -14
  98. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/github.yml +10 -10
  99. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/orcid.yml +10 -10
  100. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/schema_org.yml +10 -10
  101. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_by_ID/unknown_DOI_registration_agency.yml +14 -14
  102. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/bibtex.yml +10 -10
  103. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/citeproc.yml +10 -10
  104. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/codemeta.yml +10 -10
  105. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/crosscite.yml +10 -10
  106. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/crossref.yml +10 -10
  107. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/crossref_json.yml +121 -0
  108. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/datacite.yml +10 -10
  109. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/datacite_json.yml +10 -10
  110. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/ris.yml +10 -10
  111. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/schema_org.yml +10 -10
  112. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_string/crosscite.yml +10 -10
  113. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_string/crossref.yml +121 -0
  114. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_string/crossref_json.yml +121 -0
  115. data/spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_string/datacite.yml +121 -0
  116. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_for_match.yml +6 -6
  117. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_for_with_schemeUri_in_hash.yml +6 -6
  118. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_match.yml +6 -6
  119. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_no_match.yml +6 -6
  120. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/name_to_fos_for_match.yml +6 -6
  121. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/name_to_fos_match.yml +5 -5
  122. data/spec/fixtures/vcr_cassettes/Briard_Metadata/fos/name_to_fos_no_match.yml +5 -5
  123. data/spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org/with_id.yml +6 -6
  124. data/spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org_creators/with_affiliation.yml +6 -6
  125. data/spec/fixtures/vcr_cassettes/Briard_Metadata/from_schema_org_creators/without_affiliation.yml +5 -5
  126. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/cff-converter-python.yml +7 -7
  127. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/ruby-cff.yml +10 -10
  128. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_cff_metadata/ruby-cff_repository_url.yml +8 -8
  129. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/maremma.yml +8 -8
  130. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_codemeta_metadata/metadata_reports.yml +7 -7
  131. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/DOI_with_ORCID_ID.yml +9 -9
  132. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/DOI_with_SICI_DOI.yml +9 -9
  133. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/DOI_with_data_citation.yml +4 -65
  134. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/JaLC.yml +9 -9
  135. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/KISTI.yml +9 -9
  136. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/OP.yml +9 -9
  137. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/affiliation_is_space.yml +9 -9
  138. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/another_book.yml +9 -9
  139. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/another_book_chapter.yml +9 -9
  140. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/article_id_as_page_number.yml +9 -9
  141. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/author_literal.yml +11 -11
  142. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/book.yml +9 -9
  143. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/book_chapter.yml +9 -9
  144. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/book_chapter_with_RDF_for_container.yml +9 -9
  145. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/book_oup.yml +9 -9
  146. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/component.yml +9 -9
  147. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/dataset.yml +9 -9
  148. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/dataset_usda.yml +9 -9
  149. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/date_in_future.yml +9 -9
  150. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/dissertation.yml +9 -9
  151. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/empty_given_name.yml +9 -9
  152. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/invalid_date.yml +9 -9
  153. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/journal_article.yml +9 -9
  154. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/journal_article_original_language_title.yml +9 -9
  155. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/journal_article_with.yml +9 -9
  156. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/journal_article_with_RDF_for_container.yml +9 -9
  157. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/journal_article_with_funding.yml +9 -9
  158. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/journal_issue.yml +9 -9
  159. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/mEDRA.yml +9 -9
  160. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/markup.yml +9 -9
  161. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/missing_creator.yml +9 -9
  162. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/multiple_issn.yml +9 -9
  163. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/multiple_titles.yml +9 -9
  164. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/multiple_titles_with_missing.yml +9 -9
  165. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/not_found_error.yml +9 -9
  166. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/peer_review.yml +9 -9
  167. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/posted_content.yml +9 -9
  168. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/posted_content_copernicus.yml +9 -9
  169. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/report_osti.yml +11 -11
  170. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/vor_with_url.yml +9 -9
  171. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/yet_another_book.yml +9 -9
  172. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/yet_another_book_chapter.yml +9 -9
  173. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_raw/journal_article.yml +51 -0
  174. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml +9 -9
  175. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_SICI_DOI.yml +9 -9
  176. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_data_citation.yml +9 -9
  177. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/JaLC.yml +9 -9
  178. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/KISTI.yml +9 -9
  179. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/OP.yml +9 -9
  180. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/affiliation_is_space.yml +9 -9
  181. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/another_book.yml +9 -9
  182. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/another_book_chapter.yml +9 -9
  183. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/article_id_as_page_number.yml +9 -9
  184. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/author_literal.yml +10 -10
  185. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/book.yml +9 -9
  186. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/book_chapter.yml +10 -10
  187. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/book_chapter_with_RDF_for_container.yml +9 -9
  188. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/book_oup.yml +9 -9
  189. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/component.yml +9 -9
  190. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/dataset.yml +9 -9
  191. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/dataset_usda.yml +9 -9
  192. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/date_in_future.yml +9 -9
  193. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/dissertation.yml +9 -9
  194. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/empty_given_name.yml +9 -9
  195. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/invalid_date.yml +9 -9
  196. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article.yml +9 -9
  197. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article_original_language_title.yml +9 -9
  198. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article_with.yml +9 -9
  199. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article_with_RDF_for_container.yml +9 -9
  200. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_article_with_funding.yml +9 -9
  201. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/journal_issue.yml +9 -9
  202. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/mEDRA.yml +9 -9
  203. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/markup.yml +9 -9
  204. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/missing_creator.yml +9 -9
  205. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/multiple_issn.yml +9 -9
  206. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/multiple_titles.yml +9 -9
  207. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/multiple_titles_with_missing.yml +9 -9
  208. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/not_found_error.yml +9 -9
  209. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/peer_review.yml +9 -9
  210. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/posted_content.yml +9 -9
  211. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/posted_content_copernicus.yml +9 -9
  212. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/report_osti.yml +10 -10
  213. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/vor_with_url.yml +9 -9
  214. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/yet_another_book.yml +9 -9
  215. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/yet_another_book_chapter.yml +11 -11
  216. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_json_metadata/metadata_from_api.yml +10 -10
  217. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/BlogPosting.yml +10 -10
  218. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/DOI_in_staging_system.yml +10 -10
  219. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/DOI_in_staging_system_schema_3.yml +10 -10
  220. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/DOI_in_with_related_id_system.yml +10 -10
  221. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/DOI_not_found.yml +9 -9
  222. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/Dataset.yml +10 -10
  223. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/Funding.yml +10 -10
  224. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/Funding_empty_awardTitle.yml +10 -10
  225. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/Funding_schema_version_4.yml +10 -10
  226. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/Referee_report_in_staging_system.yml +10 -10
  227. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/Schema_org_type.yml +10 -10
  228. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/author_only_full_name.yml +10 -10
  229. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/author_with_scheme.yml +10 -10
  230. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/author_with_wrong_orcid_scheme.yml +10 -10
  231. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/cc-by_3_0_us.yml +10 -10
  232. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/content_url.yml +10 -10
  233. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/date.yml +10 -10
  234. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/dissertation.yml +10 -10
  235. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/doi_with_sign.yml +10 -10
  236. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/empty_subject.yml +10 -10
  237. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/even_more_subject_scheme_FOR.yml +10 -10
  238. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/funding_references.yml +10 -10
  239. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/funding_schema_version_3.yml +10 -10
  240. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/is_identical_to.yml +10 -10
  241. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/keywords_with_attributes.yml +10 -10
  242. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/leading_and_trailing_whitespace.yml +10 -10
  243. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/more_subject_scheme_FOR.yml +10 -10
  244. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/multiple_author_names_in_one_creatorsName.yml +10 -10
  245. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/multiple_licenses.yml +10 -10
  246. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/series-information.yml +10 -10
  247. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/subject_scheme.yml +10 -10
  248. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datacite_metadata/subject_scheme_FOR.yml +10 -10
  249. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date/publication_date.yml +6 -6
  250. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_date_parts/date.yml +5 -5
  251. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_date_parts/year-month.yml +6 -6
  252. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_date_parts/year.yml +5 -5
  253. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_parts/date.yml +5 -5
  254. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_parts/year-month.yml +5 -5
  255. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_from_parts/year.yml +6 -6
  256. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_parts/date.yml +5 -5
  257. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_parts/year-month.yml +5 -5
  258. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_date_parts/year.yml +5 -5
  259. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/future.yml +6 -6
  260. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/invalid.yml +5 -5
  261. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/nil.yml +6 -6
  262. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/past.yml +5 -5
  263. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_datetime_from_time/present.yml +5 -5
  264. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/has_familyName.yml +6 -6
  265. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/has_name_in_Thai.yml +6 -6
  266. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/has_name_in_display-order.yml +6 -6
  267. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/has_name_in_display-order_with_ORCID.yml +6 -6
  268. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/has_name_in_sort-order.yml +6 -6
  269. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/hyper-authorship.yml +6 -6
  270. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/is_organization.yml +6 -6
  271. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/multiple_author_names_in_one_field.yml +6 -6
  272. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/multiple_name_identifier.yml +6 -6
  273. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_affiliation.yml +6 -6
  274. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_affiliation_crossref.yml +9 -9
  275. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_role.yml +6 -6
  276. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/only_familyName_and_givenName.yml +2 -2
  277. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/BlogPosting.yml +16 -16
  278. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/BlogPosting_with_new_DOI.yml +16 -16
  279. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/get_schema_org_metadata_front_matter/BlogPosting.yml +16 -16
  280. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/harvard_dataverse.yml +6 -6
  281. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/pangaea.yml +2 -2
  282. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/zenodo.yml +9 -9
  283. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/only_title.yml +6 -6
  284. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_and_pages.yml +5 -5
  285. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_volume_and_pages.yml +5 -5
  286. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_series_information/title_volume_issue_and_pages.yml +6 -6
  287. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_cff_url.yml +6 -6
  288. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_as_codemeta_url.yml +6 -6
  289. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url.yml +6 -6
  290. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_cff_file.yml +5 -5
  291. data/spec/fixtures/vcr_cassettes/Briard_Metadata/github/github_from_url_file.yml +5 -5
  292. data/spec/fixtures/vcr_cassettes/Briard_Metadata/handle_input/DOI_RA_not_Crossref_or_DataCite.yml +4 -4
  293. data/spec/fixtures/vcr_cassettes/Briard_Metadata/handle_input/unknown_DOI_prefix.yml +4 -4
  294. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_contributors/none.yml +6 -6
  295. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_creators/insert.yml +6 -6
  296. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_dates/insert.yml +6 -6
  297. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_descriptions/insert.yml +6 -6
  298. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_identifier/doi.yml +6 -6
  299. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_language/insert.yml +6 -6
  300. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_person/creator_only_name.yml +6 -6
  301. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_publication_year/insert.yml +6 -6
  302. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_publisher/insert.yml +6 -6
  303. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_related_identifiers/insert.yml +6 -6
  304. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_related_identifiers/related_identifier.yml +6 -6
  305. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_resource_type/insert.yml +6 -6
  306. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_rights_list/insert.yml +6 -6
  307. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_sizes/insert.yml +6 -6
  308. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_subjects/insert.yml +6 -6
  309. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_titles/insert.yml +6 -6
  310. data/spec/fixtures/vcr_cassettes/Briard_Metadata/insert_version/insert.yml +6 -6
  311. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_comma.yml +6 -6
  312. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_family_name.yml +6 -6
  313. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_id.yml +5 -5
  314. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_known_given_name.yml +5 -5
  315. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_no_info.yml +5 -5
  316. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_orcid_id.yml +5 -5
  317. data/spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_type_organization.yml +5 -5
  318. data/spec/fixtures/vcr_cassettes/Briard_Metadata/json_schema_errors/doi_not_found.yml +105 -0
  319. data/spec/fixtures/vcr_cassettes/Briard_Metadata/{doi_from_url/crossref_api_url.yml → json_schema_errors/is_valid.yml} +5 -5
  320. data/spec/fixtures/vcr_cassettes/Briard_Metadata/{is_personal_name_/has_family_name_crossref.yml → json_schema_valid_/is_valid.yml} +5 -5
  321. data/spec/fixtures/vcr_cassettes/Briard_Metadata/jsonlint/missing_comma.yml +10 -10
  322. data/spec/fixtures/vcr_cassettes/Briard_Metadata/jsonlint/nil.yml +10 -10
  323. data/spec/fixtures/vcr_cassettes/Briard_Metadata/jsonlint/overlapping_keys.yml +10 -10
  324. data/spec/fixtures/vcr_cassettes/Briard_Metadata/jsonlint/valid.yml +10 -10
  325. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_cc_url/not_found.yml +5 -5
  326. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_cc_url/with_trailing_slash.yml +5 -5
  327. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_cc_url/with_trailing_slash_and_to_https.yml +6 -6
  328. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/SICI_doi.yml +5 -5
  329. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/doi.yml +6 -6
  330. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/doi_force_datacite_sandbox.yml +5 -5
  331. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/doi_from_datacite_sandbox.yml +6 -6
  332. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/doi_from_url_without_doi_proxy.yml +5 -5
  333. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/doi_prefix_too_long.yml +5 -5
  334. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/doi_prefix_with_string.yml +5 -5
  335. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/doi_with_protocol.yml +5 -5
  336. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/dx_doi_org_url.yml +5 -5
  337. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/https_url.yml +6 -6
  338. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/not_valid_doi_prefix.yml +6 -6
  339. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/url_with_one_slash.yml +6 -6
  340. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/doi.yml +6 -6
  341. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/doi_as_url.yml +6 -6
  342. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/filename.yml +65 -0
  343. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/ftp.yml +5 -5
  344. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/invalid_url.yml +5 -5
  345. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/sandbox_via_options.yml +5 -5
  346. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/sandbox_via_url.yml +6 -6
  347. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/string.yml +5 -5
  348. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/url.yml +5 -5
  349. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/url_with_utf-8.yml +5 -5
  350. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_ids/doi.yml +6 -6
  351. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_ids/url.yml +5 -5
  352. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_issn/from_array.yml +5 -5
  353. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_issn/from_empty_array.yml +5 -5
  354. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_issn/from_hash.yml +5 -5
  355. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_issn/from_string.yml +5 -5
  356. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_url/uri.yml +6 -6
  357. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_url/with_trailing_slash.yml +5 -5
  358. data/spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_url/with_trailing_slash_and_to_https.yml +6 -6
  359. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/array.yml +5 -5
  360. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/array_of_strings.yml +6 -6
  361. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/first.yml +6 -6
  362. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/hash.yml +5 -5
  363. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/nil.yml +5 -5
  364. data/spec/fixtures/vcr_cassettes/Briard_Metadata/parse_attributes/string.yml +5 -5
  365. data/spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/decode_anothe_doi.yml +6 -6
  366. data/spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/decode_doi.yml +5 -5
  367. data/spec/fixtures/vcr_cassettes/Briard_Metadata/random_doi/encode_doi.yml +5 -5
  368. data/spec/fixtures/vcr_cassettes/Briard_Metadata/sanitize/onlies_keep_specific_tags.yml +5 -5
  369. data/spec/fixtures/vcr_cassettes/Briard_Metadata/sanitize/removes_a_tags.yml +5 -5
  370. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/hsh_to_spdx_id.yml +6 -6
  371. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/hsh_to_spdx_not_found.yml +5 -5
  372. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/hsh_to_spdx_url.yml +6 -6
  373. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/name_to_spdx_exists.yml +6 -6
  374. data/spec/fixtures/vcr_cassettes/Briard_Metadata/spdx/name_to_spdx_id.yml +6 -6
  375. data/spec/fixtures/vcr_cassettes/Briard_Metadata/to_schema_org/with_id.yml +6 -6
  376. data/spec/fixtures/vcr_cassettes/Briard_Metadata/to_schema_org_identifiers/with_identifiers.yml +6 -6
  377. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_doi/doi.yml +6 -6
  378. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_10.yml +6 -6
  379. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_11.yml +5 -5
  380. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_12.yml +6 -6
  381. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_13.yml +5 -5
  382. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_14.yml +5 -5
  383. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_4.yml +5 -5
  384. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_5.yml +5 -5
  385. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_6.yml +5 -5
  386. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_7.yml +6 -6
  387. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_8.yml +5 -5
  388. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/1_7_9.yml +5 -5
  389. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/funder_doi.yml +5 -5
  390. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/funder_doi_without_prefix.yml +5 -5
  391. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_funder_doi/non-funder_doi.yml +5 -5
  392. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid.yml +5 -5
  393. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_https.yml +5 -5
  394. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_id.yml +6 -6
  395. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_sandbox.yml +5 -5
  396. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_sandbox_https.yml +6 -6
  397. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_with_spaces.yml +5 -5
  398. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_wrong_id.yml +6 -6
  399. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid/validate_orcid_www.yml +5 -5
  400. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid_scheme/validate_orcid_scheme.yml +5 -5
  401. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid_scheme/validate_orcid_scheme_https.yml +5 -5
  402. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid_scheme/validate_orcid_scheme_trailing_slash.yml +6 -6
  403. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_orcid_scheme/validate_orcid_scheme_www.yml +5 -5
  404. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_prefix/doi.yml +5 -5
  405. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_prefix/doi_as_url.yml +5 -5
  406. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_prefix/doi_with_protocol.yml +6 -6
  407. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_prefix/only_prefix.yml +5 -5
  408. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_url/DOI.yml +5 -5
  409. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_url/ISSN.yml +5 -5
  410. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_url/URL.yml +5 -5
  411. data/spec/fixtures/vcr_cassettes/Briard_Metadata/validate_url/string.yml +5 -5
  412. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/BlogPosting.yml +6 -6
  413. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/Dataset.yml +6 -6
  414. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/authors_with_affiliations.yml +5 -5
  415. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/climate_data.yml +6 -6
  416. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/from_schema_org.yml +16 -16
  417. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/keywords_subject_scheme.yml +6 -6
  418. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/maremma.yml +8 -8
  419. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/text.yml +6 -6
  420. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/with_data_citation.yml +5 -5
  421. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_bibtex/with_pages.yml +5 -5
  422. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/Collection_of_Jupyter_notebooks.yml +6 -6
  423. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_Zenodo.yml +6 -6
  424. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/SoftwareSourceCode_also_Zenodo.yml +6 -6
  425. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_cff/ruby-cff.yml +10 -10
  426. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Dataset.yml +6 -6
  427. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Journal_article.yml +5 -5
  428. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Journal_article_vancouver_style.yml +5 -5
  429. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/Missing_author.yml +5 -5
  430. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/interactive_resource_without_dates.yml +6 -6
  431. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citation/software_w/version.yml +6 -6
  432. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/Another_dataset.yml +6 -6
  433. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/BlogPosting.yml +6 -6
  434. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/BlogPosting_schema_org.yml +16 -16
  435. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/Dataset.yml +6 -6
  436. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/container_title.yml +6 -6
  437. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/interactive_resource_without_dates.yml +6 -6
  438. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/journal_article.yml +5 -5
  439. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/keywords_subject_scheme.yml +6 -6
  440. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/maremma.yml +8 -8
  441. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/missing_creator.yml +5 -5
  442. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/multiple_abstracts.yml +6 -6
  443. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/organization_author.yml +7 -7
  444. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/software.yml +6 -6
  445. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/software_w/version.yml +6 -6
  446. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/with_only_first_page.yml +5 -5
  447. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_citeproc/with_pages.yml +5 -5
  448. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite.yml +6 -6
  449. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_codemeta/SoftwareSourceCode_DataCite_check_codemeta_v2.yml +6 -6
  450. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crosscite/datacite_database_attributes.yml +6 -6
  451. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crosscite/maremma.yml +10 -10
  452. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crosscite/with_ORCID_ID.yml +7 -7
  453. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crosscite/with_data_citation.yml +5 -5
  454. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/another_schema_org_from_front-matter.yml +14 -14
  455. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/journal_article_from_datacite.yml +6 -6
  456. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/posted_content.yml +9 -9
  457. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_another_science_blog.yml +10 -10
  458. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_front_matter.yml +16 -16
  459. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/climate_data.yml +6 -6
  460. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/maremma.yml +8 -8
  461. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/text.yml +6 -6
  462. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/with_data_citation.yml +5 -5
  463. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_csv/with_pages.yml +7 -7
  464. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_json/from_schema_org.yml +16 -16
  465. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_json/maremma.yml +8 -8
  466. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_json/with_ORCID_ID.yml +7 -7
  467. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_json/with_data_citation.yml +5 -5
  468. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/DOI_not_found.yml +5 -5
  469. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/Dataset_in_schema_4_0.yml +6 -6
  470. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/Text_pass-thru.yml +6 -6
  471. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/Text_pass-thru_with_doi_in_options.yml +6 -6
  472. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/maremma.yml +8 -8
  473. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/with_ORCID_ID.yml +7 -7
  474. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/with_data_citation.yml +5 -5
  475. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/with_editor.yml +5 -5
  476. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_datacite_xml/with_version.yml +6 -6
  477. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/Dataset_in_schema_4_0.yml +6 -6
  478. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/Text_pass-thru.yml +6 -6
  479. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/book_chapter.yml +5 -5
  480. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/from_schema_org.yml +16 -16
  481. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/interactive_resource_without_dates.yml +6 -6
  482. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/maremma.yml +8 -8
  483. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/with_ORCID_ID.yml +5 -5
  484. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/with_data_citation.yml +5 -5
  485. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_jats_xml/with_editor.yml +5 -5
  486. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/BlogPosting.yml +6 -6
  487. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/BlogPosting_schema_org.yml +16 -16
  488. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/journal_article.yml +5 -5
  489. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/maremma.yml +8 -8
  490. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_rdf_xml/with_pages.yml +7 -7
  491. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/BlogPosting.yml +6 -6
  492. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/BlogPosting_schema_org.yml +16 -16
  493. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/Dataset.yml +6 -6
  494. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/alternate_name.yml +6 -6
  495. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/journal_article.yml +5 -5
  496. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/keywords_with_subject_scheme.yml +6 -6
  497. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/maremma.yml +10 -10
  498. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_ris/with_pages.yml +5 -5
  499. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Another_Schema_org_JSON.yml +6 -6
  500. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Funding.yml +10 -10
  501. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Funding_OpenAIRE.yml +10 -10
  502. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Schema_org_JSON.yml +6 -6
  503. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Schema_org_JSON_Cyark.yml +10 -10
  504. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/Schema_org_JSON_IsSupplementTo.yml +10 -10
  505. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/alternate_identifiers.yml +6 -6
  506. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/data_catalog.yml +6 -6
  507. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/geo_location_box.yml +6 -6
  508. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/interactive_resource_without_dates.yml +6 -6
  509. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/journal_article.yml +5 -5
  510. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/maremma_schema_org_JSON.yml +10 -10
  511. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/series_information.yml +6 -6
  512. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/subject_scheme.yml +6 -6
  513. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_schema_org/subject_scheme_multiple_keywords.yml +6 -6
  514. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/BlogPosting.yml +6 -6
  515. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/BlogPosting_schema_org.yml +16 -16
  516. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/Dataset.yml +6 -6
  517. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/journal_article.yml +5 -5
  518. data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_turtle/with_pages.yml +7 -7
  519. data/spec/metadata_spec.rb +27 -0
  520. data/spec/readers/crossref_json_reader_spec.rb +2 -4
  521. data/spec/readers/crossref_reader_spec.rb +2 -2
  522. data/spec/readers/datacite_json_reader_spec.rb +2 -2
  523. data/spec/readers/datacite_reader_spec.rb +36 -36
  524. data/spec/readers/npm_reader_spec.rb +3 -3
  525. data/spec/schema_utils_spec.rb +24 -0
  526. data/spec/utils_spec.rb +6 -0
  527. data/spec/writers/datacite_writer_spec.rb +6 -6
  528. metadata +39 -5
  529. data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_affiliation_and_country.yml +0 -66
@@ -43,7 +43,7 @@ describe Briard::Metadata, vcr: true do
43
43
  { 'subject' => 'mitochondrial genome' },
44
44
  { 'subject' => 'parasites' }])
45
45
  expect(subject.publisher).to eq('Dryad')
46
- expect(subject.agency).to eq('datacite')
46
+ expect(subject.agency).to eq('DataCite')
47
47
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
48
48
  end
49
49
 
@@ -78,7 +78,7 @@ describe Briard::Metadata, vcr: true do
78
78
  'subject' => 'FOS: Computer and information sciences',
79
79
  'subjectScheme' => 'Fields of Science and Technology (FOS)',
80
80
  'valueUri' => 'http://www.oecd.org/science/inno/38235147.pdf' }])
81
- expect(subject.agency).to eq('datacite')
81
+ expect(subject.agency).to eq('DataCite')
82
82
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
83
83
  end
84
84
 
@@ -101,7 +101,7 @@ describe Briard::Metadata, vcr: true do
101
101
  'subjectScheme' => 'DDC' }])
102
102
  expect(subject.publication_year).to eq('2013')
103
103
  expect(subject.publisher).to eq('Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik GmbH, Wadern/Saarbruecken, Germany')
104
- expect(subject.agency).to eq('datacite')
104
+ expect(subject.agency).to eq('DataCite')
105
105
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-2.1')
106
106
  end
107
107
 
@@ -163,7 +163,7 @@ describe Briard::Metadata, vcr: true do
163
163
  expect(subject.sizes).to eq(['4 kB'])
164
164
  expect(subject.formats).to eq(['application/xml'])
165
165
  expect(subject.publisher).to eq('DataCite')
166
- expect(subject.agency).to eq('datacite')
166
+ expect(subject.agency).to eq('DataCite')
167
167
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
168
168
  end
169
169
 
@@ -183,7 +183,7 @@ describe Briard::Metadata, vcr: true do
183
183
  { 'date' => '2016', 'dateType' => 'Issued' }])
184
184
  expect(subject.publication_year).to eq('2016')
185
185
  expect(subject.publisher).to eq('University of St Andrews')
186
- expect(subject.agency).to eq('datacite')
186
+ expect(subject.agency).to eq('DataCite')
187
187
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
188
188
  end
189
189
 
@@ -206,7 +206,7 @@ describe Briard::Metadata, vcr: true do
206
206
  expect(subject.sizes).to eq([])
207
207
  expect(subject.subjects).to eq([{ 'subject' => 'environmental research' }])
208
208
  expect(subject.publisher).to eq('EvK2 CNR Committee')
209
- expect(subject.agency).to eq('datacite')
209
+ expect(subject.agency).to eq('DataCite')
210
210
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-2.2')
211
211
  end
212
212
 
@@ -243,7 +243,7 @@ describe Briard::Metadata, vcr: true do
243
243
  { 'subject' => 'crossover experiment' },
244
244
  { 'subject' => 'hci' }])
245
245
  expect(subject.publisher).to eq('Zenodo')
246
- expect(subject.agency).to eq('datacite')
246
+ expect(subject.agency).to eq('DataCite')
247
247
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
248
248
  end
249
249
 
@@ -290,7 +290,7 @@ describe Briard::Metadata, vcr: true do
290
290
  'subject' => 'FOS: Biological sciences',
291
291
  'subjectScheme' => 'Fields of Science and Technology (FOS)' }
292
292
  ])
293
- expect(subject.agency).to eq('datacite')
293
+ expect(subject.agency).to eq('DataCite')
294
294
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
295
295
  end
296
296
 
@@ -323,7 +323,7 @@ describe Briard::Metadata, vcr: true do
323
323
  'subjectScheme' => 'Fields of Science and Technology (FOS)', 'schemeUri' => 'http://www.oecd.org/science/inno/38235147.pdf' },
324
324
  { 'subject' => '60412 Quantitative Genetics (incl. Disease and Trait Mapping Genetics)',
325
325
  'subjectScheme' => 'FOR', 'schemeUri' => 'http://www.abs.gov.au/ausstats/abs@.nsf/0/6BB427AB9696C225CA2574180004463E' }])
326
- expect(subject.agency).to eq('datacite')
326
+ expect(subject.agency).to eq('DataCite')
327
327
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
328
328
  end
329
329
 
@@ -385,7 +385,7 @@ describe Briard::Metadata, vcr: true do
385
385
  { 'subject' => 'data mining' },
386
386
  { 'subject' => 'statistical computing language r' },
387
387
  { 'subject' => 'funded research publications' }])
388
- expect(subject.agency).to eq('datacite')
388
+ expect(subject.agency).to eq('DataCite')
389
389
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
390
390
  end
391
391
 
@@ -434,7 +434,7 @@ describe Briard::Metadata, vcr: true do
434
434
  'funderName' => 'European Commission' }])
435
435
  expect(subject.identifiers).to eq([{ 'identifier' => '123',
436
436
  'identifierType' => 'Repository ID' }])
437
- expect(subject.agency).to eq('datacite')
437
+ expect(subject.agency).to eq('DataCite')
438
438
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
439
439
  expect(subject.state).to eq('findable')
440
440
  end
@@ -723,7 +723,7 @@ describe Briard::Metadata, vcr: true do
723
723
  'http://www.rcuk.ac.uk/research/efficiency/researchadmin/harmonisation/',
724
724
  'subject' => 'Materials Characterisation',
725
725
  'subjectScheme' => 'RCUK Research Classifications' }])
726
- expect(subject.agency).to eq('datacite')
726
+ expect(subject.agency).to eq('DataCite')
727
727
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
728
728
  end
729
729
 
@@ -752,7 +752,7 @@ describe Briard::Metadata, vcr: true do
752
752
  'funderIdentifier' => 'https://doi.org/10.13039/501100000780',
753
753
  'funderIdentifierType' => 'Crossref Funder ID',
754
754
  'funderName' => 'European Commission' }])
755
- expect(subject.agency).to eq('datacite')
755
+ expect(subject.agency).to eq('DataCite')
756
756
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
757
757
  end
758
758
 
@@ -777,7 +777,7 @@ describe Briard::Metadata, vcr: true do
777
777
  expect(subject.funding_references.length).to eq(1)
778
778
  expect(subject.funding_references.first).to eq('awardNumber' => 'проект № 170100728',
779
779
  'funderName' => 'РФФИ')
780
- expect(subject.agency).to eq('datacite')
780
+ expect(subject.agency).to eq('DataCite')
781
781
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
782
782
  end
783
783
 
@@ -804,7 +804,7 @@ describe Briard::Metadata, vcr: true do
804
804
  expect(subject.related_identifiers.length).to eq(3)
805
805
  expect(subject.related_identifiers.last).to eq('relatedIdentifier' => '10.5438/0000-00ss',
806
806
  'relatedIdentifierType' => 'DOI', 'relationType' => 'IsPartOf')
807
- expect(subject.agency).to eq('datacite')
807
+ expect(subject.agency).to eq('DataCite')
808
808
  end
809
809
 
810
810
  it 'Schema 4.1 from string' do
@@ -840,7 +840,7 @@ describe Briard::Metadata, vcr: true do
840
840
  'rightsUri' => 'https://creativecommons.org/licenses/by-nd/2.0/legalcode',
841
841
  'schemeUri' => 'https://spdx.org/licenses/' }])
842
842
  expect(subject.publisher).to eq('Springer')
843
- expect(subject.agency).to eq('datacite')
843
+ expect(subject.agency).to eq('DataCite')
844
844
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
845
845
  end
846
846
 
@@ -873,7 +873,7 @@ describe Briard::Metadata, vcr: true do
873
873
  'rightsUri' => 'https://creativecommons.org/licenses/by-nd/2.0/legalcode',
874
874
  'schemeUri' => 'https://spdx.org/licenses/' }])
875
875
  expect(subject.publisher).to eq('Springer')
876
- expect(subject.agency).to eq('datacite')
876
+ expect(subject.agency).to eq('DataCite')
877
877
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4.0')
878
878
  end
879
879
 
@@ -904,7 +904,7 @@ describe Briard::Metadata, vcr: true do
904
904
  'rightsUri' => 'https://creativecommons.org/publicdomain/zero/1.0/legalcode',
905
905
  'schemeUri' => 'https://spdx.org/licenses/' }])
906
906
  expect(subject.publisher).to eq('Dryad Digital Repository')
907
- expect(subject.agency).to eq('datacite')
907
+ expect(subject.agency).to eq('DataCite')
908
908
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-3')
909
909
  end
910
910
 
@@ -937,7 +937,7 @@ describe Briard::Metadata, vcr: true do
937
937
  'rightsUri' => 'https://creativecommons.org/licenses/by-nd/2.0/legalcode',
938
938
  'schemeUri' => 'https://spdx.org/licenses/' }])
939
939
  expect(subject.publisher).to eq('Springer')
940
- expect(subject.agency).to eq('datacite')
940
+ expect(subject.agency).to eq('DataCite')
941
941
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-3.0')
942
942
  end
943
943
 
@@ -965,7 +965,7 @@ describe Briard::Metadata, vcr: true do
965
965
  expect(subject.related_identifiers.last).to eq('relatedIdentifier' => '10.5272/oldertestpub',
966
966
  'relatedIdentifierType' => 'DOI', 'relationType' => 'IsPartOf')
967
967
  expect(subject.publisher).to eq('Springer')
968
- expect(subject.agency).to eq('datacite')
968
+ expect(subject.agency).to eq('DataCite')
969
969
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-2.2')
970
970
  end
971
971
 
@@ -1005,7 +1005,7 @@ describe Briard::Metadata, vcr: true do
1005
1005
  'rightsUri' => 'https://creativecommons.org/licenses/by-nd/2.0/legalcode',
1006
1006
  'schemeUri' => 'https://spdx.org/licenses/' }])
1007
1007
  expect(subject.publisher).to eq('Springer')
1008
- expect(subject.agency).to eq('datacite')
1008
+ expect(subject.agency).to eq('DataCite')
1009
1009
  end
1010
1010
 
1011
1011
  it 'namespaced xml from string' do
@@ -1024,7 +1024,7 @@ describe Briard::Metadata, vcr: true do
1024
1024
  { 'date' => '2018-07-18', 'dateType' => 'Accepted' }, { 'date' => '2018', 'dateType' => 'Issued' }])
1025
1025
  expect(subject.publication_year).to eq('2018')
1026
1026
  expect(subject.publisher).to eq('nanoHUB')
1027
- expect(subject.agency).to eq('datacite')
1027
+ expect(subject.agency).to eq('DataCite')
1028
1028
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-2.2')
1029
1029
  end
1030
1030
 
@@ -1055,7 +1055,7 @@ describe Briard::Metadata, vcr: true do
1055
1055
  expect(subject.titles).to eq([{ 'title' => 'CERES Level 3 Cloud Type Historgram Terra+Aqua HDF file - Edition4' }])
1056
1056
  expect(subject.publication_year).to eq('2016')
1057
1057
  expect(subject.publisher).to eq('NASA Langley Atmospheric Science Data Center DAAC')
1058
- expect(subject.agency).to eq('datacite')
1058
+ expect(subject.agency).to eq('DataCite')
1059
1059
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
1060
1060
  end
1061
1061
 
@@ -1103,7 +1103,7 @@ describe Briard::Metadata, vcr: true do
1103
1103
  { 'date' => '1996', 'dateType' => 'Issued' }])
1104
1104
  expect(subject.publication_year).to eq('1996')
1105
1105
  expect(subject.publisher).to eq('GESIS Data Archive')
1106
- expect(subject.agency).to eq('datacite')
1106
+ expect(subject.agency).to eq('DataCite')
1107
1107
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
1108
1108
  end
1109
1109
 
@@ -1129,7 +1129,7 @@ describe Briard::Metadata, vcr: true do
1129
1129
  expect(subject.subjects).to eq([{ 'subject' => 'pv systems' },
1130
1130
  { 'subject' => 'off-grid applications' }])
1131
1131
  expect(subject.publisher).to eq('WIP-Munich')
1132
- expect(subject.agency).to eq('datacite')
1132
+ expect(subject.agency).to eq('DataCite')
1133
1133
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-2.2')
1134
1134
  end
1135
1135
 
@@ -1165,7 +1165,7 @@ describe Briard::Metadata, vcr: true do
1165
1165
  expect(subject.dates).to eq([{ 'date' => '2017', 'dateType' => 'Issued' }])
1166
1166
  expect(subject.publication_year).to eq('2017')
1167
1167
  expect(subject.publisher).to eq('Siemens AG')
1168
- expect(subject.agency).to eq('datacite')
1168
+ expect(subject.agency).to eq('DataCite')
1169
1169
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-3')
1170
1170
  end
1171
1171
 
@@ -1207,7 +1207,7 @@ describe Briard::Metadata, vcr: true do
1207
1207
  { 'date' => '2015', 'dateType' => 'Issued' }])
1208
1208
  expect(subject.publication_year).to eq('2015')
1209
1209
  expect(subject.publisher).to eq('Royal Netherlands Meteorological Institute (KNMI)')
1210
- expect(subject.agency).to eq('datacite')
1210
+ expect(subject.agency).to eq('DataCite')
1211
1211
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
1212
1212
  end
1213
1213
 
@@ -1217,7 +1217,7 @@ describe Briard::Metadata, vcr: true do
1217
1217
  expect(subject.valid?).to be false
1218
1218
  expect(subject.id).to eq('https://doi.org/10.4124/05f6c379-dd68-4cdb-880d-33d3e9576d52/1')
1219
1219
  expect(subject.doi).to eq('10.4124/05f6c379-dd68-4cdb-880d-33d3e9576d52/1')
1220
- expect(subject.agency).to eq('datacite')
1220
+ expect(subject.agency).to eq('DataCite')
1221
1221
  expect(subject.state).to eq('not_found')
1222
1222
  end
1223
1223
 
@@ -1233,7 +1233,7 @@ describe Briard::Metadata, vcr: true do
1233
1233
  expect(subject.dates).to eq([{ 'date' => '2018-01-12', 'dateType' => 'Issued' }])
1234
1234
  expect(subject.publication_year).to eq('2018')
1235
1235
  expect(subject.publisher).to eq('CaltechDATA')
1236
- expect(subject.agency).to eq('datacite')
1236
+ expect(subject.agency).to eq('DataCite')
1237
1237
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
1238
1238
  expect(subject.state).to eq('findable')
1239
1239
  end
@@ -1250,7 +1250,7 @@ describe Briard::Metadata, vcr: true do
1250
1250
  expect(subject.dates).to eq([{ 'date' => '2018', 'dateType' => 'Issued' }])
1251
1251
  expect(subject.publication_year).to eq('2018')
1252
1252
  expect(subject.publisher).to eq('F1000 Research Limited')
1253
- expect(subject.agency).to eq('datacite')
1253
+ expect(subject.agency).to eq('DataCite')
1254
1254
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-3')
1255
1255
  expect(subject.state).to eq('findable')
1256
1256
  end
@@ -1269,7 +1269,7 @@ describe Briard::Metadata, vcr: true do
1269
1269
  expect(subject.titles).to eq([{ 'title' => 'Referee report. For: Gates - add article keywords to the metatags [version 2; referees: 1 approved]' }])
1270
1270
  expect(subject.publication_year).to eq('2018')
1271
1271
  expect(subject.publisher).to eq('Gates Open Research')
1272
- expect(subject.agency).to eq('datacite')
1272
+ expect(subject.agency).to eq('DataCite')
1273
1273
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-3')
1274
1274
  end
1275
1275
 
@@ -1371,7 +1371,7 @@ describe Briard::Metadata, vcr: true do
1371
1371
  { 'date' => '2009-10-01/2014-01-23', 'dateType' => 'Created' }])
1372
1372
  expect(subject.publication_year).to eq('2014')
1373
1373
  expect(subject.publisher).to eq('Deutsches Elektronen-Synchrotron, DESY, Hamburg')
1374
- expect(subject.agency).to eq('datacite')
1374
+ expect(subject.agency).to eq('DataCite')
1375
1375
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-3')
1376
1376
  end
1377
1377
 
@@ -1396,7 +1396,7 @@ describe Briard::Metadata, vcr: true do
1396
1396
  expect(subject.funding_references.count).to eq(1)
1397
1397
  expect(subject.funding_references.first).to eq('awardNumber' => 'проект № 170100728',
1398
1398
  'funderName' => 'РФФИ')
1399
- expect(subject.agency).to eq('datacite')
1399
+ expect(subject.agency).to eq('DataCite')
1400
1400
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
1401
1401
  end
1402
1402
 
@@ -1507,7 +1507,7 @@ describe Briard::Metadata, vcr: true do
1507
1507
  'title' => 'Meteo measurements at the Sand Motor' }])
1508
1508
  expect(subject.publication_year).to eq('2017')
1509
1509
  expect(subject.publisher).to eq('4TU.Centre for Research Data')
1510
- expect(subject.agency).to eq('datacite')
1510
+ expect(subject.agency).to eq('DataCite')
1511
1511
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
1512
1512
  expect(subject.geo_locations.first['geoLocationPlace']).to eq('Zandmotor, sand suppletion area on the Dutch coast.')
1513
1513
  expect(subject.geo_locations.first['geoLocationPolygon'].first).to eq('polygonPoint' => {
@@ -1579,7 +1579,7 @@ describe Briard::Metadata, vcr: true do
1579
1579
  }
1580
1580
  ])
1581
1581
  expect(subject.publisher).to eq('DataCite')
1582
- expect(subject.agency).to eq('datacite')
1582
+ expect(subject.agency).to eq('DataCite')
1583
1583
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
1584
1584
  expect(subject.related_items.last).to eq(
1585
1585
  {
@@ -1773,7 +1773,7 @@ describe Briard::Metadata, vcr: true do
1773
1773
  }
1774
1774
  ])
1775
1775
  expect(subject.publisher).to eq('GigaScience Database')
1776
- expect(subject.agency).to eq('datacite')
1776
+ expect(subject.agency).to eq('DataCite')
1777
1777
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
1778
1778
  end
1779
1779
 
@@ -16,7 +16,7 @@ describe Briard::Metadata, vcr: true do
16
16
  context 'get npm metadata' do
17
17
  it 'minimal' do
18
18
  expect(subject.valid?).to be false
19
- expect(subject.errors.first).to start_with("3:0: ERROR: Element '{http://datacite.org/schema/kernel-4}identifier'")
19
+ expect(subject.errors.first).to eq("root is missing required keys: id, publisher, publication_year")
20
20
  # expect(subject.identifiers).to eq([{"identifier"=>"https://doi.org/10.5438/4k3m-nyvg", "identifierType"=>"DOI"}])
21
21
  # expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
22
22
  expect(subject.types).to eq('bibtex' => 'misc', 'citeproc' => 'article',
@@ -34,7 +34,7 @@ describe Briard::Metadata, vcr: true do
34
34
  input = "#{fixture_path}cit_package.json"
35
35
  subject = described_class.new(input: input, from: 'npm')
36
36
  expect(subject.valid?).to be false
37
- expect(subject.errors.first).to start_with("3:0: ERROR: Element '{http://datacite.org/schema/kernel-4}identifier'")
37
+ expect(subject.errors.first).to eq("root is missing required keys: id, publisher, publication_year")
38
38
  # expect(subject.identifiers).to eq([{"identifier"=>"https://doi.org/10.5438/4k3m-nyvg", "identifierType"=>"DOI"}])
39
39
  # expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
40
40
  expect(subject.types).to eq('bibtex' => 'misc', 'citeproc' => 'article',
@@ -52,7 +52,7 @@ describe Briard::Metadata, vcr: true do
52
52
  input = "#{fixture_path}edam_package.json"
53
53
  subject = described_class.new(input: input, from: 'npm')
54
54
  expect(subject.valid?).to be false
55
- expect(subject.errors.first).to start_with("3:0: ERROR: Element '{http://datacite.org/schema/kernel-4}identifier'")
55
+ expect(subject.errors.first).to eq("root is missing required keys: id, publisher, publication_year")
56
56
  # expect(subject.identifiers).to eq([{"identifier"=>"https://doi.org/10.5438/4k3m-nyvg", "identifierType"=>"DOI"}])
57
57
  # expect(subject.url).to eq("https://blog.datacite.org/eating-your-own-dog-food")
58
58
  expect(subject.types).to eq('bibtex' => 'misc', 'citeproc' => 'article',
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ describe Briard::Metadata, vcr: true do
6
+ subject { described_class.new(input: input, from: 'crossref') }
7
+
8
+ let(:input) { 'https://doi.org/10.1101/097196' }
9
+
10
+ context 'json_schema_errors' do
11
+ it 'is_valid' do
12
+ response = subject.json_schema_errors
13
+ expect(response).to be_nil
14
+ end
15
+
16
+ it 'no creator' do
17
+ input = "#{fixture_path}datacite_missing_creator.xml"
18
+ subject = described_class.new(input: input, regenerate: true)
19
+ expect(subject.creators).to be_empty
20
+ expect(subject.valid?).to be false
21
+ expect(subject.json_schema_errors).to be nil
22
+ end
23
+ end
24
+ end
data/spec/utils_spec.rb CHANGED
@@ -191,6 +191,12 @@ describe Briard::Metadata, vcr: true do
191
191
  expect(response.nil?).to be(true)
192
192
  end
193
193
 
194
+ it 'filename' do
195
+ url = 'crossref.xml'
196
+ response = subject.normalize_id(url)
197
+ expect(response.nil?).to be(true)
198
+ end
199
+
194
200
  it 'sandbox via url' do
195
201
  url = 'https://handle.stage.datacite.org/10.20375/0000-0001-ddb8-7'
196
202
  response = subject.normalize_id(url)
@@ -187,7 +187,7 @@ describe Briard::Metadata, vcr: true do
187
187
  expect(subject.publication_year).to eq('2015')
188
188
  expect(subject.version_info).to eq('v0.3.2')
189
189
  expect(subject.publisher).to eq('Zenodo')
190
- expect(subject.agency).to eq('datacite')
190
+ expect(subject.agency).to eq('DataCite')
191
191
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
192
192
  expect(subject.datacite).to include('<version>v0.3.2</version>')
193
193
  end
@@ -216,7 +216,7 @@ describe Briard::Metadata, vcr: true do
216
216
  { 'schemeUri' => 'http://www.oecd.org/science/inno/38235147.pdf',
217
217
  'subject' => 'FOS: Computer and information sciences',
218
218
  'subjectScheme' => 'Fields of Science and Technology (FOS)' }])
219
- expect(subject.agency).to eq('datacite')
219
+ expect(subject.agency).to eq('DataCite')
220
220
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-3')
221
221
  expect(subject.datacite).to end_with('</resource>')
222
222
  end
@@ -245,7 +245,7 @@ describe Briard::Metadata, vcr: true do
245
245
  { 'schemeUri' => 'http://www.oecd.org/science/inno/38235147.pdf',
246
246
  'subject' => 'FOS: Computer and information sciences',
247
247
  'subjectScheme' => 'Fields of Science and Technology (FOS)' }])
248
- expect(subject.agency).to eq('datacite')
248
+ expect(subject.agency).to eq('DataCite')
249
249
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-3')
250
250
  expect(subject.datacite).to end_with('</resource>')
251
251
  end
@@ -273,7 +273,7 @@ describe Briard::Metadata, vcr: true do
273
273
  expect(subject.related_identifiers.last).to eq('relatedIdentifier' => '10.1371/journal.ppat.1000446',
274
274
  'relatedIdentifierType' => 'DOI', 'relationType' => 'IsCitedBy')
275
275
  expect(subject.publisher).to eq('Dryad')
276
- expect(subject.agency).to eq('datacite')
276
+ expect(subject.agency).to eq('DataCite')
277
277
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
278
278
 
279
279
  datacite = Maremma.from_xml(subject.datacite).fetch('resource', {})
@@ -301,7 +301,7 @@ describe Briard::Metadata, vcr: true do
301
301
  { 'date' => '2016-03-14T17:02:02Z', 'dateType' => 'Available' }, { 'date' => '2013', 'dateType' => 'Issued' }])
302
302
  expect(subject.publication_year).to eq('2013')
303
303
  expect(subject.publisher).to eq('UC Merced')
304
- expect(subject.agency).to eq('datacite')
304
+ expect(subject.agency).to eq('DataCite')
305
305
  expect(subject.schema_version).to eq('http://datacite.org/schema/kernel-4')
306
306
 
307
307
  datacite = Maremma.from_xml(subject.datacite).fetch('resource', {})
@@ -315,7 +315,7 @@ describe Briard::Metadata, vcr: true do
315
315
  expect(subject.valid?).to be false
316
316
  expect(subject.id).to eq('https://doi.org/10.4124/05f6c379-dd68-4cdb-880d-33d3e9576d52/1')
317
317
  expect(subject.doi).to eq('10.4124/05f6c379-dd68-4cdb-880d-33d3e9576d52/1')
318
- expect(subject.agency).to eq('datacite')
318
+ expect(subject.agency).to eq('DataCite')
319
319
  expect(subject.state).to eq('not_found')
320
320
  datacite = Maremma.from_xml(subject.datacite).fetch('resource', {})
321
321
  expect(datacite['identifier']).to eq('identifierType' => 'DOI',
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: briard
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.8.1
4
+ version: 2.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Fenner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-11-22 00:00:00.000000000 Z
11
+ date: 2022-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -290,6 +290,20 @@ dependencies:
290
290
  - - "~>"
291
291
  - !ruby/object:Gem::Version
292
292
  version: 0.3.0
293
+ - !ruby/object:Gem::Dependency
294
+ name: json_schemer
295
+ requirement: !ruby/object:Gem::Requirement
296
+ requirements:
297
+ - - "~>"
298
+ - !ruby/object:Gem::Version
299
+ version: 0.2.23
300
+ type: :runtime
301
+ prerelease: false
302
+ version_requirements: !ruby/object:Gem::Requirement
303
+ requirements:
304
+ - - "~>"
305
+ - !ruby/object:Gem::Version
306
+ version: 0.2.23
293
307
  - !ruby/object:Gem::Dependency
294
308
  name: loofah
295
309
  requirement: !ruby/object:Gem::Requirement
@@ -747,6 +761,7 @@ files:
747
761
  - lib/briard/readers/npm_reader.rb
748
762
  - lib/briard/readers/ris_reader.rb
749
763
  - lib/briard/readers/schema_org_reader.rb
764
+ - lib/briard/schema_utils.rb
750
765
  - lib/briard/string.rb
751
766
  - lib/briard/utils.rb
752
767
  - lib/briard/version.rb
@@ -790,6 +805,7 @@ files:
790
805
  - resources/datacite-relationType-v4.xsd
791
806
  - resources/datacite-resourceType-v4.xsd
792
807
  - resources/datacite-titleType-v4.xsd
808
+ - resources/json-schema/briard_schema.json
793
809
  - resources/kernel-2.1/include/datacite-contributorType-v1.1.xsd
794
810
  - resources/kernel-2.1/include/datacite-contributorType-v2.xsd
795
811
  - resources/kernel-2.1/include/datacite-dateType-v1.1.xsd
@@ -990,6 +1006,11 @@ files:
990
1006
  - spec/fixtures/schema_org_tdl_iodp_invalid_authors.json
991
1007
  - spec/fixtures/schema_org_topmed.json
992
1008
  - spec/fixtures/schema_org_type_as_array.json
1009
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/default.yml
1010
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/to_bibtex.yml
1011
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/to_crossref.yml
1012
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/to_datacite.yml
1013
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_file/crossref_json/to_schema_org.yml
993
1014
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/default.yml
994
1015
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_bibtex.yml
995
1016
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_citation.yml
@@ -997,6 +1018,12 @@ files:
997
1018
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_datacite.yml
998
1019
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_jats.yml
999
1020
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref/to_schema_org.yml
1021
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/default.yml
1022
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_bibtex.yml
1023
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_citation.yml
1024
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_crossref.yml
1025
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_datacite.yml
1026
+ - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/crossref_json/to_schema_org.yml
1000
1027
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/default.yml
1001
1028
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_bibtex.yml
1002
1029
  - spec/fixtures/vcr_cassettes/Briard_CLI/convert_from_id/datacite/to_citation.yml
@@ -1034,7 +1061,6 @@ files:
1034
1061
  - spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/https_url.yml
1035
1062
  - spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/test_resolver.yml
1036
1063
  - spec/fixtures/vcr_cassettes/Briard_Metadata/datacite_api_url/test_resolver_http.yml
1037
- - spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/crossref_api_url.yml
1038
1064
  - spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/doi.yml
1039
1065
  - spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/doi_with_special_characters.yml
1040
1066
  - spec/fixtures/vcr_cassettes/Briard_Metadata/doi_from_url/not_a_doi.yml
@@ -1068,11 +1094,15 @@ files:
1068
1094
  - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/codemeta.yml
1069
1095
  - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/crosscite.yml
1070
1096
  - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/crossref.yml
1097
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/crossref_json.yml
1071
1098
  - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/datacite.yml
1072
1099
  - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/datacite_json.yml
1073
1100
  - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/ris.yml
1074
1101
  - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_file/schema_org.yml
1075
1102
  - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_string/crosscite.yml
1103
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_string/crossref.yml
1104
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_string/crossref_json.yml
1105
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/find_from_format_from_string/datacite.yml
1076
1106
  - spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_for_match.yml
1077
1107
  - spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_for_with_schemeUri_in_hash.yml
1078
1108
  - spec/fixtures/vcr_cassettes/Briard_Metadata/fos/hsh_to_fos_match.yml
@@ -1130,6 +1160,7 @@ files:
1130
1160
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/vor_with_url.yml
1131
1161
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/yet_another_book.yml
1132
1162
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_metadata/yet_another_book_chapter.yml
1163
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_json_raw/journal_article.yml
1133
1164
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_ORCID_ID.yml
1134
1165
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_SICI_DOI.yml
1135
1166
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_crossref_metadata/DOI_with_data_citation.yml
@@ -1230,7 +1261,6 @@ files:
1230
1261
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/multiple_author_names_in_one_field.yml
1231
1262
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/multiple_name_identifier.yml
1232
1263
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_affiliation.yml
1233
- - spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_affiliation_and_country.yml
1234
1264
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_affiliation_crossref.yml
1235
1265
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/name_with_role.yml
1236
1266
  - spec/fixtures/vcr_cassettes/Briard_Metadata/get_one_author/only_familyName_and_givenName.yml
@@ -1270,12 +1300,14 @@ files:
1270
1300
  - spec/fixtures/vcr_cassettes/Briard_Metadata/insert_version/insert.yml
1271
1301
  - spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_comma.yml
1272
1302
  - spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_family_name.yml
1273
- - spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_family_name_crossref.yml
1274
1303
  - spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_id.yml
1275
1304
  - spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_known_given_name.yml
1276
1305
  - spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_no_info.yml
1277
1306
  - spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_orcid_id.yml
1278
1307
  - spec/fixtures/vcr_cassettes/Briard_Metadata/is_personal_name_/has_type_organization.yml
1308
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/json_schema_errors/doi_not_found.yml
1309
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/json_schema_errors/is_valid.yml
1310
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/json_schema_valid_/is_valid.yml
1279
1311
  - spec/fixtures/vcr_cassettes/Briard_Metadata/jsonlint/missing_comma.yml
1280
1312
  - spec/fixtures/vcr_cassettes/Briard_Metadata/jsonlint/nil.yml
1281
1313
  - spec/fixtures/vcr_cassettes/Briard_Metadata/jsonlint/overlapping_keys.yml
@@ -1297,6 +1329,7 @@ files:
1297
1329
  - spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_doi/url_with_one_slash.yml
1298
1330
  - spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/doi.yml
1299
1331
  - spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/doi_as_url.yml
1332
+ - spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/filename.yml
1300
1333
  - spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/ftp.yml
1301
1334
  - spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/invalid_url.yml
1302
1335
  - spec/fixtures/vcr_cassettes/Briard_Metadata/normalize_id/sandbox_via_options.yml
@@ -1487,6 +1520,7 @@ files:
1487
1520
  - spec/readers/npm_reader_spec.rb
1488
1521
  - spec/readers/ris_reader_spec.rb
1489
1522
  - spec/readers/schema_org_reader_spec.rb
1523
+ - spec/schema_utils_spec.rb
1490
1524
  - spec/spec_helper.rb
1491
1525
  - spec/utils_spec.rb
1492
1526
  - spec/writers/bibtex_writer_spec.rb