relaton-nist 1.7.4 → 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: e3f5d2a6df121410526e937f065b269da4da79a07a1f5262a825f2e1a9ff6a79
4
- data.tar.gz: 5c6bf3f1fae325da2888c3c4323ce1ef8d98c52bde46a124c5b88fd6b8490eeb
3
+ metadata.gz: 76cfec1954dfd58bf622a6a47e34bdbcfe4cf471106eb7ad19582654078a6d38
4
+ data.tar.gz: 9769f406d5b98840b5bc099d78ab811388170d1fae5872211a7a0c9ed26d869f
5
5
  SHA512:
6
- metadata.gz: c4f9f739ea073f0fae94f9a8ec9a792d82f618221fd3a6ecc345e9020b59159f1ef723ed5b933e0754d162c7a6c7ac1f64a07640f6d849f0224a684bd5686a5b
7
- data.tar.gz: e3085821ff86c2b50d4953e4330395c999674b1fec7c290b88140576b1179cfae56f684269a010e20647ab530814d959c7685489ec11c04a5e7aabff036573d8
6
+ metadata.gz: 0e3deefff699c77103afb631a03283697dc05f5c952b60b3602961df37df2095102b16c32e229aeeceb76da12cfda09e43e6b0788b6a4c1f02b74dea8a49f818
7
+ data.tar.gz: 3244707d2595b5b45bab973399a04b8cc791d3b008e2ef05fcc99d9355cec6915556aea8528e5f992e4ba0452af82bda09fb93737741a72c08a64e7a0039d161
@@ -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
@@ -7,6 +7,7 @@
7
7
  /spec/reports/
8
8
  /tmp/
9
9
  .vscode/
10
+ /data/
10
11
  .rubocop-https---raw-githubusercontent-com-riboseinc-oss-guides-master-ci-rubocop-yml
11
12
 
12
13
  # rspec failure tracking
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
@@ -159,6 +159,25 @@ RelatonNist::NistBibliographicItem.from_hash hash
159
159
  ...
160
160
  ----
161
161
 
162
+ === Fetch data
163
+
164
+ This gem uses the https://raw.githubusercontent.com/usnistgov/NIST-Tech-Pubs/nist-pages/xml/allrecords.xml dataset as one of data sources.
165
+
166
+ The method `RelatonNist::DataFetcher.fetch(output: "data", format: "yaml")` fetches all the documents from the datast and save them to the `./data` folder in YAML format.
167
+ Arguments:
168
+
169
+ - `output` - folder to save documents (default './data').
170
+ - `format` - format in which the documents are saved. Possimle formats are: `yaml`, `xml` (default `yaml`).
171
+
172
+ [source,ruby]
173
+ ----
174
+ RelatonNist::DataFetcher.fetch
175
+ Started at: 2021-09-01 18:01:01 +0200
176
+ Stopped at: 2021-09-01 18:01:43 +0200
177
+ Done in: 42 sec.
178
+ => nil
179
+ ----
180
+
162
181
  == Development
163
182
 
164
183
  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.
data/bin/rspec ADDED
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ #
5
+ # This file was generated by Bundler.
6
+ #
7
+ # The application 'rspec' is installed as part of a gem, and
8
+ # this file is here to facilitate running it.
9
+ #
10
+
11
+ require "pathname"
12
+ ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
13
+ Pathname.new(__FILE__).realpath)
14
+
15
+ bundle_binstub = File.expand_path("../bundle", __FILE__)
16
+
17
+ if File.file?(bundle_binstub)
18
+ if File.read(bundle_binstub, 300) =~ /This file was generated by Bundler/
19
+ load(bundle_binstub)
20
+ else
21
+ abort("Your `bin/bundle` was not generated by Bundler, so this binstub cannot run.
22
+ Replace `bin/bundle` by running `bundle binstubs bundler --force`, then run this command again.")
23
+ end
24
+ end
25
+
26
+ require "rubygems"
27
+ require "bundler/setup"
28
+
29
+ load Gem.bin_path("rspec-core", "rspec")
@@ -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>