briard 2.9.0 → 2.9.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +21 -21
- data/lib/briard/readers/schema_org_reader.rb +24 -7
- data/lib/briard/version.rb +1 -1
- data/resources/json-schema/briard_schema.json +110 -15
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/BlogPosting.yml +18 -18
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/BlogPosting_with_new_DOI.yml +22 -22
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/get_schema_org_metadata_front_matter/BlogPosting.yml +22 -22
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/harvard_dataverse.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/pangaea.yml +10 -10
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/get_schema_org_metadata/zenodo.yml +8 -8
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/another_schema_org_from_front-matter.yml +22 -22
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/journal_article_from_datacite.yml +6 -6
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/posted_content.yml +9 -9
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_another_science_blog.yml +9 -9
- data/spec/fixtures/vcr_cassettes/Briard_Metadata/write_metadata_as_crossref/schema_org_from_front_matter.yml +22 -22
- data/spec/metadata_spec.rb +1 -0
- data/spec/readers/crossref_json_reader_spec.rb +1 -1
- data/spec/readers/schema_org_reader_spec.rb +26 -3
- data/spec/writers/crossref_writer_spec.rb +1 -1
- metadata +2 -2
@@ -27,7 +27,7 @@ http_interactions:
|
|
27
27
|
Status:
|
28
28
|
- 301 Moved Permanently
|
29
29
|
X-Request-Id:
|
30
|
-
-
|
30
|
+
- 363b63df24b0e06cae90885a6db6bc1e, 363b63df24b0e06cae90885a6db6bc1e
|
31
31
|
Location:
|
32
32
|
- "/posts/editorial-by-more-than-200-call-for-emergency-action-to-limit-global-temperature-increases-restore-biodiversity-and-protect-health/"
|
33
33
|
Ghost-Cache:
|
@@ -41,17 +41,17 @@ http_interactions:
|
|
41
41
|
Accept-Ranges:
|
42
42
|
- bytes
|
43
43
|
Date:
|
44
|
-
-
|
44
|
+
- Thu, 12 Jan 2023 18:32:09 GMT
|
45
45
|
Age:
|
46
|
-
- '
|
46
|
+
- '743480'
|
47
47
|
X-Served-By:
|
48
|
-
- cache-ams21049-AMS, cache-
|
48
|
+
- cache-ams21049-AMS, cache-lis1490030-LIS
|
49
49
|
X-Cache:
|
50
|
-
- HIT,
|
50
|
+
- HIT, MISS
|
51
51
|
X-Cache-Hits:
|
52
|
-
-
|
52
|
+
- 6, 0
|
53
53
|
X-Timer:
|
54
|
-
-
|
54
|
+
- S1673548329.026648,VS0,VE48
|
55
55
|
Vary:
|
56
56
|
- Cookie
|
57
57
|
Ghost-Fastly:
|
@@ -62,7 +62,7 @@ http_interactions:
|
|
62
62
|
encoding: ASCII-8BIT
|
63
63
|
string: ''
|
64
64
|
http_version:
|
65
|
-
recorded_at:
|
65
|
+
recorded_at: Thu, 12 Jan 2023 18:32:08 GMT
|
66
66
|
- request:
|
67
67
|
method: get
|
68
68
|
uri: https://blog.front-matter.io/posts/editorial-by-more-than-200-call-for-emergency-action-to-limit-global-temperature-increases-restore-biodiversity-and-protect-health/
|
@@ -84,19 +84,19 @@ http_interactions:
|
|
84
84
|
Connection:
|
85
85
|
- keep-alive
|
86
86
|
Content-Length:
|
87
|
-
- '
|
87
|
+
- '6933'
|
88
88
|
Server:
|
89
89
|
- openresty
|
90
90
|
Content-Type:
|
91
91
|
- text/html; charset=utf-8
|
92
92
|
Status:
|
93
93
|
- 200 OK
|
94
|
-
Content-Encoding:
|
95
|
-
- gzip
|
96
94
|
X-Request-Id:
|
97
|
-
-
|
95
|
+
- d25d1d37abe1be5b02a96de76e54f06e, d25d1d37abe1be5b02a96de76e54f06e
|
98
96
|
Etag:
|
99
|
-
- W/"
|
97
|
+
- W/"7d9b-SsAkYoRzi7dvOtHl/x231Ew2zFk"
|
98
|
+
Content-Encoding:
|
99
|
+
- gzip
|
100
100
|
Ghost-Cache:
|
101
101
|
- MISS
|
102
102
|
Cache-Control:
|
@@ -108,19 +108,19 @@ http_interactions:
|
|
108
108
|
Accept-Ranges:
|
109
109
|
- bytes
|
110
110
|
Date:
|
111
|
-
-
|
111
|
+
- Thu, 12 Jan 2023 18:32:09 GMT
|
112
112
|
Age:
|
113
|
-
- '
|
113
|
+
- '0'
|
114
114
|
X-Served-By:
|
115
|
-
- cache-
|
115
|
+
- cache-ams21081-AMS, cache-lis1490035-LIS
|
116
116
|
X-Cache:
|
117
|
-
-
|
117
|
+
- MISS, MISS
|
118
118
|
X-Cache-Hits:
|
119
|
-
-
|
119
|
+
- 0, 0
|
120
120
|
X-Timer:
|
121
|
-
-
|
121
|
+
- S1673548329.135335,VS0,VE479
|
122
122
|
Vary:
|
123
|
-
- Accept-Encoding
|
123
|
+
- Cookie, Accept-Encoding
|
124
124
|
Ghost-Fastly:
|
125
125
|
- 'true'
|
126
126
|
Alt-Svc:
|
@@ -128,7 +128,7 @@ http_interactions:
|
|
128
128
|
body:
|
129
129
|
encoding: ASCII-8BIT
|
130
130
|
string: !binary |-
|
131
|
-
H4sIAAAAAAAAA+
|
131
|
+
H4sIAAAAAAAAA+wabXPbtvm7fwXG3ZrtKogv1nstN4nbrP2QJtek1+vWXQ4kIRIOCbAAKFnttb9pv2G/bA9AUiZlSpZz2S25iy+OReB5fwfEiz999eLq9U8vv0apzrPLswvzB2WEJ0uHcufyDFYoiS/PEPxc5FQTFKVEKqqXTqlXeOa0tzjJ6dJZM7ophNQOigTXlAPohsU6XcZ0zSKK7cMAMc40IxlWEcno0m8IaaYzevl1zLSQsI3CLcqFpEinhKPA8xDIk+kUXYtScpKpBboiWYZWQiKaU5lQHm0RiTQTHGmBMpYzjZJMhEBL07ygkugS6DEeSUoUVQMkqdKGRchEzNZUKqa3A0R4jAopNI10zfPCrYSrBM0Yfwuo2dJReptRlVIKKqeSrpZOqnWhFq4bZiIZriSYAedEayqHTLhEgfmUG5Ys064CKSgfRkp9uV4G57Nzfx5PSGQsv2/XiGli1HoTC9aybcMLVodCJq7vDcfn03PflXP+y80kxfMp+WU6WmOSTMNNj792dK12LcofpBOOKUBCpSWwbenw/JjYIFtMtqgow4yB/2Jgh+hOaYhL8HFitSqNTrql0ltKC0RATpLQo5qhkGZig/zh+D//vhqgFAQAeSiKQV9ZVvTECjQxaH0KD9FrAG+LxYEm2IvElcFvSF5kFKCB7V9vdSl5TCUi6OoKP/0JvSgoR0+iiCoF7ogoV/RvFTcjzKoE7wGePmrdUqdCtm1LpGYcPaOcU3kMMya6HVeBF/jYm2Nv4rhHsN7S7UbIWLUwv6MbdRSn9uydUH5mchA9tzl4lIApfSX4tIVb1cGDGEwp3lZuOprj+Xwc9CHF0ZDFAMZWjMr3mcNA2MSbPuIf1KM2oH0cSX9AeEiiSLLCsPyU8++c84eMezBrDyCoMrymnepr8/UAdH+mATCA9sGD3tBDW9Ca3mjXzCsWqVcg8Hl0sAwcSoht0UYxORSZDOmHlixJtepJZZuOENORyHPBlU3r2gnQ+7fuaOi5GU1IFom4or4/VrDIRPUJA0XN22U5mFO5iv1K3U0wnqTw64LbAtcPXHC7FCzGUSpFTrE/D27gd1jwxEFGZeBn0F274N6ZcSACBWeQHvsSnViy+swHdKiUnULIBW5W8SalHMdiwxNJYtonFCRB5f8TjFQIBUPXLqVwuMWmumFTJzDUCWxSH0OQ4V0xw1XqYy2wLWa4ynncynm8y3lc1zLcrmUYrI7r1MZVarsgtLtTpmUTAAOqert0RLIAZPrGWOm04O3gnhTAXYyPsAd0FPjUB95/H+gYuJTZu48rR+jamtND+ZQ6ZyubN3WLVECG+uPpbOSdz2b+fDLF3my0ms9m45BOR8PrgiYHhajTY7EzHsyOeX/fe+1NF2Nv4Y2Hnuf9416KOcQzzHl9BAMQECR+7c8X3mgxDk4jqElyqLfeqa16w4zZFhGRcQtJlXlO5BbGXAjqN7X1e0pzg/4xVoauBp9Kw/9qRGws/B5rQ5fw/6s4dKXICLjKb4nxozQbYO3t8cAjmvgPOo11OAbtzs+yxnP3sgxOGb8bBDNmtOAfW6O+eZPfO2NYKy/sTV6nsnne/VgpNTNzC82fTyd7lazK2XowJUUBsWlP224Wf36thDmR/2YhnceWzI12FmgXICpKaU5M+DmDGsoORQDypJ6G6vUmLyTsVQS74C9kQjj71fKucSyAHc1gvzOTtfZNTrQE6o3YNjzsi44IXTG+NYZ7UZ2uBl2YUzj15QYcCQxTewDYI1m5dWFK495O7boFOvd3G7/bT7/XBq0vifqt+RJqeL8du8nRAqhqwPuwzGazGcJJYg05IodwKnOrj+4MDhdkOiXxdOTNppPVOApn58FqHsSj+cqbxV+qZTD2PpPLm8/iZV4cNNb4oLFg69ZaDwySyp5ubu3TCRkFpnuigMA/99jW5ISMWGxLMGSlh+H3HPsjf46DkTd2djj/6rjPXPZDd7Om/TB7fS3oKbb7YI58jdDmRuVl04mN+AdnyxbC83qMrOH7R8ca/m623Jcp71w/Tu6tLV6twtJKlttEMY2gE467K2CQ0Dazxi6toc5Uj0/T3EOmOSNKYQ8VrIDOBtrvbFXzXQkgbJkNf+Y/cyNbYu6zQB0gZT4Z89QWsdJEjdmZssxMyDBegogrwjJjLGAKvsxilIFSkCs7AxvwHuNKpmjHrpUiYlcqOGnCISeMfw389PbF6uXhDPiRhna3FXqPWXx/n65C8qxqdBduFXo9t/sQPUb4zh3831MoQmg8DOa9F1gZ8OD2nvXuqCOV+vzG3G7ZQ9j+/c8JV15A4PamqRmpYnO9hpSMWleVMR9eq5hmbC2HnGo3MUK75jtckj3+IxgG526Zx/XCMGcG3EFm2sQW9B45alBI5qUTe/GYkDCKvBWUC3927k3j8Xw0Cic1FCnYLbkOJcvK0KvEA8BdYQKDS6EU5E7COFiRC77NRamcy527Luy3tIjF4KcU5zQPIQZx9dWtcwnEsWkXuCzsbSOOQJSa+uCsb7eOsJipIiPbBVpl9OYLu2Q+4ZhJavN+AbGQlTmv9kjGEo5h6s6haUKCgl41klF0RXKWAS1swoBitVUAOEBPTcA8J9Er+/wMIAfo0SuaCIp++PbRAH0vQijEA/TiZgshOEA/hCXX5QCaMocBh2YZgNvS8IpwBfCPvqHZmkL6E/QdLSmsKNjAikq2qqQxAzW2snaltAUc6rTn/aVaAN2EXKA/r+xPSxVzCQ2AkwKM8vtZrwUb+9aWDKHQU4lhl5VgnFlRm7MgcQw1aoFGXnGDRuvNQYIoDWpa94gV7Ihn1IQWVgWJLA/sDYNmD2YuiKYF8vbk8A4LUNT8G9TAiOw9hILKzST1W78hj0l8iCA5YpKohHkcFgvB9iJxY1vyAo29WvZQ3GCVklhsFgiyi7biJKaRkKSKdduPzAB5RKBFKqClHhFLGN005IE3nL137mY11Hw/faFwRW9rZiR6m0jTAffkusPvVpSdw2e9Djer/i7o9iJ91Kz3+rvjjol3JHQa1Tr2bdlyHgAu1ENT8i6bdkDUlkfddnCthjC1sILaU9L63G1V0XdsJUrEAuoLkVH6+A9/6Nt20lrs9pTTGkVVut+NtRkYzDs3DalbmPt6zwmd5pCN3GpQcs2VrKo13nvpZ49G/ytG1aRgv/20KlSTwF3qPe8U3SeZyHMoyFCYoYH0i9jq+rgGVzV8t3X3TgJ12617d4XtVtinRFkjZ0UGA1nJwtLk4knm7BC0esTCRMLS6RPW6UY2lIlSsTCjRo9r1Xq+vjtmXC6kENDYcG0pEkWVXati543nk8n8i10ynl241Vt2ZxehiLcoyoiCyLYZbkbiDCZEpEmCOZyBYMI258oYEgAKFQzYKal7NzbI4OULOIw2NKAk2Eu+ZlxN7fDdjEHmyWmBmmcEf0Wpd2/0WLQuRcuemasaA8xar/8cQwglDPB7cEdh8UbCIHSH9g6P7GPZW7QTJuMDBHeEWZ50nf9Ot2ow7O1/a3tAEZf0WMUFs/QsQ7xrOE223GvrlnUESGQaQCdJq22Iy3WC4DTB64pZX4htzu0NkTmQuwDhoBXLMvM1PIcjiXmR86m4WTrQ0FAwgn+QE1qKt+b1p1JKUP7KRHSzWr3ZuXQCBzWfPHCH7V328+UFnDfTBto06ogUS8f2Wqe9fC1MVtbrEKrPAx8FfoYneJIHeEymaAoi+T72R/C3evJ88/CryUXDxaTkOoH/K4OdYsnQXABI5wBO7ZDuGid3QheKWtkX5WXWQAKSs6vwrUW8ovboCxKQU853UBHcGgWq57PqkwmmCzdjvQxM/XgIdQMPpM3Vy1G6OTQmGHSwpPbF3wdw6GICr+fVAvreLhzlCqVBFeaUtX6QyVpowO/l7dNRZnZCNhnxEFY7JGD0bfP5KBvzdvWDDGgRgPyV+XuUtIoY5RHFKbSNh3Bo4wGjV9Uj+gYe7/L7LwAAAP//7Fxtc9s2Ev6eX4FRZ+7iGVMWSUmWrrHvnKiXKlO7vThNrv0GiqDEmG8lSMnqh/s/9zful93uApQoiZTEjJNJxs54YhPE62IB7PPsgqX2nDi+g3ltKrNSMWjtJTyBLmzK7cVZHmyvxDNocjut4mBR5J6s24mfdtcH2l3r5K8twAMnMJXePd7BHC6O9+80G3Um/WnkF5Oi0sBcVomXt/Cb+VHlAXu4PYSJGi0i3kp9DJ1QKlDRiTyp6AQkXt7mDhqHjqjtRsVZv5VUelS2oki1sj97gSZsqev4WDbddPRIKUeRgvblyqxsbS8ebSnuFDP0C0iZ8GjOa9cSryhLISyfdvg82z1SZ2ZVExSy8rXeIJmZFQNR4pK+WzFLBiY7PC3Pz9bCUj5Cg+xQoxTFXz8bpQIr/LjlaaxfMLvm8ae7Vv/y3b09+h79qzxMvk/V4z09uOohTLQhXXXbYKNb5dW1baxVSwxp+1qBzbrVBerVvUaQGx2vsfVn3d3UowejFQU9EfthWDlnJWyjMhiuVlFIhYPj/5hhIx788lYkrH/KMAkvSYWiRkYy4VFdf6RICEdDlmalAxFN8V6QyULc6ncrqINS5SWBtMnGAdP0Skaz/LXKCi9wwcNTtQw8f4p7z64U1GIuVQqrdKMKWLF0ba86XNwGE6WRX5dBicVpZSerWzi3mrYAJRq1MOw3bQFKNGrBtBqLCYs0aoOsxWZtYJFFa3O2oS5QkOchvzcKrw1kS+5P0HszX5zqx9a2jtQpSPOhb1ZNe/hXeSiv+1kYWGqRbW8iG2bXKlkqN195K9FurX0G0ovk8vEELexgv9IeaZp2/8wJP7Yj89zuwjYqFIXxxYIcdjqHxgx2CO2YYiVgrWQoaENAUpQPGvjo7veFNCagkXA0liKJ1nFHcLJlirHGA3I9xjZgqcsX5Hn6IwfBXn6tcRaYr81+JU07ZTKe+CJb4rYi8DZ4BJsEC3PoMgg1hDapgoWPE4GqAFVx7F2Kk0hhJTgAH56on232AbVLakWSOICt1XBKGk86NUXfVkSOA6oshlGl5aHCQjhFd9wdTjnKG6vGoS8BquN6U0quROT5UH2wXI1iAg1KAfNSmhRYqjgvr35+Px6xX6BNEcIsgPg1SIfiGafWclh30E2ogyGQicgxwV7mGVsIJmdxDi1GccaCOAaRk5nFXRfELLE09kpEcx+QEA4P1xNMDU5z6k+noDIubppaz3SPld7P+Bwr4Ixgr+eDfmcsElO6f8b8MAGZMFjMevKVcE+ZA7Jjc58zFavAhOfBL5L/OietHGxE3GcpKDcMhZPIxRznQHXAj1QVIAqsD7qaT1Aj45i2DFdtJkrdUZowKOQgstLeceg8UBNGKgellwJ2vEjNPRg/MLE4dOw5SjHXx4V+hH0/J4ftepeIhFBblNo22+wKNXZjkuDtVGRKYdZL7iOqeRzBxBFpSLoKC4dWYjEzatbgB50ycS5BKpxES6LUChLA1Ej8CILepPKAtBMVI0RYPs8DDCZC/9JKbOW9NuR3oK+caB2oljz4a+0m3VqPDzsTxYti/BwVEke0xLWNdJhavm4MvyczmgiVlx49LhGVs3GG9cBcxHgaxQnyHHkEhyouO1jQ0R3jTozarlrAhYeaMffdvNh23fgUXguaOF/VR0VS2DnnPMiVvqGA1iWhYOrAIECdsiT1cQui1kic6waTOPAxpiVQEgXp4ITm1E32/LVIQx4tsXHQsjHJfzOyjqM4PQH7CFQhAn2swwThRox6L+6kPmiKEaCo41KEODUJinpHNavxarWOmcQdFq8zFqtrwVMALFOa3xprfxO+6dNuDzR/FSdLupHK/vdftfltgM82G/lS+UxXxyqpCwhH6uVSD/v5Xgptp5sKTe0ts3nwNrsxW1vxfqbvlW4EREWtsKu1E5lBC+wn1WK7Xg6NWDxtHl6ymvQSqj/TUK6K6dpUBLSwjAh25P025q5pmoBNSD7fmhFscB5F5oJRe4uHObZaTVdUjamm/1mcwBFa/GFMU7+2RxUFCwP7kBd3l/hEkE+sZ+F+28sA6Pjxwv2BPKWBbD9oj7HgIBNYS9s82S4+p2q3wfkq+zZIL/4VYL1YGwqKtfMIw5XkjIzTFQg773T7A8s+Hw6N3sCxXMs8d3udwd8naZwoEg2kBX8viVebaNINtoWlTKcOJXp+puk2rtg3L1TPH5MpPfv3vibkrqPF/fW7iX1tLxbe6J+DifV+NglvYm/0+8B7PZtNfnzZe/NuvHDC9zb+Fh/gfXQfOBHk//F+4I1+sG7+HFs3737rXv/5L1174Duq+tQxYBm2bUr/Q6UNFD24UE82WAf15EPx70lyu5I7tzp7SJUnydVLbtjv7CGLniRXLznkjfaRYE+yq5cd8npV5N7qlPgkkm9VuuzCeRL7xjZZLTHiMMmnDFAfTXyClzoeAu0Dpu0DVtgHu/VsG4gF11jn3SH7oToQbtdFS5lVaqVLy97Oq027RmMC888+ihvdNyJxPxFpAobYu7rmCKeOkdyADBkYc4KoJIJXYNQ+lwDKEowTAYhNRp08WfE5Csyht+5vNJ638TQX7HYyiwFmA5JlYEZi6GSGVARmY46Y8FwqZKjeEBFa3DJTOFCwX1MHUN3IJ0OXp8v2s2dXLKFrrWzhZzOkSQA+YP/vAHEHwp0KfJ9xPyKSJ2ZzTqwA019LYsrpLdV4qbiL1OwyjoiiCBGNurm6E4SMqy8rI9EQHe/qgkqtBAebzjTKrS/vbnssq11y235CqqHCSWgbHdPoWK3LN8jskJPQ3u8kJKGr8PydYGMVa3zR6tuO5Zybjte1vaHT6dhuv9PjTr+1t5whwgTvoh/IhXwcEjIXLZ1+IH8S5ClGfBQhzQeyZ3x60UKhHshHsjX03TIt4CObgJmMcdO4aGVpDmAZY6bKsdDrlas0pCbShGO5ApZWTdaq1AOBrXIciJHG3A158rkx1gGHqGmdvfQDV8KulIawoOBIpGu4JvwMjTyEA7Jt9ts9+pbWEcDkgHe0WXOHrfkDrtJmzR02gQ85D5u1d4TdeMiJ2qzBz2tsPeTU77FQfuJ5BHVon0I5AB0OQlpS34hZcnggD2uLjCOwGsgIodA4yJUR7wtWQcYDNAtKfPOY8bDkA0K7hLjr6JQsCmT9T9hMBIk+95GxR85bcIm+r+dIJEvuifSEnG25MjDG0VxEfvx2dM1cf+qjGwhDoyXy/ksmYy9bcHLislEMJkxKDkAwLpBPj7yUK9ftymHrnJQ6hnnnIs0KgToxDDUS6HIQGcezROeQaPG8zZ0lm4oQe/fLEgwD8i6LaMbBVPu2TBC9hFqXIzFh5pBsEOshbBDe6ff6ds8571hdtEFce+gMzScb5Ju2QQhs4J0EXDkGfgxkJowNw0RDlK+A/O1bA8Dmw4513hsak2GXOz2r57nc++LY/AcTsDf9zf/9e+C9fp97o5cDxOPX736zbkbX9s3ozv75qgKOm22rbX4BvvcxCOvBKN7HIKwHY3Ufg7AekMh9DOL6OrjbxyDpA3StPs3ZB00c7kCJK3WafyOY6OjxPDg0usqnGCVEYSVjCuDSPGkJsyRpTKQmIAWEPswVcxHEiQpTQ0zFWRhDF6IyqsH77ch0Ev0sFUmLQXkKLBPnGU0l4CE3+itSpJwizaYxBhhB2Qj7oQOfHDH1I2JaY4+sfAWDxkwmGCXrITEbQr0zWTC60KuEYBbRtzpkS1O6q2A55kuZwxJjtz7y1KkAhEWtzOKQwJigHr/JI3H6rUGjztCwBuoKhzV4OGhkd3tdi3dsrzO0EBqZ/QnvOU/Q6ItCo7qbL7X3DQ9F7hTjY0dFITWLQNofffSqaPn5kRpouV3LcdyuKWzzHDXQ6w48s3ecBnaOVsEjde8z6Nyn69hJ1dmwit4qJ6/1rvE3f1Zfh8n9f/yn0zYt+vJOKbXiQ3Ir/Trui3Kf+K04VdYN8Rb0MaU/x2eJqqWz9V0i/eE//aQV2+OBFKurxiAz/JZLrbbrTqGNtzRcGZVqC+LUoC8l43cHQVkKwdDdTUNi1D85HaH2TvGu9B2bi5b+js1qMhJjLv4PAAD//7Sd3W+bMBDA3/tXoDy1D5BRmi9pirRlk/pQTdXS9aEvEQGaohGMgCzq/vr5zh/BYBuidFUlsDF3Buzz2eF+4Noh7T/0iqQifqVJDq8zx0A9zET9MaSBa1H5hsMwS227+BlvoYil64y6kDGAbwPF7Hwbg3WrRKi38QXLQFda+nYiA/yn5u3o9ldFaov3I8U2Mamq8I7T+BVWvTHoI0rASYL31OVKOA+1iKIQni71iqjPRRtjlDCLTPvOXpUGUQAJfRKZZxiBsNpd2IKs+Sn03hBUj8QFPQehRVaAf5W8oKcs9OMb+LCLlAXAJgReQP9uHba9u/en3nQ6na38mTeZB4HId/w57sDrxfNmGlm/n/xnf7ISWf7EW/jTmSNEcJHt7T1Xvbr17nyacToOG0gLOTL9zLWtRJaojRAhatu6qpc2f8L3JqMzIRPj9p2Td+Bh4S3gj855PVqb4EHUbvIxahmmwjm1/ZwcLUggwyvMLcwPmodLMD+NsUZDRunAqlRLYCGu4K9TQ1krWHg8Wn6BrZ2zU6Z/wujdhQiL6H2ofPUsIO2wDOcRM6way2owpgght8uf67VV4KECNkJVh7VOsMJ20wPDfoEAZw0CrIritIpIGfc/1rEs+Y3tXIq3iUTsh2HsUQw0Cw8JPPowjiK0rFNj5gaBCRw5NXwwhtrXzZZOuH+PGJUwJ6RIcHBEzHEnMsIGMRETmysl+r1xSUV1LEDvNs3jhBpz16daCfhDcRrSZzRywjIN3bc0jpOcO7lLrZTNZrsDx8GsZ7Oh5oFkGa7eGPwCVk7+3GohLbCSAPmVWv9vURsggp12SB2x4/Jb1nsBNSlcBh5pNyXdbTnkzJqZ5pHqYM8fC8trJlw6xSHg33LfdwUp5/p7Fd2YwGznia/ewvIkfo2pDxH8WkmpT2S3y1gsMvu+78do+EvIXup4oQknzcfM4kvpA55VQfsuMaw79pxB21/UbjiDT40OvSE7ttNjkrNLNTqUKMLib160GKIxGdB23D2JIeSwnSN6mTiS5jvEHxWDuhMTVBOS1Wmhtwy6Kg5uSWFZkqPrZslrLRvUo3iX9hqPOnDQ2OfOVsVGJqHrB6wacT145MbYhjW2JuQzmiF2iZWlO4linywNQBml+KSSbfgSSD8ZVPnCN87pe/C0VzAMAr0Vx0P2KfZ/AAAA//8DAHMJf6qbfQAA
|
132
132
|
http_version:
|
133
|
-
recorded_at:
|
133
|
+
recorded_at: Thu, 12 Jan 2023 18:32:09 GMT
|
134
134
|
recorded_with: VCR 3.0.3
|
data/spec/metadata_spec.rb
CHANGED
@@ -19,6 +19,7 @@ describe Briard::Metadata, vcr: true do
|
|
19
19
|
it 'DOI RA not Crossref or DataCite' do
|
20
20
|
input = 'http://doi.org/10.3980/j.issn.2222-3959.2015.03.07'
|
21
21
|
subject = described_class.new(input: input)
|
22
|
+
expect(subject.errors).to eq(["root is missing required keys: id, creators, titles, publisher, publication_year, types"])
|
22
23
|
expect(subject.valid?).to be false
|
23
24
|
expect(subject.bibtex.nil?).to be(true)
|
24
25
|
end
|
@@ -96,7 +96,7 @@ describe Briard::Metadata, vcr: true do
|
|
96
96
|
it 'journal article with funding' do
|
97
97
|
input = '10.3389/fpls.2019.00816'
|
98
98
|
subject = described_class.new(input: input, from: 'crossref_json')
|
99
|
-
|
99
|
+
expect(subject.valid?).to be true
|
100
100
|
expect(subject.id).to eq('https://doi.org/10.3389/fpls.2019.00816')
|
101
101
|
expect(subject.url).to eq('https://www.frontiersin.org/article/10.3389/fpls.2019.00816/full')
|
102
102
|
expect(subject.types).to eq('bibtex' => 'article', 'citeproc' => 'article-journal',
|
@@ -95,9 +95,8 @@ describe Briard::Metadata, vcr: true do
|
|
95
95
|
it 'zenodo' do
|
96
96
|
input = 'https://www.zenodo.org/record/1196821'
|
97
97
|
subject = described_class.new(input: input, from: 'schema_org')
|
98
|
-
expect(subject.valid?).to be
|
98
|
+
expect(subject.valid?).to be true
|
99
99
|
expect(subject.language).to eq('eng')
|
100
|
-
expect(subject.errors).to eq("49:0: ERROR: Element '{http://datacite.org/schema/kernel-4}publisher': [facet 'minLength'] The value has a length of '0'; this underruns the allowed minimum length of '1'.")
|
101
100
|
expect(subject.id).to eq('https://doi.org/10.5281/zenodo.1196821')
|
102
101
|
expect(subject.doi).to eq('10.5281/zenodo.1196821')
|
103
102
|
expect(subject.url).to eq('https://zenodo.org/record/1196821')
|
@@ -108,7 +107,7 @@ describe Briard::Metadata, vcr: true do
|
|
108
107
|
expect(subject.creators.first).to eq('name' => 'Staib, Matthias',
|
109
108
|
'nameIdentifiers' => [{ 'nameIdentifier' => 'https://orcid.org/0000-0001-9688-838X', 'nameIdentifierScheme' => 'ORCID', 'schemeUri' => 'https://orcid.org' }],
|
110
109
|
'nameType' => 'Personal', 'givenName' => 'Matthias', 'familyName' => 'Staib', 'affiliation' => [{ 'name' => 'University of Zurich, Zurich, Switzerland' }])
|
111
|
-
expect(subject.publisher
|
110
|
+
expect(subject.publisher).to eq('Zenodo')
|
112
111
|
expect(subject.publication_year).to eq('2018')
|
113
112
|
expect(subject.subjects).to eq([{ 'subject' => 'pupil size response' },
|
114
113
|
{ 'subject' => 'skin conductance response' },
|
@@ -174,6 +173,30 @@ describe Briard::Metadata, vcr: true do
|
|
174
173
|
{ 'subject' => 'ankylosing spondylitis' }])
|
175
174
|
end
|
176
175
|
|
176
|
+
it 'upstream blog' do
|
177
|
+
input = 'https://upstream.force11.org/elife-reviewed-preprints-interview-with-fiona-hutton'
|
178
|
+
subject = described_class.new(input: input, from: 'schema_org')
|
179
|
+
expect(subject.valid?).to be true
|
180
|
+
expect(subject.id).to eq('https://doi.org/10.54900/8d7emer-rm2pg72')
|
181
|
+
expect(subject.doi).to eq('10.54900/8d7emer-rm2pg72')
|
182
|
+
expect(subject.types).to eq('bibtex' => 'article', 'citeproc' => 'article-newspaper',
|
183
|
+
'resourceTypeGeneral' => 'Preprint', 'ris' => 'GEN', 'schemaOrg' => 'Article')
|
184
|
+
expect(subject.titles).to eq([{ 'title' => 'eLife Reviewed Preprints: Interview with Fiona Hutton' }])
|
185
|
+
expect(subject.container).to eq('identifier' => 'https://upstream.force11.org/',
|
186
|
+
'identifierType' => 'URL', 'title' => 'Upstream', 'type' => 'Blog')
|
187
|
+
expect(subject.creators.size).to eq(2)
|
188
|
+
expect(subject.creators.first).to eq("familyName"=>"Hutton",
|
189
|
+
"givenName" => "Fiona",
|
190
|
+
"name" => "Hutton, Fiona",
|
191
|
+
"nameType" => "Personal")
|
192
|
+
expect(subject.subjects).to eq([{ 'subject' => 'interviews' }])
|
193
|
+
expect(subject.publisher).to eq('Upstream')
|
194
|
+
expect(subject.dates).to eq([{ 'date' => '2022-11-15T10:29:38Z', 'dateType' => 'Issued' },
|
195
|
+
{ 'date' => '2023-01-11T22:58:48Z', 'dateType' => 'Updated' }])
|
196
|
+
expect(subject.publication_year).to eq('2022')
|
197
|
+
expect(subject.rights_list).to eq([{"rights"=>"Creative Commons Attribution 4.0 International", "rightsUri"=>"https://creativecommons.org/licenses/by/4.0/legalcode", "rightsIdentifier"=>"cc-by-4.0", "rightsIdentifierScheme"=>"SPDX", "schemeUri"=>"https://spdx.org/licenses/"}])
|
198
|
+
end
|
199
|
+
|
177
200
|
# TODO: check 403 status in DOI resolver
|
178
201
|
# it "harvard dataverse via identifiers.org" do
|
179
202
|
# input = "https://identifiers.org/doi/10.7910/DVN/NJ7XSO"
|
@@ -138,7 +138,7 @@ describe Briard::Metadata, vcr: true do
|
|
138
138
|
'schemeUri' => 'https://orcid.org' }],
|
139
139
|
'nameType' => 'Personal' }])
|
140
140
|
expect(subject.subjects).to eq([])
|
141
|
-
expect(subject.container).to eq(
|
141
|
+
expect(subject.container).to eq("identifier"=>"https://www.polyneme.xyz", "identifierType"=>"URL", "type"=>"Blog")
|
142
142
|
expect(subject.language).to eq('en-US')
|
143
143
|
expect(subject.dates).to eq([{ 'date' => '2022-10-21', 'dateType' => 'Issued' },
|
144
144
|
{ 'date' => '2022-10-21', 'dateType' => 'Created' },
|
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.9.
|
4
|
+
version: 2.9.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Martin Fenner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|