bolognese 0.5.1 → 0.5.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: deb650206d9feee61ce70231a6e0d847dd7cb624
4
- data.tar.gz: 129088964177fa28dd209875529bf3d502163bac
3
+ metadata.gz: f0fee04e753cdbb8c5d2894dd667155439dd69e1
4
+ data.tar.gz: bf1c2d4233737e30a272455de72c4570dc8b5d46
5
5
  SHA512:
6
- metadata.gz: 28d10eae1a9a8adc8c4e53f191d2f1cf8218327e6e144103d73cf9d4e38f2dff371d2f8a40ae6db9b40437ecc873fcce5054df05b155d297457dae2d2c4fe236
7
- data.tar.gz: 6eb9ce2ba440d28822a4df0dccf9ade48d4bdee95d43dd034f1b2134e3ad8289b8998a49dd2a29189648e649e6d87894263e7a36377e256159a04811781a8db9
6
+ metadata.gz: 5a1295852b813744211dd73f8ca2660c1c7e5b1cb2f62ad35fdf86295b395ae4d8bab04871e2b03fa5a38db7aec6578ac2169c699144138e0464c5ed8313a006
7
+ data.tar.gz: a4c504c2b26f99b1d0cfddb047ed06111948c5f3e2e1b2b52ba26c177d6762ecb03d17570c0801e1d53f134a219023a210a73bd75f45855a2ba81ac487d84008
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- bolognese (0.5.1)
4
+ bolognese (0.5.2)
5
5
  activesupport (~> 4.2, >= 4.2.5)
6
6
  builder (~> 3.2, >= 3.2.2)
7
7
  dotenv (~> 2.1, >= 2.1.1)
