relaton-ieee 1.7.5 → 1.9.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
  SHA256:
3
- metadata.gz: 3c776b17899137d3858c7e0bd36014b085c4699d8bd827540c2b83462a4f6011
4
- data.tar.gz: c1c70bb00cc61e17107b161dcfda3e3854efc1dc8778e7fa0ca3a714341d59b6
3
+ metadata.gz: 7b87fe1e68a822c6589d00479407ad483f13bcffd1d652885839e0e15c0f0b8c
4
+ data.tar.gz: 8592b17b9d14faaa3b4a117c1f453af5591884230b6f92f68a4caf4a7dc89bed
5
5
  SHA512:
6
- metadata.gz: 28e3210a520f00460e3e8d820e62577ae0195bdd62e3d54493a617c50dcc0c5596a3b230c91c157d4102fc028f04370f5988c84d78f5244ec3934e22d848846d
7
- data.tar.gz: e2e5cc4ec8205b318a51574fac212da2975a797fc7825734c900478837662d83d256f074d5bb9b4dcaf9f872bbf9e924f66addf200470564faff3d7d3f6d63e1
6
+ metadata.gz: 0463f9179cd438c1c9bcd146b586aa82143ddf119b00b36b24a33bead1f9cfc597553cc277c3ff24e5c2f58b4c7ded9bd553bdfec3e2a327d14377f000a94346
7
+ data.tar.gz: 3777fa1634406a12a0734a6efab5d0ac9df0aa540f4f7fb7e26118657809a3120bc796b257e02b2a460cf79757cdfbeb38e224ec1be30798ee9aa23649a0ee63
@@ -16,19 +16,9 @@ jobs:
16
16
  strategy:
17
17
  fail-fast: false
18
18
  matrix:
19
- ruby: [ '2.7', '2.6', '2.5', '2.4' ]
19
+ ruby: [ '3.0', '2.7', '2.6', '2.5' ]
20
20
  os: [ ubuntu-latest, windows-latest, macos-latest ]
21
21
  experimental: [ false ]
22
- include:
23
- - ruby: '3.0'
24
- os: 'ubuntu-latest'
25
- experimental: true
26
- - ruby: '3.0'
27
- os: 'windows-latest'
28
- experimental: true
29
- - ruby: '3.0'
30
- os: 'macos-latest'
31
- experimental: true
32
22
  steps:
33
23
  - uses: actions/checkout@v2
34
24
  with:
data/.gitignore CHANGED
@@ -11,4 +11,5 @@
11
11
  .rspec_status
12
12
  .rubocop-https---raw-githubusercontent-com-riboseinc-oss-guides-master-ci-rubocop-yml
13
13
  .vscode/
14
+ ieee-rawbib/
14
15
  Gemfile.lock
data/.rubocop.yml CHANGED
@@ -5,6 +5,6 @@
5
5
  inherit_from:
6
6
  - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
7
7
  AllCops:
8
- TargetRubyVersion: 2.4
8
+ TargetRubyVersion: 2.5
9
9
  Rails:
10
10
  Enabled: false
data/README.adoc CHANGED
@@ -138,6 +138,16 @@ RelatonIeee::IeeeBibliography.get("IEEE 528-2019")
138
138
  ...
139
139
  ----
140
140
 