data/README.md CHANGED
@@ -43,6 +43,588 @@ line flag sets the format, either `crossref`, `datacite`, or `schema_org` (defau
43
43
  Read Crossref XML:
44
44
  ```
45
45
  bolognese read https://doi.org/10.7554/elife.01567 --as crossref
46
+
47
+ <?xml version="1.0" encoding="UTF-8"?>
48
+ <doi_records>
49
+ <doi_record owner="10.7554" timestamp="2015-08-11 07:35:02">
50
+ <crossref>
51
+ <journal>
52
+ <journal_metadata language="en">
53
+ <full_title>eLife</full_title>
54
+ <issn media_type="electronic">2050-084X</issn>
55
+ </journal_metadata>
56
+ <journal_issue>
57
+ <publication_date media_type="online">
58
+ <month>02</month>
59
+ <day>11</day>
60
+ <year>2014</year>
61
+ </publication_date>
62
+ <journal_volume>
63
+ <volume>3</volume>
64
+ </journal_volume>
65
+ </journal_issue>
66
+ <journal_article publication_type="full_text">
67
+ <titles>
68
+ <title>Automated quantitative histology reveals vascular morphodynamics during Arabidopsis hypocotyl secondary growth</title>
69
+ </titles>
70
+ <contributors>
71
+ <person_name contributor_role="author" sequence="first">
72
+ <given_name>Martial</given_name>
73
+ <surname>Sankar</surname>
74
+ </person_name>
75
+ <person_name contributor_role="author" sequence="additional">
76
+ <given_name>Kaisa</given_name>
77
+ <surname>Nieminen</surname>
78
+ </person_name>
79
+ <person_name contributor_role="author" sequence="additional">
80
+ <given_name>Laura</given_name>
81
+ <surname>Ragni</surname>
82
+ </person_name>
83
+ <person_name contributor_role="author" sequence="additional">
84
+ <given_name>Ioannis</given_name>
85
+ <surname>Xenarios</surname>
86
+ </person_name>
87
+ <person_name contributor_role="author" sequence="additional">
88
+ <given_name>Christian S</given_name>
89
+ <surname>Hardtke</surname>
90
+ </person_name>
91
+ </contributors>
92
+ <publication_date media_type="online">
93
+ <month>02</month>
94
+ <day>11</day>
95
+ <year>2014</year>
96
+ </publication_date>
97
+ <publisher_item>
98
+ <identifier id_type="doi">10.7554/eLife.01567</identifier>
99
+ </publisher_item>
100
+ <crossmark>
101
+ <crossmark_version>1</crossmark_version>
102
+ <crossmark_policy>eLifesciences</crossmark_policy>
103
+ <crossmark_domains>
104
+ <crossmark_domain>
105
+ <domain>www.elifesciences.org</domain>
106
+ </crossmark_domain>
107
+ </crossmark_domains>
108
+ <crossmark_domain_exclusive>false</crossmark_domain_exclusive>
109
+ <custom_metadata>
110
+ <assertion name="received" label="Received" group_name="publication_history" group_label="Publication History" order="0">2013-09-20</assertion>
111
+ <assertion name="accepted" label="Accepted" group_name="publication_history" group_label="Publication History" order="1">2013-12-24</assertion>
112
+ <assertion name="published" label="Published" group_name="publication_history" group_label="Publication History" order="2">2014-02-11</assertion>
113
+ <program name="fundref">
114
+ <assertion name="fundgroup">
115
+ <assertion name="funder_name">SystemsX</assertion>
116
+ </assertion>
117
+ <assertion name="fundgroup">
118
+ <assertion name="funder_name">
119
+ EMBO
120
+ <assertion name="funder_identifier">http://dx.doi.org/10.13039/501100003043</assertion>
121
+ </assertion>
122
+ </assertion>
123
+ <assertion name="fundgroup">
124
+ <assertion name="funder_name">
125
+ Swiss National Science Foundation
126
+ <assertion name="funder_identifier">http://dx.doi.org/10.13039/501100001711</assertion>
127
+ </assertion>
128
+ </assertion>
129
+ <assertion name="fundgroup">
130
+ <assertion name="funder_name">
131
+ University of Lausanne
132
+ <assertion name="funder_identifier" provider="crossref">http://dx.doi.org/10.13039/501100006390</assertion>
133
+ </assertion>
134
+ </assertion>
135
+ </program>
136
+ <program name="AccessIndicators">
137
+ <license_ref applies_to="vor">http://creativecommons.org/licenses/by/3.0/</license_ref>
138
+ <license_ref applies_to="am">http://creativecommons.org/licenses/by/3.0/</license_ref>
139
+ <license_ref applies_to="tdm">http://creativecommons.org/licenses/by/3.0/</license_ref>
140
+ </program>
141
+ </custom_metadata>
142
+ </crossmark>
143
+ <doi_data>
144
+ <doi>10.7554/eLife.01567</doi>
145
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567</resource>
146
+ </doi_data>
147
+ <citation_list>
148
+ <citation key="1">
149
+ <journal_title>Nature</journal_title>
150
+ <author>Bonke</author>
151
+ <volume>426</volume>
152
+ <first_page>181</first_page>
153
+ <cYear>2003</cYear>
154
+ <doi>10.1038/nature02100</doi>
155
+ </citation>
156
+ <citation key="2">
157
+ <journal_title>Genetics</journal_title>
158
+ <author>Brenner</author>
159
+ <volume>182</volume>
160
+ <first_page>413</first_page>
161
+ <cYear>2009</cYear>
162
+ <doi>10.1534/genetics.109.104976</doi>
163
+ </citation>
164
+ <citation key="3">
165
+ <journal_title>Physiologia Plantarum</journal_title>
166
+ <author>Chaffey</author>
167
+ <volume>114</volume>
168
+ <first_page>594</first_page>
169
+ <cYear>2002</cYear>
170
+ <doi>10.1034/j.1399-3054.2002.1140413.x</doi>
171
+ </citation>
172
+ <citation key="4">
173
+ <journal_title>Neural computation</journal_title>
174
+ <author>Chang</author>
175
+ <volume>13</volume>
176
+ <first_page>2119</first_page>
177
+ <cYear>2001</cYear>
178
+ <doi>10.1162/089976601750399335</doi>
179
+ </citation>
180
+ <citation key="5">
181
+ <journal_title>Machine Learning</journal_title>
182
+ <author>Cortes</author>
183
+ <volume>20</volume>
184
+ <first_page>273</first_page>
185
+ <cYear>1995</cYear>
186
+ </citation>
187
+ <citation key="6">
188
+ <journal_title>Development</journal_title>
189
+ <author>Dolan</author>
190
+ <volume>119</volume>
191
+ <first_page>71</first_page>
192
+ <cYear>1993</cYear>
193
+ </citation>
194
+ <citation key="7">
195
+ <journal_title>Seminars in Cell &amp; Developmental Biology</journal_title>
196
+ <author>Elo</author>
197
+ <volume>20</volume>
198
+ <first_page>1097</first_page>
199
+ <cYear>2009</cYear>
200
+ <doi>10.1016/j.semcdb.2009.09.009</doi>
201
+ </citation>
202
+ <citation key="8">
203
+ <journal_title>Development</journal_title>
204
+ <author>Etchells</author>
205
+ <volume>140</volume>
206
+ <first_page>2224</first_page>
207
+ <cYear>2013</cYear>
208
+ <doi>10.1242/dev.091314</doi>
209
+ </citation>
210
+ <citation key="9">
211
+ <journal_title>PLOS Genetics</journal_title>
212
+ <author>Etchells</author>
213
+ <volume>8</volume>
214
+ <first_page>e1002997</first_page>
215
+ <cYear>2012</cYear>
216
+ <doi>10.1371/journal.pgen.1002997</doi>
217
+ </citation>
218
+ <citation key="10">
219
+ <journal_title>Molecular Systems Biology</journal_title>
220
+ <author>Fuchs</author>
221
+ <volume>6</volume>
222
+ <first_page>370</first_page>
223
+ <cYear>2010</cYear>
224
+ <doi>10.1038/msb.2010.25</doi>
225
+ </citation>
226
+ <citation key="11">
227
+ <journal_title>Bio Systems</journal_title>
228
+ <author>Granqvist</author>
229
+ <volume>110</volume>
230
+ <first_page>60</first_page>
231
+ <cYear>2012</cYear>
232
+ <doi>10.1016/j.biosystems.2012.07.004</doi>
233
+ </citation>
234
+ <citation key="12">
235
+ <journal_title>Current Opinion in Plant Biology</journal_title>
236
+ <author>Groover</author>
237
+ <volume>9</volume>
238
+ <first_page>55</first_page>
239
+ <cYear>2006</cYear>
240
+ <doi>10.1016/j.pbi.2005.11.013</doi>
241
+ </citation>
242
+ <citation key="13">
243
+ <journal_title>Plant Cell</journal_title>
244
+ <author>Hirakawa</author>
245
+ <volume>22</volume>
246
+ <first_page>2618</first_page>
247
+ <cYear>2010</cYear>
248
+ <doi>10.1105/tpc.110.076083</doi>
249
+ </citation>
250
+ <citation key="14">
251
+ <journal_title>Proceedings of the National Academy of Sciences of the United States of America</journal_title>
252
+ <author>Hirakawa</author>
253
+ <volume>105</volume>
254
+ <first_page>15208</first_page>
255
+ <cYear>2008</cYear>
256
+ <doi>10.1073/pnas.0808444105</doi>
257
+ </citation>
258
+ <citation key="15">
259
+ <journal_title>Cell</journal_title>
260
+ <author>Meyerowitz</author>
261
+ <volume>56</volume>
262
+ <first_page>263</first_page>
263
+ <cYear>1989</cYear>
264
+ <doi>10.1016/0092-8674(89)90900-8</doi>
265
+ </citation>
266
+ <citation key="16">
267
+ <journal_title>Science</journal_title>
268
+ <author>Meyerowitz</author>
269
+ <volume>295</volume>
270
+ <first_page>1482</first_page>
271
+ <cYear>2002</cYear>
272
+ <doi>10.1126/science.1066609</doi>
273
+ </citation>
274
+ <citation key="17">
275
+ <journal_title>Plant Physiol</journal_title>
276
+ <author>Nieminen</author>
277
+ <volume>135</volume>
278
+ <first_page>653</first_page>
279
+ <cYear>2004</cYear>
280
+ <doi>10.1104/pp.104.040212</doi>
281
+ </citation>
282
+ <citation key="18">
283
+ <journal_title>Nature Biotechnology</journal_title>
284
+ <author>Noble</author>
285
+ <volume>24</volume>
286
+ <first_page>1565</first_page>
287
+ <cYear>2006</cYear>
288
+ <doi>10.1038/nbt1206-1565</doi>
289
+ </citation>
290
+ <citation key="19">
291
+ <journal_title>Proceedings of the National Academy of Sciences of the United States of America</journal_title>
292
+ <author>Olson</author>
293
+ <volume>77</volume>
294
+ <first_page>1516</first_page>
295
+ <cYear>1980</cYear>
296
+ <doi>10.1073/pnas.77.3.1516</doi>
297
+ </citation>
298
+ <citation key="20">
299
+ <journal_title>Bioinformatics</journal_title>
300
+ <author>Pau</author>
301
+ <volume>26</volume>
302
+ <first_page>979</first_page>
303
+ <cYear>2010</cYear>
304
+ <doi>10.1093/bioinformatics/btq046</doi>
305
+ </citation>
306
+ <citation key="21">
307
+ <journal_title>Plant Cell</journal_title>
308
+ <author>Ragni</author>
309
+ <volume>23</volume>
310
+ <first_page>1322</first_page>
311
+ <cYear>2011</cYear>
312
+ <doi>10.1105/tpc.111.084020</doi>
313
+ </citation>
314
+ <citation key="22">
315
+ <author>Sankar</author>
316
+ <cYear>2014</cYear>
317
+ <doi>10.5061/dryad.b835k</doi>
318
+ </citation>
319
+ <citation key="23">
320
+ <journal_title>Current Biology</journal_title>
321
+ <author>Sibout</author>
322
+ <volume>18</volume>
323
+ <first_page>458</first_page>
324
+ <cYear>2008</cYear>
325
+ <doi>10.1016/j.cub.2008.02.070</doi>
326
+ </citation>
327
+ <citation key="24">
328
+ <journal_title>The New Phytologist</journal_title>
329
+ <author>Spicer</author>
330
+ <volume>186</volume>
331
+ <first_page>577</first_page>
332
+ <cYear>2010</cYear>
333
+ <doi>10.1111/j.1469-8137.2010.03236.x</doi>
334
+ </citation>
335
+ <citation key="25">
336
+ <journal_title>Machine Vision and Applications</journal_title>
337
+ <author>Theriault</author>
338
+ <volume>23</volume>
339
+ <first_page>659</first_page>
340
+ <cYear>2012</cYear>
341
+ <doi>10.1007/s00138-011-0345-9</doi>
342
+ </citation>
343
+ <citation key="26">
344
+ <journal_title>Cell</journal_title>
345
+ <author>Uyttewaal</author>
346
+ <volume>149</volume>
347
+ <first_page>439</first_page>
348
+ <cYear>2012</cYear>
349
+ <doi>10.1016/j.cell.2012.02.048</doi>
350
+ </citation>
351
+ <citation key="27">
352
+ <journal_title>Nature Cell Biology</journal_title>
353
+ <author>Yin</author>
354
+ <volume>15</volume>
355
+ <first_page>860</first_page>
356
+ <cYear>2013</cYear>
357
+ <doi>10.1038/ncb2764</doi>
358
+ </citation>
359
+ </citation_list>
360
+ <component_list>
361
+ <component parent_relation="isPartOf">
362
+ <titles>
363
+ <title>
364
+ <b>Abstract</b>
365
+ </title>
366
+ </titles>
367
+ <format mime_type="text/plain" />
368
+ <doi_data>
369
+ <doi>10.7554/eLife.01567.001</doi>
370
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.001</resource>
371
+ </doi_data>
372
+ </component>
373
+ <component parent_relation="isPartOf">
374
+ <titles>
375
+ <title>
376
+ <b>eLife digest</b>
377
+ </title>
378
+ </titles>
379
+ <format mime_type="text/plain" />
380
+ <doi_data>
381
+ <doi>10.7554/eLife.01567.002</doi>
382
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.002</resource>
383
+ </doi_data>
384
+ </component>
385
+ <component parent_relation="isPartOf">
386
+ <titles>
387
+ <title>Figure 1. Cellular level analysis of Arabidopsis hypocotyl secondary growth.</title>
388
+ <subtitle>
389
+ (
390
+ <b>A</b>
391
+ ) Light microscopy of cross sections obtained from Arabidopsis hypocotyls (organ position illustrated for a 9-day-old seedling, lower left) at 9 dag (upper left) and 35 dag (right). Size bars are 100 μm. Blue GUS staining due to the presence of an
392
+ <i>APL::GUS</i>
393
+ reporter gene in this Col-0 background line marks phloem bundles. (
394
+ <b>B</b>
395
+ ) Overview of the developmental series (time points and distinct samples per genotype) analyzed in this study. (
396
+ <b>C</b>
397
+ ) Example of a high-resolution hypocotyl section image assembled from 11 × 11 tiles. (
398
+ <b>D</b>
399
+ ) The same image after pre-processing and binarization, and (
400
+ <b>E</b>
401
+ ) subsequent segmentation using a watershed algorithm. (
402
+ <b>F</b>
403
+ ) Number of mis-segmented cells as determined by careful visual inspection in 12 sections, plotted against the total number of cells per section (log scale).
404
+ </subtitle>
405
+ </titles>
406
+ <format mime_type="image/tiff" />
407
+ <doi_data>
408
+ <doi>10.7554/eLife.01567.003</doi>
409
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.003</resource>
410
+ </doi_data>
411
+ </component>
412
+ <component parent_relation="isPartOf">
413
+ <titles>
414
+ <title>Figure 2. The ‘Quantitative Histology’ approach.</title>
415
+ <subtitle>
416
+ (
417
+ <b>A</b>
418
+ ) Overview of the computational pipeline from image acquisition to analysis. (
419
+ <b>B</b>
420
+ ) ‘Phenoprints’ for the different genotypes and developmental stages.
421
+ </subtitle>
422
+ </titles>
423
+ <format mime_type="image/tiff" />
424
+ <doi_data>
425
+ <doi>10.7554/eLife.01567.004</doi>
426
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.004</resource>
427
+ </doi_data>
428
+ </component>
429
+ <component parent_relation="isPartOf">
430
+ <titles>
431
+ <title>Figure 2—figure supplement 1. An example of classifier selection through V-fold cross validation.</title>
432
+ <subtitle>The green arrow points out the selected feature combination according to the criteria of minimum number of features with the highest performance and the lowest variation (the radiusV feature was excluded due to its putative variation in tissue location).</subtitle>
433
+ </titles>
434
+ <format mime_type="image/tiff" />
435
+ <doi_data>
436
+ <doi>10.7554/eLife.01567.005</doi>
437
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.005</resource>
438
+ </doi_data>
439
+ </component>
440
+ <component parent_relation="isPartOf">
441
+ <titles>
442
+ <title>Figure 3. Progression of tissue proliferation.</title>
443
+ <subtitle>
444
+ (
445
+ <b>A</b>
446
+ ) Principal component analysis (PCA) of the phenoprints shown in Figure 2B, performed with normalized values (Supplementary file 4). The inlay screeplot displays the proportion of total variation explained by each principal component. (
447
+ <b>B–E</b>
448
+ ) Comparative plots of parameter progression in the two genotypes. In (
449
+ <b>D</b>
450
+ ), xylem represents combined vessel, parenchyma, and fiber cells, phloem represents combined phloem parenchyma and bundle cells. Error bars indicate standard error.
451
+ </subtitle>
452
+ </titles>
453
+ <format mime_type="image/tiff" />
454
+ <doi_data>
455
+ <doi>10.7554/eLife.01567.006</doi>
456
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.006</resource>
457
+ </doi_data>
458
+ </component>
459
+ <component parent_relation="isPartOf">
460
+ <titles>
461
+ <title>Figure 4. Bimodal distribution of incline angle according to position.</title>
462
+ <subtitle>
463
+ (
464
+ <b>A</b>
465
+ and
466
+ <b>B</b>
467
+ ) Spatial distribution of cell incline angle illustrates the vascular organization in Ler (
468
+ <b>B</b>
469
+ ) as compared to Col-0 (
470
+ <b>A</b>
471
+ ) at later stages of development, for example 30 dag. The size of the disc increases with the area of the cell. Blue color indicates radial cell orientation, red orthoradial. (
472
+ <b>C</b>
473
+ and
474
+ <b>D</b>
475
+ ) Violin plots of incline angle distribution, illustrating increasingly bimodal distribution coincident with refined vascular organization and different dynamics of the process in the two genotypes.
476
+ </subtitle>
477
+ </titles>
478
+ <format mime_type="image/tiff" />
479
+ <doi_data>
480
+ <doi>10.7554/eLife.01567.007</doi>
481
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.007</resource>
482
+ </doi_data>
483
+ </component>
484
+ <component parent_relation="isPartOf">
485
+ <titles>
486
+ <title>Figure 4—figure supplement 1. An illustration of the incline angle.</title>
487
+ <subtitle>The incline is the angle between the section radius through the center of an ellipse fit to a cell and the major axis of that ellipse extended towards the x axis.</subtitle>
488
+ </titles>
489
+ <format mime_type="image/tiff" />
490
+ <doi_data>
491
+ <doi>10.7554/eLife.01567.008</doi>
492
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.008</resource>
493
+ </doi_data>
494
+ </component>
495
+ <component parent_relation="isPartOf">
496
+ <titles>
497
+ <title>Figure 5. Distinct local organization of incline angle during hypocotyl secondary growth progression.</title>
498
+ <subtitle>
499
+ (
500
+ <b>A</b>
501
+
502
+ <b>J</b>
503
+ ) Density plots of cell incline angle vs radial position for the two genotypes at the indicated developmental stages, representing all cells across all sections for a given time point. The red lines represent the fit of these cloud distributions with locally weighted linear regression (i.e., lowess), revealing the essential data trends. All sections were normalized from 0.0 (the manually defined center) to 1.0 (the average radius in a set of sections as determined by the average distance of the outermost cells from the center for individual sections). Box plots indicate the quartiles of the radian distribution for each cell-type class and are placed at the average position of the cell type with respect to the y axis. Outliers are shown as circles.
504
+ </subtitle>
505
+ </titles>
506
+ <format mime_type="image/tiff" />
507
+ <doi_data>
508
+ <doi>10.7554/eLife.01567.009</doi>
509
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.009</resource>
510
+ </doi_data>
511
+ </component>
512
+ <component parent_relation="isPartOf">
513
+ <titles>
514
+ <title>Figure 5—figure supplement 1. Analysis of cell number in defined xylem regions of different size.</title>
515
+ <subtitle>Cell number in a circle of 200–500 pixels around the section centers for Col-0. Cell count in a constant area of xylem over time across all averaged across all sections.</subtitle>
516
+ </titles>
517
+ <format mime_type="image/tiff" />
518
+ <doi_data>
519
+ <doi>10.7554/eLife.01567.010</doi>
520
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.010</resource>
521
+ </doi_data>
522
+ </component>
523
+ <component parent_relation="isPartOf">
524
+ <titles>
525
+ <title>Figure 6. Mapping of phloem pole patterning.</title>
526
+ <subtitle>
527
+ (
528
+ <b>A</b>
529
+ ) Example of Gaussian kernel density estimate of the location of predicted phloem bundles cells in a 30 dag Col-0 section. High density represents phloem poles. (
530
+ <b>B</b>
531
+ ) Example of an analysis of emerging phloem pole position in a 30 dag Col-0 section. The plot represents a pixel intensity map after noise reduction along a circular region of interest across the emerging phloem poles. Intensity peaks are due to GUS staining conferred to phloem bundles by an
532
+ <i>APL::GUS</i>
533
+ reporter construct. (
534
+ <b>C</b>
535
+ ) Probability density function of the data shown in (
536
+ <b>B</b>
537
+ ) obtained from an automated Bayesian model. The dominant single peak indicates a constant arc distance of ca. 62 pixel between the phloem poles.
538
+ </subtitle>
539
+ </titles>
540
+ <format mime_type="image/tiff" />
541
+ <doi_data>
542
+ <doi>10.7554/eLife.01567.011</doi>
543
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.011</resource>
544
+ </doi_data>
545
+ </component>
546
+ <component parent_relation="isReferencedBy">
547
+ <titles>
548
+ <title>
549
+ Supplementary file 1. (
550
+ <b>A</b>
551
+ ) An explanation of the extracted parameters that describe the cellular features. (
552
+ <b>B</b>
553
+ ) Summary information of the hand-labeled training set for supervised machine learning. (
554
+ <b>C</b>
555
+ ) Definition of the classifiers selected for analysis. (
556
+ <b>D</b>
557
+ ) Summary of the classifier parameters for supervised machine learning. (
558
+ <b>E</b>
559
+ ) Overview of the cell type classes recognized by the supervised machine learning approach and their assignment codes used in Data Files 3 and 4.
560
+ </title>
561
+ </titles>
562
+ <format mime_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
563
+ <doi_data>
564
+ <doi>10.7554/eLife.01567.012</doi>
565
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.012</resource>
566
+ </doi_data>
567
+ </component>
568
+ <component parent_relation="isReferencedBy">
569
+ <titles>
570
+ <title>Supplementary file 2. Quality control files for the Col-0 sections.</title>
571
+ </titles>
572
+ <format mime_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
573
+ <doi_data>
574
+ <doi>10.7554/eLife.01567.013</doi>
575
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.013</resource>
576
+ </doi_data>
577
+ </component>
578
+ <component parent_relation="isReferencedBy">
579
+ <titles>
580
+ <title>Supplementary file 3. Quality control files for the Ler sections.</title>
581
+ </titles>
582
+ <format mime_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
583
+ <doi_data>
584
+ <doi>10.7554/eLife.01567.014</doi>
585
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.014</resource>
586
+ </doi_data>
587
+ </component>
588
+ <component parent_relation="isReferencedBy">
589
+ <titles>
590
+ <title>Supplementary file 4. The normalized values of the phenoprints (Figure 2B) used for PCA.</title>
591
+ </titles>
592
+ <format mime_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" />
593
+ <doi_data>
594
+ <doi>10.7554/eLife.01567.015</doi>
595
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.015</resource>
596
+ </doi_data>
597
+ </component>
598
+ <component parent_relation="isPartOf">
599
+ <titles>
600
+ <title>
601
+ <b>Decision letter</b>
602
+ </title>
603
+ </titles>
604
+ <format mime_type="text/plain" />
605
+ <doi_data>
606
+ <doi>10.7554/eLife.01567.016</doi>
607
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.016</resource>
608
+ </doi_data>
609
+ </component>
610
+ <component parent_relation="isPartOf">
611
+ <titles>
612
+ <title>
613
+ <b>Author response</b>
614
+ </title>
615
+ </titles>
616
+ <format mime_type="text/plain" />
617
+ <doi_data>
618
+ <doi>10.7554/eLife.01567.017</doi>
619
+ <resource>http://elifesciences.org/lookup/doi/10.7554/eLife.01567.017</resource>
620
+ </doi_data>
621
+ </component>
622
+ </component_list>
623
+ </journal_article>
624
+ </journal>
625
+ </crossref>
626
+ </doi_record>
627
+ </doi_records>
46
628
  ```
47
629
 
48
630
  Convert Crossref XML to schema.org/JSON-LD:
@@ -53,6 +635,7 @@ bolognese read https://doi.org/10.7554/elife.01567
53
635
  "@context": "http://schema.org",
54
636
  "@type": "ScholarlyArticle",
55
637
  "@id": "https://doi.org/10.7554/elife.01567",
638
+ "url": "http://elifesciences.org/lookup/doi/10.7554/eLife.01567",
56
639
  "additionalType": "JournalArticle",
57
640
  "name": "Automated quantitative histology reveals vascular morphodynamics during Arabidopsis hypocotyl secondary growth",
58
641
  "author": [{
@@ -229,7 +812,7 @@ Convert Crossref XML to DataCite XML:
229
812
  ```
230
813
  bolognese read https://doi.org/10.7554/elife.01567 --as datacite
231
814
 
232
- ?xml version="1.0" encoding="UTF-8"?>
815
+ <?xml version="1.0" encoding="UTF-8"?>
233
816
  <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4/metadata.xsd">
234
817
  <identifier identifierType="DOI">10.7554/eLife.01567</identifier>
235
818
  <creators>
@@ -305,6 +888,72 @@ bolognese read https://doi.org/10.7554/elife.01567 --as datacite
305
888
  Read DataCite XML:
306
889
  ```
307
890
  bolognese read 10.5061/DRYAD.8515 --as datacite
891
+
892
+ <?xml version="1.0" encoding="UTF-8"?>
893
+ <resource
894
+ xmlns="http://datacite.org/schema/kernel-3"
895
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
896
+ xmlns:mets="http://www.loc.gov/METS/"
897
+ xmlns:dspace="http://www.dspace.org/xmlns/dspace/dim"
898
+ xmlns:dim="http://www.dspace.org/xmlns/dspace/dim"
899
+ xmlns:dryad="http://purl.org/dryad/terms/"
900
+ xsi:schemaLocation="http://datacite.org/schema/kernel-3 http://schema.datacite.org/meta/kernel-3/metadata.xsd">
901
+ <identifier identifierType="DOI">10.5061/DRYAD.8515</identifier>
902
+ <version>1</version>
903
+ <creators>
904
+ <creator>
905
+ <creatorName>Ollomo, Benjamin</creatorName>
906
+ </creator>
907
+ <creator>
908
+ <creatorName>Durand, Patrick</creatorName>
909
+ </creator>
910
+ <creator>
911
+ <creatorName>Prugnolle, Franck</creatorName>
912
+ </creator>
913
+ <creator>
914
+ <creatorName>Douzery, Emmanuel J. P.</creatorName>
915
+ </creator>
916
+ <creator>
917
+ <creatorName>Arnathau, Céline</creatorName>
918
+ </creator>
919
+ <creator>
920
+ <creatorName>Nkoghe, Dieudonné</creatorName>
921
+ </creator>
922
+ <creator>
923
+ <creatorName>Leroy, Eric</creatorName>
924
+ </creator>
925
+ <creator>
926
+ <creatorName>Renaud, François</creatorName>
927
+ </creator>
928
+ </creators>
929
+ <titles>
930
+ <title>Data from: A new malaria agent in African hominids.</title>
931
+ </titles>
932
+ <publisher>Dryad Digital Repository</publisher>
933
+ <publicationYear>2011</publicationYear>
934
+ <subjects>
935
+ <subject>Phylogeny</subject>
936
+ <subject>Malaria</subject>
937
+ <subject>Parasites</subject>
938
+ <subject>Taxonomy</subject>
939
+ <subject>Mitochondrial genome</subject>
940
+ <subject>Africa</subject>
941
+ <subject>Plasmodium</subject>
942
+ </subjects>
943
+ <resourceType resourceTypeGeneral="Dataset">DataPackage</resourceType>
944
+ <alternateIdentifiers>
945
+ <alternateIdentifier alternateIdentifierType="citation">Ollomo B, Durand P, Prugnolle F, Douzery EJP, Arnathau C, Nkoghe D, Leroy E, Renaud F (2009) A new malaria agent in African hominids. PLoS Pathogens 5(5): e1000446.</alternateIdentifier>
946
+ </alternateIdentifiers>
947
+ <relatedIdentifiers>
948
+ <relatedIdentifier relatedIdentifierType="DOI" relationType="HasPart">10.5061/DRYAD.8515/1</relatedIdentifier>
949
+ <relatedIdentifier relatedIdentifierType="DOI" relationType="HasPart">10.5061/DRYAD.8515/2</relatedIdentifier>
950
+ <relatedIdentifier relatedIdentifierType="DOI" relationType="IsReferencedBy">10.1371/JOURNAL.PPAT.1000446</relatedIdentifier>
951
+ <relatedIdentifier relatedIdentifierType="PMID" relationType="IsReferencedBy">19478877</relatedIdentifier>
952
+ </relatedIdentifiers>
953
+ <rightsList>
954
+ <rights rightsURI="http://creativecommons.org/publicdomain/zero/1.0/"/>
955
+ </rightsList>
956
+ </resource>
308
957
  ```
309
958
 
310
959
  Convert DataCite XML to schema.org/JSON-LD:
@@ -366,6 +1015,7 @@ bolognese read 10.5061/DRYAD.8515
366
1015
  "@type": "CreativeWork",
367
1016
  "@id": "https://doi.org/10.1371/journal.ppat.1000446"
368
1017
  }],
1018
+ "schemaVersion": "http://datacite.org/schema/kernel-3",
369
1019
  "publisher": {
370
1020
  "@type": "Organization",
371
1021
  "name": "Dryad Digital Repository"
@@ -377,6 +1027,88 @@ bolognese read 10.5061/DRYAD.8515
377
1027
  }
378
1028
  ```
379
1029
 
1030
+ Convert DataCite XML to schema version 4.0:
1031
+ ```
1032
+ bolognese read 10.5061/DRYAD.8515 --as datacite --schema_version http://datacite.org/schema/kernel-4
1033
+
1034
+ <?xml version="1.0" encoding="UTF-8"?>
1035
+ <resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://datacite.org/schema/kernel-4" xsi:schemaLocation="http://datacite.org/schema/kernel-4 http://schema.datacite.org/meta/kernel-4/metadata.xsd">
1036
+ <identifier identifierType="DOI">10.5061/DRYAD.8515</identifier>
1037
+ <creators>
1038
+ <creator>
1039
+ <creatorName>Ollomo, Benjamin</creatorName>
1040
+ <givenName>Benjamin</givenName>
1041
+ <familyName>Ollomo</familyName>
1042
+ </creator>
1043
+ <creator>
1044
+ <creatorName>Durand, Patrick</creatorName>
1045
+ <givenName>Patrick</givenName>
1046
+ <familyName>Durand</familyName>
1047
+ </creator>
1048
+ <creator>
1049
+ <creatorName>Prugnolle, Franck</creatorName>
1050
+ <givenName>Franck</givenName>
1051
+ <familyName>Prugnolle</familyName>
1052
+ </creator>
1053
+ <creator>
1054
+ <creatorName>Douzery, Emmanuel J. P.</creatorName>
1055
+ <givenName>Emmanuel J. P.</givenName>
1056
+ <familyName>Douzery</familyName>
1057
+ </creator>
1058
+ <creator>
1059
+ <creatorName>Arnathau, Céline</creatorName>
1060
+ <givenName>Céline</givenName>
1061
+ <familyName>Arnathau</familyName>
1062
+ </creator>
1063
+ <creator>
1064
+ <creatorName>Nkoghe, Dieudonné</creatorName>
1065
+ <givenName>Dieudonné</givenName>
1066
+ <familyName>Nkoghe</familyName>
1067
+ </creator>
1068
+ <creator>
1069
+ <creatorName>Leroy, Eric</creatorName>
1070
+ <givenName>Eric</givenName>
1071
+ <familyName>Leroy</familyName>
1072
+ </creator>
1073
+ <creator>
1074
+ <creatorName>Renaud, François</creatorName>
1075
+ <givenName>François</givenName>
1076
+ <familyName>Renaud</familyName>
1077
+ </creator>
1078
+ </creators>
1079
+ <titles>
1080
+ <title>Data from: A new malaria agent in African hominids.</title>
1081
+ </titles>
1082
+ <publisher>Dryad Digital Repository</publisher>
1083
+ <publicationYear>2011</publicationYear>
1084
+ <resourceType resourceTypeGeneral="Dataset">DataPackage</resourceType>
1085
+ <alternateIdentifiers>
1086
+ <alternateIdentifier alternateIdentifierType="Local accession number">Ollomo B, Durand P, Prugnolle F, Douzery EJP, Arnathau C, Nkoghe D, Leroy E, Renaud F (2009) A new malaria agent in African hominids. PLoS Pathogens 5(5): e1000446.</alternateIdentifier>
1087
+ </alternateIdentifiers>
1088
+ <subjects>
1089
+ <subject>Phylogeny</subject>
1090
+ <subject>Malaria</subject>
1091
+ <subject>Parasites</subject>
1092
+ <subject>Taxonomy</subject>
1093
+ <subject>Mitochondrial genome</subject>
1094
+ <subject>Africa</subject>
1095
+ <subject>Plasmodium</subject>
1096
+ </subjects>
1097
+ <dates>
1098
+ <date dateType="Issued">2011</date>
1099
+ </dates>
1100
+ <relatedIdentifiers>
1101
+ <relatedIdentifier relatedIdentifierType="DOI" relationType="HasPart">https://doi.org/10.5061/dryad.8515/1</relatedIdentifier>
1102
+ <relatedIdentifier relatedIdentifierType="DOI" relationType="HasPart">https://doi.org/10.5061/dryad.8515/2</relatedIdentifier>
1103
+ <relatedIdentifier relatedIdentifierType="DOI" relationType="References">https://doi.org/10.1371/journal.ppat.1000446</relatedIdentifier>
1104
+ </relatedIdentifiers>
1105
+ <version>1</version>
1106
+ <rightsList>
1107
+ <rights rightsURI="http://creativecommons.org/publicdomain/zero/1.0/">Public Domain (CC0 1.0)</rights>
1108
+ </rightsList>
1109
+ </resource>
1110
+ ```
1111
+
380
1112
  ## Development
381
1113
 
382
1114
  We use rspec for unit testing:
data/lib/bolognese/cli.rb CHANGED
@@ -24,6 +24,7 @@ module Bolognese
24
24
 
25
25
  desc "read id", "read metadata for ID"
26
26
  method_option :as, default: "schema_org"
27
+ method_option :schema_version
27
28
  def read(id)
28
29
  id = normalize_id(id)
29
30
  provider = find_provider(id)
@@ -32,7 +33,7 @@ module Bolognese
32
33
  if provider.present?
33
34
  p = case provider
34
35
  when "crossref" then Crossref.new(id: id)
35
- when "datacite" then Datacite.new(id: id)
36
+ when "datacite" then Datacite.new(id: id, schema_version: options[:schema_version])
36
37
  else SchemaOrg.new(id: id)
37
38
  end
38
39
 
@@ -58,6 +58,10 @@ module Bolognese
58
58
  bibliographic_metadata.dig("doi_data", "doi")
59
59
  end
60
60
 
61
+ def url
62
+ bibliographic_metadata.dig("doi_data", "resource")
63
+ end
64
+
61
65
  def id
62
66
  normalize_doi(doi)
63
67
  end
@@ -18,7 +18,7 @@ module Bolognese
18
18
  "Other" => "CreativeWork"
19
19
  }
20
20
 
21
- def initialize(id: nil, string: nil)
21
+ def initialize(id: nil, string: nil, schema_version: nil)
22
22
  id = normalize_doi(id) if id.present?
23
23
 
24
24
  if string.present?
@@ -27,11 +27,26 @@ module Bolognese
27
27
  response = Maremma.get(id, accept: "application/vnd.datacite.datacite+xml", raw: true)
28
28
  @raw = response.body.fetch("data", nil)
29
29
  end
30
+
31
+ @schema_version = schema_version
30
32
  end
31
33
 
32
- alias_method :datacite, :raw
33
34
  alias_method :schema_org, :as_schema_org
34
35
 
36
+ def schema_version
37
+ @schema_version ||= metadata.fetch("schemaLocation", "").split(" ").first
38
+ end
39
+
40
+ # show DataCite XML in different version if schema_version option is provided
41
+ # currently only supports 4.0
42
+ def datacite
43
+ if schema_version != metadata.fetch("schemaLocation", "").split(" ").first
44
+ as_datacite
45
+ else
46
+ raw
47
+ end
48
+ end
49
+
35
50
  def metadata
36
51
  @metadata ||= raw.present? ? Maremma.from_xml(raw).fetch("resource", {}) : {}
37
52
  end
@@ -133,6 +148,10 @@ module Bolognese
133
148
 
134
149
  end
135
150
 
151
+ def content_size
152
+ metadata.fetch("size", nil)
153
+ end
154
+
136
155
  def related_identifiers(relation_type)
137
156
  Array(metadata.dig("relatedIdentifiers", "relatedIdentifier"))
138
157
  .select { |r| relation_type.split(" ").include?(r["relationType"]) && %w(DOI URL).include?(r["relatedIdentifierType"]) }
@@ -12,7 +12,7 @@ module Bolognese
12
12
  include Bolognese::DataciteUtils
13
13
  include Bolognese::Utils
14
14
 
15
- attr_reader :id, :raw, :provider
15
+ attr_reader :id, :raw, :provider, :schema_version
16
16
 
17
17
  alias_method :datacite, :as_datacite
18
18
 
@@ -60,6 +60,14 @@ module Bolognese
60
60
 
61
61
  end
62
62
 
63
+ def content_size
64
+
65
+ end
66
+
67
+ def schema_version
68
+
69
+ end
70
+
63
71
  def as_schema_org
64
72
  { "@context" => "http://schema.org",
65
73
  "@type" => type,
@@ -75,6 +83,7 @@ module Bolognese
75
83
  "version" => version,
76
84
  "keywords" => keywords,
77
85
  "language" => language,
86
+ "contentSize" => content_size,
78
87
  "dateCreated" => date_created,
79
88
  "datePublished" => date_published,
80
89
  "dateModified" => date_modified,
@@ -84,6 +93,7 @@ module Bolognese
84
93
  "isPartOf" => is_part_of,
85
94
  "hasPart" => has_part,
86
95
  "citation" => citation,
96
+ "schemaVersion" => schema_version,
87
97
  "publisher" => publisher,
88
98
  "provider" => provider
89
99
  }.compact.to_json
@@ -1,3 +1,3 @@
1
1
  module Bolognese
2
- VERSION = "0.5.1"
2
+ VERSION = "0.5.2"
3
3
  end
@@ -9,6 +9,7 @@ describe Bolognese::Crossref, vcr: true do
9
9
  it "DOI with data citation" do
10
10
  expect(subject.id).to eq("https://doi.org/10.7554/elife.01567")
11
11
  expect(subject.type).to eq("ScholarlyArticle")
12
+ expect(subject.url).to eq("http://elifesciences.org/lookup/doi/10.7554/eLife.01567")
12
13
  expect(subject.additional_type).to eq("JournalArticle")
13
14
  expect(subject.resource_type_general).to eq("Text")
14
15
  expect(subject.author).to eq([{"@type"=>"Person", "givenName"=>"Martial", "familyName"=>"Sankar"},
@@ -30,6 +31,7 @@ describe Bolognese::Crossref, vcr: true do
30
31
  id = "https://doi.org/10.1371/journal.pone.0000030"
31
32
  subject = Bolognese::Crossref.new(id: id)
32
33
  expect(subject.id).to eq(id)
34
+ expect(subject.url).to eq("http://dx.plos.org/10.1371/journal.pone.0000030")
33
35
  expect(subject.type).to eq("ScholarlyArticle")
34
36
  expect(subject.additional_type).to eq("JournalArticle")
35
37
  expect(subject.resource_type_general).to eq("Text")
@@ -52,6 +54,7 @@ describe Bolognese::Crossref, vcr: true do
52
54
  id = "https://doi.org/10.1101/097196"
53
55
  subject = Bolognese::Crossref.new(id: id)
54
56
  expect(subject.id).to eq(id)
57
+ expect(subject.url).to eq("http://biorxiv.org/lookup/doi/10.1101/097196")
55
58
  expect(subject.type).to eq("ScholarlyArticle")
56
59
  expect(subject.additional_type).to eq("PostedContent")
57
60
  expect(subject.resource_type_general).to eq("Text")
@@ -70,6 +73,7 @@ describe Bolognese::Crossref, vcr: true do
70
73
  id = "https://doi.org/10.1890/0012-9658(2006)87[2832:tiopma]2.0.co;2"
71
74
  subject = Bolognese::Crossref.new(id: id)
72
75
  expect(subject.id).to eq("https://doi.org/10.1890/0012-9658(2006)87%5B2832:tiopma%5D2.0.co;2")
76
+ expect(subject.url).to eq("http://doi.wiley.com/10.1890/0012-9658(2006)87[2832:TIOPMA]2.0.CO;2")
73
77
  expect(subject.type).to eq("ScholarlyArticle")
74
78
  expect(subject.additional_type).to eq("JournalArticle")
75
79
  expect(subject.resource_type_general).to eq("Text")
@@ -88,6 +92,7 @@ describe Bolognese::Crossref, vcr: true do
88
92
  id = "https://doi.org/10.1155/2012/291294"
89
93
  subject = Bolognese::Crossref.new(id: id)
90
94
  expect(subject.id).to eq("https://doi.org/10.1155/2012/291294")
95
+ expect(subject.url).to eq("http://www.hindawi.com/journals/pm/2012/291294/")
91
96
  expect(subject.type).to eq("ScholarlyArticle")
92
97
  expect(subject.additional_type).to eq("JournalArticle")
93
98
  expect(subject.resource_type_general).to eq("Text")
@@ -115,6 +120,7 @@ describe Bolognese::Crossref, vcr: true do
115
120
  id = "https://doi.org/10.1016/j.ejphar.2015.03.018"
116
121
  subject = Bolognese::Crossref.new(id: id)
117
122
  expect(subject.id).to eq(id)
123
+ expect(subject.url).to eq("http://linkinghub.elsevier.com/retrieve/pii/S0014299915002332")
118
124
  expect(subject.type).to eq("ScholarlyArticle")
119
125
  expect(subject.additional_type).to eq("JournalArticle")
120
126
  expect(subject.resource_type_general).to eq("Text")
@@ -155,6 +161,7 @@ describe Bolognese::Crossref, vcr: true do
155
161
 
156
162
  subject = Bolognese::Crossref.new(string: string)
157
163
  expect(subject.id).to eq("https://doi.org/10.7554/elife.01567")
164
+ expect(subject.url).to eq("http://elifesciences.org/lookup/doi/10.7554/eLife.01567")
158
165
  expect(subject.type).to eq("ScholarlyArticle")
159
166
  expect(subject.additional_type).to eq("JournalArticle")
160
167
  expect(subject.resource_type_general).to eq("Text")
@@ -28,6 +28,7 @@ describe Bolognese::Datacite, vcr: true do
28
28
  expect(subject.citation).to eq([{"@type"=>"CreativeWork", "@id"=>"https://doi.org/10.1371/journal.ppat.1000446"}])
29
29
  expect(subject.publisher).to eq("@type"=>"Organization", "name"=>"Dryad Digital Repository")
30
30
  expect(subject.provider).to eq("@type"=>"Organization", "name"=>"DataCite")
31
+ expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-3")
31
32
  end
32
33
 
33
34
  it "BlogPosting" do
@@ -48,6 +49,7 @@ describe Bolognese::Datacite, vcr: true do
48
49
  {"@type"=>"CreativeWork", "@id"=>"https://doi.org/10.5438/55e5-t5c0"}])
49
50
  expect(subject.publisher).to eq("@type"=>"Organization", "name"=>"DataCite")
50
51
  expect(subject.provider).to eq("@type"=>"Organization", "name"=>"DataCite")
52
+ expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-4")
51
53
  end
52
54
 
53
55
  it "Date" do
@@ -63,6 +65,7 @@ describe Bolognese::Datacite, vcr: true do
63
65
  expect(subject.date_published).to eq("2013")
64
66
  expect(subject.publisher).to eq("@type"=>"Organization", "name"=>"Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik GmbH, Wadern/Saarbruecken, Germany")
65
67
  expect(subject.provider).to eq("@type"=>"Organization", "name"=>"DataCite")
68
+ expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-2.1")
66
69
  end
67
70
 
68
71
  it "Schema.org JSON" do
@@ -99,4 +102,36 @@ describe Bolognese::Datacite, vcr: true do
99
102
  expect(subject.provider).to eq("@type"=>"Organization", "name"=>"DataCite")
100
103
  end
101
104
  end
105
+
106
+ context "get metadata as datacite xml 4.0" do
107
+ it "Dataset" do
108
+ id = "https://doi.org/10.5061/DRYAD.8515"
109
+ subject = Bolognese::Datacite.new(id: id, schema_version: "http://datacite.org/schema/kernel-4")
110
+ expect(subject.id).to eq("https://doi.org/10.5061/dryad.8515")
111
+ expect(subject.type).to eq("Dataset")
112
+ expect(subject.additional_type).to eq("DataPackage")
113
+ expect(subject.resource_type_general).to eq("Dataset")
114
+ expect(subject.author).to eq([{"@type"=>"Person", "givenName"=>"Benjamin", "familyName"=>"Ollomo"},
115
+ {"@type"=>"Person", "givenName"=>"Patrick", "familyName"=>"Durand"},
116
+ {"@type"=>"Person", "givenName"=>"Franck", "familyName"=>"Prugnolle"},
117
+ {"@type"=>"Person", "givenName"=>"Emmanuel J. P.", "familyName"=>"Douzery"},
118
+ {"@type"=>"Person", "givenName"=>"Céline", "familyName"=>"Arnathau"},
119
+ {"@type"=>"Person", "givenName"=>"Dieudonné", "familyName"=>"Nkoghe"},
120
+ {"@type"=>"Person", "givenName"=>"Eric", "familyName"=>"Leroy"},
121
+ {"@type"=>"Person", "givenName"=>"François", "familyName"=>"Renaud"}])
122
+ expect(subject.name).to eq("Data from: A new malaria agent in African hominids.")
123
+ expect(subject.alternate_name).to eq("Ollomo B, Durand P, Prugnolle F, Douzery EJP, Arnathau C, Nkoghe D, Leroy E, Renaud F (2009) A new malaria agent in African hominids. PLoS Pathogens 5(5): e1000446.")
124
+ expect(subject.license).to eq("http://creativecommons.org/publicdomain/zero/1.0/")
125
+ expect(subject.date_published).to eq("2011")
126
+ expect(subject.has_part).to eq([{"@type"=>"CreativeWork", "@id"=>"https://doi.org/10.5061/dryad.8515/1"},
127
+ {"@type"=>"CreativeWork", "@id"=>"https://doi.org/10.5061/dryad.8515/2"}])
128
+ expect(subject.citation).to eq([{"@type"=>"CreativeWork", "@id"=>"https://doi.org/10.1371/journal.ppat.1000446"}])
129
+ expect(subject.publisher).to eq("@type"=>"Organization", "name"=>"Dryad Digital Repository")
130
+ expect(subject.provider).to eq("@type"=>"Organization", "name"=>"DataCite")
131
+ expect(subject.schema_version).to eq("http://datacite.org/schema/kernel-4")
132
+
133
+ datacite = Maremma.from_xml(subject.as_datacite).fetch("resource", {})
134
+ expect(datacite.fetch("schemaLocation", "").split(" ").first).to eq("http://datacite.org/schema/kernel-4")
135
+ end
136
+ end
102
137
  end
@@ -0,0 +1,173 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: https://doi.org/10.5061/dryad.8515
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers:
10
+ User-Agent:
11
+ - Maremma - https://github.com/datacite/maremma
12
+ Accept:
13
+ - application/vnd.datacite.datacite+xml
14
+ response:
15
+ status:
16
+ code: 303
17
+ message: ''
18
+ headers:
19
+ Server:
20
+ - Apache-Coyote/1.1
21
+ Vary:
22
+ - Accept
23
+ Location:
24
+ - http://data.datacite.org/10.5061%2Fdryad.8515
25
+ Expires:
26
+ - Tue, 21 Feb 2017 08:30:07 GMT
27
+ Content-Type:
28
+ - text/html;charset=utf-8
29
+ Content-Length:
30
+ - '175'
31
+ Date:
32
+ - Tue, 21 Feb 2017 07:56:26 GMT
33
+ body:
34
+ encoding: UTF-8
35
+ string: |-
36
+ <html><head><title>Handle Redirect</title></head>
37
+ <body><a href="http://data.datacite.org/10.5061%2Fdryad.8515">http://data.datacite.org/10.5061%2Fdryad.8515</a></body></html>
38
+ http_version:
39
+ recorded_at: Tue, 21 Feb 2017 07:56:26 GMT
40
+ - request:
41
+ method: get
42
+ uri: http://data.datacite.org/10.5061%2Fdryad.8515
43
+ body:
44
+ encoding: US-ASCII
45
+ string: ''
46
+ headers:
47
+ User-Agent:
48
+ - Maremma - https://github.com/datacite/maremma
49
+ Accept:
50
+ - application/vnd.datacite.datacite+xml
51
+ response:
52
+ status:
53
+ code: 301
54
+ message: ''
55
+ headers:
56
+ Server:
57
+ - openresty/1.11.2.2
58
+ Date:
59
+ - Tue, 21 Feb 2017 07:56:27 GMT
60
+ Content-Type:
61
+ - text/html
62
+ Content-Length:
63
+ - '191'
64
+ Connection:
65
+ - keep-alive
66
+ Location:
67
+ - https://data.datacite.org/10.5061%2Fdryad.8515
68
+ body:
69
+ encoding: UTF-8
70
+ string: "<html>\r\n<head><title>301 Moved Permanently</title></head>\r\n<body
71
+ bgcolor=\"white\">\r\n<center><h1>301 Moved Permanently</h1></center>\r\n<hr><center>openresty/1.11.2.2</center>\r\n</body>\r\n</html>\r\n"
72
+ http_version:
73
+ recorded_at: Tue, 21 Feb 2017 07:56:27 GMT
74
+ - request:
75
+ method: get
76
+ uri: https://data.datacite.org/10.5061%2Fdryad.8515
77
+ body:
78
+ encoding: US-ASCII
79
+ string: ''
80
+ headers:
81
+ User-Agent:
82
+ - Maremma - https://github.com/datacite/maremma
83
+ Accept:
84
+ - application/vnd.datacite.datacite+xml
85
+ response:
86
+ status:
87
+ code: 200
88
+ message: ''
89
+ headers:
90
+ Server:
91
+ - openresty/1.11.2.2
92
+ Date:
93
+ - Tue, 21 Feb 2017 07:56:27 GMT
94
+ Content-Type:
95
+ - application/vnd.datacite.datacite+xml
96
+ Content-Length:
97
+ - '2601'
98
+ Connection:
99
+ - keep-alive
100
+ Cache-Control:
101
+ - no-transform, max-age=3600
102
+ Last-Modified:
103
+ - Sat, 04 Feb 2017 17:54:37 GMT
104
+ Vary:
105
+ - Accept
106
+ Access-Control-Allow-Origin:
107
+ - "*"
108
+ Access-Control-Allow-Methods:
109
+ - GET, POST, OPTIONS
110
+ body:
111
+ encoding: ASCII-8BIT
112
+ string: !binary |-
113
+ PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHJlc291
114
+ cmNlIHhtbG5zPSJodHRwOi8vZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwt
115
+ MyIgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8yMDAxL1hNTFNjaGVt
116
+ YS1pbnN0YW5jZSIgeG1sbnM6bWV0cz0iaHR0cDovL3d3dy5sb2MuZ292L01F
117
+ VFMvIiB4bWxuczpkc3BhY2U9Imh0dHA6Ly93d3cuZHNwYWNlLm9yZy94bWxu
118
+ cy9kc3BhY2UvZGltIiB4bWxuczpkaW09Imh0dHA6Ly93d3cuZHNwYWNlLm9y
119
+ Zy94bWxucy9kc3BhY2UvZGltIiB4bWxuczpkcnlhZD0iaHR0cDovL3B1cmwu
120
+ b3JnL2RyeWFkL3Rlcm1zLyIgeHNpOnNjaGVtYUxvY2F0aW9uPSJodHRwOi8v
121
+ ZGF0YWNpdGUub3JnL3NjaGVtYS9rZXJuZWwtMyBodHRwOi8vc2NoZW1hLmRh
122
+ dGFjaXRlLm9yZy9tZXRhL2tlcm5lbC0zL21ldGFkYXRhLnhzZCI+ICA8aWRl
123
+ bnRpZmllciBpZGVudGlmaWVyVHlwZT0iRE9JIj4xMC41MDYxL0RSWUFELjg1
124
+ MTU8L2lkZW50aWZpZXI+ICA8dmVyc2lvbj4xPC92ZXJzaW9uPiAgPGNyZWF0
125
+ b3JzPiAgICA8Y3JlYXRvcj4gICAgICA8Y3JlYXRvck5hbWU+T2xsb21vLCBC
126
+ ZW5qYW1pbjwvY3JlYXRvck5hbWU+ICAgIDwvY3JlYXRvcj4gICAgPGNyZWF0
127
+ b3I+ICAgICAgPGNyZWF0b3JOYW1lPkR1cmFuZCwgUGF0cmljazwvY3JlYXRv
128
+ ck5hbWU+ICAgIDwvY3JlYXRvcj4gICAgPGNyZWF0b3I+ICAgICAgPGNyZWF0
129
+ b3JOYW1lPlBydWdub2xsZSwgRnJhbmNrPC9jcmVhdG9yTmFtZT4gICAgPC9j
130
+ cmVhdG9yPiAgICA8Y3JlYXRvcj4gICAgICA8Y3JlYXRvck5hbWU+RG91emVy
131
+ eSwgRW1tYW51ZWwgSi4gUC48L2NyZWF0b3JOYW1lPiAgICA8L2NyZWF0b3I+
132
+ ICAgIDxjcmVhdG9yPiAgICAgIDxjcmVhdG9yTmFtZT5Bcm5hdGhhdSwgQ8Op
133
+ bGluZTwvY3JlYXRvck5hbWU+ICAgIDwvY3JlYXRvcj4gICAgPGNyZWF0b3I+
134
+ ICAgICAgPGNyZWF0b3JOYW1lPk5rb2doZSwgRGlldWRvbm7DqTwvY3JlYXRv
135
+ ck5hbWU+ICAgIDwvY3JlYXRvcj4gICAgPGNyZWF0b3I+ICAgICAgPGNyZWF0
136
+ b3JOYW1lPkxlcm95LCBFcmljPC9jcmVhdG9yTmFtZT4gICAgPC9jcmVhdG9y
137
+ PiAgICA8Y3JlYXRvcj4gICAgICA8Y3JlYXRvck5hbWU+UmVuYXVkLCBGcmFu
138
+ w6dvaXM8L2NyZWF0b3JOYW1lPiAgICA8L2NyZWF0b3I+ICA8L2NyZWF0b3Jz
139
+ PiAgPHRpdGxlcz4gICAgPHRpdGxlPkRhdGEgZnJvbTogQSBuZXcgbWFsYXJp
140
+ YSBhZ2VudCBpbiBBZnJpY2FuIGhvbWluaWRzLjwvdGl0bGU+ICA8L3RpdGxl
141
+ cz4gIDxwdWJsaXNoZXI+RHJ5YWQgRGlnaXRhbCBSZXBvc2l0b3J5PC9wdWJs
142
+ aXNoZXI+ICA8cHVibGljYXRpb25ZZWFyPjIwMTE8L3B1YmxpY2F0aW9uWWVh
143
+ cj4gIDxzdWJqZWN0cz4gICAgPHN1YmplY3Q+UGh5bG9nZW55PC9zdWJqZWN0
144
+ PiAgICA8c3ViamVjdD5NYWxhcmlhPC9zdWJqZWN0PiAgICA8c3ViamVjdD5Q
145
+ YXJhc2l0ZXM8L3N1YmplY3Q+ICAgIDxzdWJqZWN0PlRheG9ub215PC9zdWJq
146
+ ZWN0PiAgICA8c3ViamVjdD5NaXRvY2hvbmRyaWFsIGdlbm9tZTwvc3ViamVj
147
+ dD4gICAgPHN1YmplY3Q+QWZyaWNhPC9zdWJqZWN0PiAgICA8c3ViamVjdD5Q
148
+ bGFzbW9kaXVtPC9zdWJqZWN0PiAgPC9zdWJqZWN0cz4gIDxyZXNvdXJjZVR5
149
+ cGUgcmVzb3VyY2VUeXBlR2VuZXJhbD0iRGF0YXNldCI+RGF0YVBhY2thZ2U8
150
+ L3Jlc291cmNlVHlwZT4gIDxhbHRlcm5hdGVJZGVudGlmaWVycz4gICAgPGFs
151
+ dGVybmF0ZUlkZW50aWZpZXIgYWx0ZXJuYXRlSWRlbnRpZmllclR5cGU9ImNp
152
+ dGF0aW9uIj5PbGxvbW8gQiwgRHVyYW5kIFAsIFBydWdub2xsZSBGLCBEb3V6
153
+ ZXJ5IEVKUCwgQXJuYXRoYXUgQywgTmtvZ2hlIEQsIExlcm95IEUsIFJlbmF1
154
+ ZCBGICgyMDA5KSBBIG5ldyBtYWxhcmlhIGFnZW50IGluIEFmcmljYW4gaG9t
155
+ aW5pZHMuIFBMb1MgUGF0aG9nZW5zIDUoNSk6IGUxMDAwNDQ2LjwvYWx0ZXJu
156
+ YXRlSWRlbnRpZmllcj4gIDwvYWx0ZXJuYXRlSWRlbnRpZmllcnM+ICA8cmVs
157
+ YXRlZElkZW50aWZpZXJzPiAgICA8cmVsYXRlZElkZW50aWZpZXIgcmVsYXRl
158
+ ZElkZW50aWZpZXJUeXBlPSJET0kiIHJlbGF0aW9uVHlwZT0iSGFzUGFydCI+
159
+ MTAuNTA2MS9EUllBRC44NTE1LzE8L3JlbGF0ZWRJZGVudGlmaWVyPiAgICA8
160
+ cmVsYXRlZElkZW50aWZpZXIgcmVsYXRlZElkZW50aWZpZXJUeXBlPSJET0ki
161
+ IHJlbGF0aW9uVHlwZT0iSGFzUGFydCI+MTAuNTA2MS9EUllBRC44NTE1LzI8
162
+ L3JlbGF0ZWRJZGVudGlmaWVyPiAgICA8cmVsYXRlZElkZW50aWZpZXIgcmVs
163
+ YXRlZElkZW50aWZpZXJUeXBlPSJET0kiIHJlbGF0aW9uVHlwZT0iSXNSZWZl
164
+ cmVuY2VkQnkiPjEwLjEzNzEvSk9VUk5BTC5QUEFULjEwMDA0NDY8L3JlbGF0
165
+ ZWRJZGVudGlmaWVyPiAgICA8cmVsYXRlZElkZW50aWZpZXIgcmVsYXRlZElk
166
+ ZW50aWZpZXJUeXBlPSJQTUlEIiByZWxhdGlvblR5cGU9IklzUmVmZXJlbmNl
167
+ ZEJ5Ij4xOTQ3ODg3NzwvcmVsYXRlZElkZW50aWZpZXI+ICA8L3JlbGF0ZWRJ
168
+ ZGVudGlmaWVycz4gIDxyaWdodHNMaXN0PiAgICA8cmlnaHRzIHJpZ2h0c1VS
169
+ ST0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvcHVibGljZG9tYWluL3pl
170
+ cm8vMS4wLyIvPiAgPC9yaWdodHNMaXN0PjwvcmVzb3VyY2U+
171
+ http_version:
172
+ recorded_at: Tue, 21 Feb 2017 07:56:27 GMT
173
+ recorded_with: VCR 3.0.3
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bolognese
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.5.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Martin Fenner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-19 00:00:00.000000000 Z
11
+ date: 2017-02-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: maremma
@@ -405,6 +405,7 @@ files:
405
405
  - spec/fixtures/vcr_cassettes/Bolognese_Datacite/get_metadata/Dataset.yml
406
406
  - spec/fixtures/vcr_cassettes/Bolognese_Datacite/get_metadata/Date.yml
407
407
  - spec/fixtures/vcr_cassettes/Bolognese_Datacite/get_metadata/Schema_org_JSON.yml
408
+ - spec/fixtures/vcr_cassettes/Bolognese_Datacite/get_metadata_as_datacite_xml_4_0/Dataset.yml
408
409
  - spec/fixtures/vcr_cassettes/Bolognese_Datacite/get_metadata_as_string/Dataset.yml
409
410
  - spec/fixtures/vcr_cassettes/Bolognese_Datacite/insert_alternate_identifiers/insert.yml
410
411
  - spec/fixtures/vcr_cassettes/Bolognese_Datacite/insert_contributors/insert.yml