141
+ === Typed links
142
+
143
+ Each IEEE document has `src` type link.
144
+
145
+ [source,ruby]
146
+ ----
147
+ item.link
148
+ => [#<RelatonBib::TypedUri:0x00007fe885219ba0 @content=#<Addressable::URI:0x8ac URI:https://standards.ieee.org/standard/528-2019.html>, @type="src">]
149
+ ----
150
+
141
151
  === Create bibliographic item from XML
142
152
  [source,ruby]
143
153
  ----
@@ -158,6 +168,25 @@ hash = YAML.load_file 'spec/fixtures/ieee_528_2019.yaml'
158
168
  ...
159
169
  ----
160
170
 
171
+ === Fetch data
172
+
173
+ There is an IEEE dataset https://github.com/ietf-ribose/ieee-rawbib which can be converted into BibXML/BibYAML formats. The dataset needs to be placed into local directiory.
174
+
175
+ The method `RelatonIeee::DataFetcher.fetch(output: "data", format: "yaml")` converts all the documents from the local `ieee-rawbib` directory and save them to the `./data` folder in YAML format.
176
+ Arguments:
177
+
178
+ - `output` - folder to save documents (default './data').
179
+ - `format` - format in which the documents are saved. Possimle formats are: `yaml`, `xml` (default `yaml`).
180
+
181
+ [source,ruby]
182
+ ----
183
+ RelatonIeee::DataFetcher.fetch
184
+ Started at: 2021-09-24 17:55:07 +0200
185
+ Stopped at: 2021-09-24 17:57:30 +0200
186
+ Done in: 143 sec.
187
+ => nil
188
+ ----
189
+
161
190
  == Development
162
191
 
163
192
  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
@@ -1,9 +1,10 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
3
- <include href="biblio.rng"/>
4
- <start>
5
- <ref name="document"/>
6
- </start>
3
+ <include href="biblio.rng">
4
+ <start>
5
+ <ref name="document"/>
6
+ </start>
7
+ </include>
7
8
  <define name="document">
8
9
  <element name="document">
9
10
  <optional>
@@ -43,13 +44,16 @@
43
44
  </attribute>
44
45
  </optional>
45
46
  <optional>
46
- <ref name="section-title"/>
47
+ <attribute name="language"/>
47
48
  </optional>
48
49
  <optional>
49
- <ref name="BasicBlock"/>
50
+ <attribute name="script"/>
51
+ </optional>
52
+ <optional>
53
+ <ref name="section-title"/>
50
54
  </optional>
51
55
  <zeroOrMore>
52
- <ref name="note"/>
56
+ <ref name="BasicBlock"/>
53
57
  </zeroOrMore>
54
58
  </define>
55
59
  <define name="references">
@@ -92,6 +96,10 @@
92
96
  <ref name="example"/>
93
97
  <ref name="review"/>
94
98
  <ref name="pre"/>
99
+ <ref name="note"/>
100
+ <ref name="pagebreak"/>
101
+ <ref name="hr"/>
102
+ <ref name="bookmark"/>
95
103
  </choice>
96
104
  </define>
97
105
  <define name="paragraph">
@@ -188,6 +196,14 @@
188
196
  <data type="boolean"/>
189
197
  </attribute>
190
198
  </optional>
199
+ <optional>
200
+ <attribute name="subsequence"/>
201
+ </optional>
202
+ <optional>
203
+ <attribute name="inequality">
204
+ <data type="boolean"/>
205
+ </attribute>
206
+ </optional>
191
207
  <ref name="stem"/>
192
208
  <optional>
193
209
  <ref name="dl"/>
@@ -241,6 +257,9 @@
241
257
  <data type="boolean"/>
242
258
  </attribute>
243
259
  </optional>
260
+ <optional>
261
+ <attribute name="subsequence"/>
262
+ </optional>
244
263
  <optional>
245
264
  <attribute name="lang"/>
246
265
  </optional>
@@ -266,6 +285,9 @@
266
285
  <attribute name="id">
267
286
  <data type="ID"/>
268
287
  </attribute>
288
+ <optional>
289
+ <attribute name="alt"/>
290
+ </optional>
269
291
  <optional>
270
292
  <ref name="tname"/>
271
293
  </optional>
@@ -285,9 +307,15 @@
285
307
  <data type="boolean"/>
286
308
  </attribute>
287
309
  </optional>
310
+ <optional>
311
+ <attribute name="subsequence"/>
312
+ </optional>
288
313
  <optional>
289
314
  <attribute name="alt"/>
290
315
  </optional>
316
+ <optional>
317
+ <attribute name="summary"/>
318
+ </optional>
291
319
  <optional>
292
320
  <attribute name="uri">
293
321
  <data type="anyURI"/>
@@ -313,12 +341,16 @@
313
341
  </define>
314
342
  <define name="tname">
315
343
  <element name="name">
316
- <text/>
317
- </element>
318
- </define>
319
- <define name="tclass">
320
- <element name="name">
321
- <text/>
344
+ <oneOrMore>
345
+ <choice>
346
+ <ref name="PureTextElement"/>
347
+ <ref name="eref"/>
348
+ <ref name="stem"/>
349
+ <ref name="keyword"/>
350
+ <ref name="xref"/>
351
+ <ref name="hyperlink"/>
352
+ </choice>
353
+ </oneOrMore>
322
354
  </element>
323
355
  </define>
324
356
  <define name="thead">
@@ -370,6 +402,16 @@
370
402
  </choice>
371
403
  </attribute>
372
404
  </optional>
405
+ <optional>
406
+ <attribute name="valign">
407
+ <choice>
408
+ <value>top</value>
409
+ <value>middle</value>
410
+ <value>bottom</value>
411
+ <value>baseline</value>
412
+ </choice>
413
+ </attribute>
414
+ </optional>
373
415
  <choice>
374
416
  <zeroOrMore>
375
417
  <ref name="TextElement"/>
@@ -397,6 +439,16 @@
397
439
  </choice>
398
440
  </attribute>
399
441
  </optional>
442
+ <optional>
443
+ <attribute name="valign">
444
+ <choice>
445
+ <value>top</value>
446
+ <value>middle</value>
447
+ <value>bottom</value>
448
+ <value>baseline</value>
449
+ </choice>
450
+ </attribute>
451
+ </optional>
400
452
  <choice>
401
453
  <zeroOrMore>
402
454
  <ref name="TextElement"/>
@@ -417,6 +469,12 @@
417
469
  <data type="boolean"/>
418
470
  </attribute>
419
471
  </optional>
472
+ <optional>
473
+ <attribute name="subsequence"/>
474
+ </optional>
475
+ <optional>
476
+ <ref name="tname"/>
477
+ </optional>
420
478
  <oneOrMore>
421
479
  <choice>
422
480
  <ref name="formula"/>
@@ -481,17 +539,25 @@
481
539
  </attribute>
482
540
  </optional>
483
541
  <optional>
484
- <ref name="source"/>
542
+ <attribute name="subsequence"/>
485
543
  </optional>
486
544
  <optional>
487
- <ref name="tname"/>
545
+ <attribute name="class"/>
488
546
  </optional>
489
547
  <optional>
490
- <ref name="tclass"/>
548
+ <ref name="source"/>
549
+ </optional>
550
+ <optional>
551
+ <ref name="tname"/>
491
552
  </optional>
492
553
  <choice>
493
554
  <ref name="image"/>
555
+ <ref name="video"/>
556
+ <ref name="audio"/>
494
557
  <ref name="pre"/>
558
+ <oneOrMore>
559
+ <ref name="paragraph-with-footnote"/>
560
+ </oneOrMore>
495
561
  <zeroOrMore>
496
562
  <ref name="figure"/>
497
563
  </zeroOrMore>
@@ -529,6 +595,8 @@
529
595
  <ref name="pagebreak"/>
530
596
  <ref name="bookmark"/>
531
597
  <ref name="image"/>
598
+ <ref name="index"/>
599
+ <ref name="index-xref"/>
532
600
  </choice>
533
601
  </define>
534
602
  <define name="PureTextElement">
@@ -553,14 +621,20 @@
553
621
  <define name="em">
554
622
  <element name="em">
555
623
  <zeroOrMore>
556
- <ref name="PureTextElement"/>
624
+ <choice>
625
+ <ref name="PureTextElement"/>
626
+ <ref name="stem"/>
627
+ </choice>
557
628
  </zeroOrMore>
558
629
  </element>
559
630
  </define>
560
631
  <define name="strong">
561
632
  <element name="strong">
562
633
  <zeroOrMore>
563
- <ref name="PureTextElement"/>
634
+ <choice>
635
+ <ref name="PureTextElement"/>
636
+ <ref name="stem"/>
637
+ </choice>
564
638
  </zeroOrMore>
565
639
  </element>
566
640
  </define>
@@ -653,6 +727,65 @@
653
727
  <empty/>
654
728
  </element>
655
729
  </define>
730
+ <define name="index">
731
+ <element name="index">
732
+ <optional>
733
+ <attribute name="to">
734
+ <data type="IDREF"/>
735
+ </attribute>
736
+ </optional>
737
+ <element name="primary">
738
+ <oneOrMore>
739
+ <ref name="PureTextElement"/>
740
+ </oneOrMore>
741
+ </element>
742
+ <optional>
743
+ <element name="secondary">
744
+ <oneOrMore>
745
+ <ref name="PureTextElement"/>
746
+ </oneOrMore>
747
+ </element>
748
+ </optional>
749
+ <optional>
750
+ <element name="tertiary">
751
+ <oneOrMore>
752
+ <ref name="PureTextElement"/>
753
+ </oneOrMore>
754
+ </element>
755
+ </optional>
756
+ </element>
757
+ </define>
758
+ <define name="index-xref">
759
+ <element name="index-xref">
760
+ <attribute name="also">
761
+ <data type="boolean"/>
762
+ </attribute>
763
+ <element name="primary">
764
+ <oneOrMore>
765
+ <ref name="PureTextElement"/>
766
+ </oneOrMore>
767
+ </element>
768
+ <optional>
769
+ <element name="secondary">
770
+ <oneOrMore>
771
+ <ref name="PureTextElement"/>
772
+ </oneOrMore>
773
+ </element>
774
+ </optional>
775
+ <optional>
776
+ <element name="tertiary">
777
+ <oneOrMore>
778
+ <ref name="PureTextElement"/>
779
+ </oneOrMore>
780
+ </element>
781
+ </optional>
782
+ <element name="target">
783
+ <oneOrMore>
784
+ <ref name="PureTextElement"/>
785
+ </oneOrMore>
786
+ </element>
787
+ </element>
788
+ </define>
656
789
  <!-- bare ID element, used for referencing arbitrary spans of text -->
657
790
  <define name="bookmark">
658
791
  <element name="bookmark">
@@ -778,6 +911,9 @@
778
911
  <optional>
779
912
  <attribute name="alt"/>
780
913
  </optional>
914
+ <optional>
915
+ <attribute name="title"/>
916
+ </optional>
781
917
  <optional>
782
918
  <attribute name="longdesc">
783
919
  <data type="anyURI"/>
@@ -786,7 +922,7 @@
786
922
  </element>
787
923
  </define>
788
924
  <define name="video">
789
- <element name="image">
925
+ <element name="video">
790
926
  <attribute name="id">
791
927
  <data type="ID"/>
792
928
  </attribute>
@@ -816,6 +952,9 @@
816
952
  <optional>
817
953
  <attribute name="alt"/>
818
954
  </optional>
955
+ <optional>
956
+ <attribute name="title"/>
957
+ </optional>
819
958
  <optional>
820
959
  <attribute name="longdesc">
821
960
  <data type="anyURI"/>
@@ -827,7 +966,7 @@
827
966
  </element>
828
967
  </define>
829
968
  <define name="audio">
830
- <element name="image">
969
+ <element name="audio">
831
970
  <attribute name="id">
832
971
  <data type="ID"/>
833
972
  </attribute>
@@ -841,6 +980,9 @@
841
980
  <optional>
842
981
  <attribute name="alt"/>
843
982
  </optional>
983
+ <optional>
984
+ <attribute name="title"/>
985
+ </optional>
844
986
  <optional>
845
987
  <attribute name="longdesc">
846
988
  <data type="anyURI"/>
@@ -925,6 +1067,9 @@
925
1067
  <value>alphabet_upper</value>
926
1068
  </choice>
927
1069
  </attribute>
1070
+ <optional>
1071
+ <attribute name="start"/>
1072
+ </optional>
928
1073
  <oneOrMore>
929
1074
  <ref name="li"/>
930
1075
  </oneOrMore>
data/grammars/biblio.rng CHANGED
@@ -124,7 +124,7 @@
124
124
  <value>application/tei+xml</value>
125
125
  <value>text/x-asciidoc</value>
126
126
  <value>text/markdown</value>
127
- <value>application/x-isodoc+xml</value>
127
+ <value>application/x-metanorma+xml</value>
128
128
  <text/>
129
129
  </choice>
130
130
  </attribute>
@@ -452,6 +452,7 @@
452
452
  <attribute name="type">
453
453
  <choice>
454
454
  <value>isni</value>
455
+ <value>orcid</value>
455
456
  <value>uri</value>
456
457
  </choice>
457
458
  </attribute>
@@ -461,10 +462,7 @@
461
462
  <define name="org-identifier">
462
463
  <element name="identifier">
463
464
  <attribute name="type">
464
- <choice>
465
- <value>orcid</value>
466
- <value>uri</value>
467
- </choice>
465
+ <data type="string" datatypeLibrary=""/>
468
466
  </attribute>
469
467
  <text/>
470
468
  </element>
@@ -789,6 +787,7 @@
789
787
  <value>adapted</value>
790
788
  <value>vote-started</value>
791
789
  <value>vote-ended</value>
790
+ <value>announced</value>
792
791
  </choice>
793
792
  </define>
794
793
  <define name="bdate">
@@ -1106,7 +1105,7 @@
1106
1105
  <value>complementOf</value>
1107
1106
  <value>obsoletes</value>
1108
1107
  <value>obsoletedBy</value>
1109
- <value>cited</value>
1108
+ <value>cites</value>
1110
1109
  <value>isCitedIn</value>
1111
1110
  </choice>
1112
1111
  </define>