relaton-iec 0.4.12 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7ffda8bff3cfc8eb622b02dc02ab54dcd1a585e1e510b279d1e8b86b84f33e81
4
- data.tar.gz: fa65f4f24e2215170c3c6e000cd297c3f1080c2bf8472dc9518acea873fc499d
3
+ metadata.gz: 2e4a6121adb234ff8beacdad3a9011a013f63493dbe59227e343b887708a69c6
4
+ data.tar.gz: 45e36802eadd4f22d82f02b716f4ae4fd70755f8348a2b7883440d159e6ba7e6
5
5
  SHA512:
6
- metadata.gz: f8b5af3a9860cd6bbbfd302f0265f5c900987e48b611822687e314d8a1a2722424bd437d33136bc799773c315510b69c8021af10f7dbc42aa898dd1cc9d391a7
7
- data.tar.gz: 9e0d30dfdd67ad3e90029c4891ed611552c99ca4828244fa7f68e278eab88e28ae5947d691f6180c219d90c61153f035c7cf0a4764989863f30ec62238410cdf
6
+ metadata.gz: 99cfe856b54ad3bcc9d05d6da2828c79cb7020634ef7e76bcae614f7521bbcc535304f2014993c7077c2688a490d9c88c13b8c8d2bbbd528c7602ab3ab3c7752
7
+ data.tar.gz: b8672002301cdb93b25077f8be00f48d0a433fe0ea0bed5a55aa3a6cd49e06000c75b532efca9184635755dea5456d0d209a2cecca9f87bb25e3b8541351b148
@@ -13,8 +13,6 @@ jobs:
13
13
  ruby: [ '2.6', '2.5', '2.4' ]
14
14
  steps:
15
15
  - uses: actions/checkout@master
16
- with:
17
- submodules: recursive
18
16
  - name: Use Ruby
19
17
  uses: actions/setup-ruby@v1
20
18
  with:
@@ -13,8 +13,6 @@ jobs:
13
13
  ruby: [ '2.6', '2.5', '2.4' ]
14
14
  steps:
15
15
  - uses: actions/checkout@master
16
- with:
17
- submodules: recursive
18
16
  - name: Use Ruby
19
17
  uses: actions/setup-ruby@v1
20
18
  with:
@@ -13,8 +13,6 @@ jobs:
13
13
  ruby: [ '2.6', '2.5', '2.4' ]
14
14
  steps:
15
15
  - uses: actions/checkout@master
16
- with:
17
- submodules: recursive
18
16
  - name: Use Ruby
19
17
  uses: actions/setup-ruby@v1
20
18
  with:
data/Gemfile.lock CHANGED
@@ -1,9 +1,9 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- relaton-iec (0.4.12)
4
+ relaton-iec (0.5.0)
5
5
  addressable
6
- relaton-iso-bib (~> 0.3.0)
6
+ relaton-iso-bib (~> 0.4.0)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
@@ -26,7 +26,7 @@ GEM
26
26
  json (2.2.0)
27
27
  method_source (0.9.2)
28
28
  mini_portile2 (2.4.0)
29
- nokogiri (1.10.4)
29
+ nokogiri (1.10.7)
30
30
  mini_portile2 (~> 2.4.0)
31
31
  pry (0.12.2)
32
32
  coderay (~> 1.1.0)
@@ -36,12 +36,12 @@ GEM
36
36
  pry (~> 0.10)
37
37
  public_suffix (4.0.1)
38
38
  rake (10.5.0)
39
- relaton-bib (0.3.12)
39
+ relaton-bib (0.4.0)
40
40
  addressable
41
41
  nokogiri
42
- relaton-iso-bib (0.3.12)
42
+ relaton-iso-bib (0.4.0)
43
43
  isoics (~> 0.1.6)
44
- relaton-bib (~> 0.3.0)
44
+ relaton-bib (~> 0.4.0)
45
45
  ruby_deep_clone (~> 0.8.0)
46
46
  rspec (3.8.0)
47
47
  rspec-core (~> 3.8.0)
data/grammars ADDED
@@ -0,0 +1,857 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
3
+ <include href="isodoc.rng">
4
+ <start>
5
+ <ref name="iso-standard"/>
6
+ </start>
7
+ <define name="organization">
8
+ <element name="organization">
9
+ <oneOrMore>
10
+ <ref name="orgname"/>
11
+ </oneOrMore>
12
+ <optional>
13
+ <ref name="abbreviation"/>
14
+ </optional>
15
+ <optional>
16
+ <ref name="uri"/>
17
+ </optional>
18
+ <zeroOrMore>
19
+ <ref name="org-identifier"/>
20
+ </zeroOrMore>
21
+ <zeroOrMore>
22
+ <ref name="contact"/>
23
+ </zeroOrMore>
24
+ <optional>
25
+ <ref name="technical-committee"/>
26
+ </optional>
27
+ <optional>
28
+ <ref name="subcommittee"/>
29
+ </optional>
30
+ <optional>
31
+ <ref name="workgroup"/>
32
+ </optional>
33
+ <optional>
34
+ <ref name="secretariat"/>
35
+ </optional>
36
+ </element>
37
+ </define>
38
+ <define name="BibDataExtensionType">
39
+ <optional>
40
+ <ref name="doctype"/>
41
+ </optional>
42
+ <ref name="editorialgroup"/>
43
+ <zeroOrMore>
44
+ <ref name="ics"/>
45
+ </zeroOrMore>
46
+ <ref name="structuredidentifier"/>
47
+ </define>
48
+ <define name="bdate">
49
+ <element name="date">
50
+ <attribute name="type">
51
+ <choice>
52
+ <ref name="BibliographicDateType"/>
53
+ <text/>
54
+ </choice>
55
+ </attribute>
56
+ <choice>
57
+ <group>
58
+ <element name="from">
59
+ <ref name="ISO8601Date"/>
60
+ </element>
61
+ <optional>
62
+ <element name="to">
63
+ <ref name="ISO8601Date"/>
64
+ </element>
65
+ </optional>
66
+ </group>
67
+ <element name="on">
68
+ <choice>
69
+ <ref name="ISO8601Date"/>
70
+ <value>--</value>
71
+ </choice>
72
+ </element>
73
+ </choice>
74
+ </element>
75
+ </define>
76
+ <define name="sections">
77
+ <element name="sections">
78
+ <ref name="clause"/>
79
+ <choice>
80
+ <ref name="term-clause"/>
81
+ <ref name="terms"/>
82
+ </choice>
83
+ <optional>
84
+ <ref name="definitions"/>
85
+ </optional>
86
+ <oneOrMore>
87
+ <ref name="clause"/>
88
+ </oneOrMore>
89
+ </element>
90
+ </define>
91
+ <define name="Basic-Section">
92
+ <optional>
93
+ <attribute name="id">
94
+ <data type="ID"/>
95
+ </attribute>
96
+ </optional>
97
+ <optional>
98
+ <attribute name="language"/>
99
+ </optional>
100
+ <optional>
101
+ <attribute name="script"/>
102
+ </optional>
103
+ <optional>
104
+ <attribute name="obligation">
105
+ <choice>
106
+ <value>normative</value>
107
+ <value>informative</value>
108
+ </choice>
109
+ </attribute>
110
+ </optional>
111
+ <optional>
112
+ <ref name="section-title"/>
113
+ </optional>
114
+ <group>
115
+ <oneOrMore>
116
+ <ref name="BasicBlock"/>
117
+ </oneOrMore>
118
+ <zeroOrMore>
119
+ <ref name="note"/>
120
+ </zeroOrMore>
121
+ </group>
122
+ </define>
123
+ <define name="Content-Section">
124
+ <optional>
125
+ <attribute name="id">
126
+ <data type="ID"/>
127
+ </attribute>
128
+ </optional>
129
+ <optional>
130
+ <attribute name="language"/>
131
+ </optional>
132
+ <optional>
133
+ <attribute name="script"/>
134
+ </optional>
135
+ <optional>
136
+ <attribute name="obligation">
137
+ <choice>
138
+ <value>normative</value>
139
+ <value>informative</value>
140
+ </choice>
141
+ </attribute>
142
+ </optional>
143
+ <optional>
144
+ <ref name="section-title"/>
145
+ </optional>
146
+ <choice>
147
+ <group>
148
+ <oneOrMore>
149
+ <ref name="BasicBlock"/>
150
+ </oneOrMore>
151
+ <zeroOrMore>
152
+ <ref name="note"/>
153
+ </zeroOrMore>
154
+ </group>
155
+ <oneOrMore>
156
+ <ref name="content-subsection"/>
157
+ </oneOrMore>
158
+ </choice>
159
+ </define>
160
+ <define name="Clause-Section">
161
+ <optional>
162
+ <attribute name="id">
163
+ <data type="ID"/>
164
+ </attribute>
165
+ </optional>
166
+ <optional>
167
+ <attribute name="language"/>
168
+ </optional>
169
+ <optional>
170
+ <attribute name="script"/>
171
+ </optional>
172
+ <optional>
173
+ <attribute name="inline-header">
174
+ <data type="boolean"/>
175
+ </attribute>
176
+ </optional>
177
+ <optional>
178
+ <attribute name="obligation">
179
+ <choice>
180
+ <value>normative</value>
181
+ <value>informative</value>
182
+ </choice>
183
+ </attribute>
184
+ </optional>
185
+ <optional>
186
+ <ref name="section-title"/>
187
+ </optional>
188
+ <choice>
189
+ <group>
190
+ <oneOrMore>
191
+ <ref name="BasicBlock"/>
192
+ </oneOrMore>
193
+ <zeroOrMore>
194
+ <ref name="note"/>
195
+ </zeroOrMore>
196
+ </group>
197
+ <oneOrMore>
198
+ <ref name="clause-subsection"/>
199
+ </oneOrMore>
200
+ </choice>
201
+ </define>
202
+ <define name="references">
203
+ <element name="references">
204
+ <optional>
205
+ <attribute name="id">
206
+ <data type="ID"/>
207
+ </attribute>
208
+ </optional>
209
+ <optional>
210
+ <attribute name="obligation">
211
+ <choice>
212
+ <value>normative</value>
213
+ <value>informative</value>
214
+ </choice>
215
+ </attribute>
216
+ </optional>
217
+ <optional>
218
+ <ref name="section-title"/>
219
+ </optional>
220
+ <zeroOrMore>
221
+ <ref name="BasicBlock"/>
222
+ </zeroOrMore>
223
+ <zeroOrMore>
224
+ <ref name="bibitem"/>
225
+ <zeroOrMore>
226
+ <ref name="note"/>
227
+ </zeroOrMore>
228
+ </zeroOrMore>
229
+ <zeroOrMore>
230
+ <ref name="references"/>
231
+ </zeroOrMore>
232
+ </element>
233
+ </define>
234
+ <define name="definitions">
235
+ <element name="definitions">
236
+ <optional>
237
+ <attribute name="id">
238
+ <data type="ID"/>
239
+ </attribute>
240
+ </optional>
241
+ <optional>
242
+ <attribute name="language"/>
243
+ </optional>
244
+ <optional>
245
+ <attribute name="script"/>
246
+ </optional>
247
+ <optional>
248
+ <attribute name="obligation">
249
+ <choice>
250
+ <value>normative</value>
251
+ <value>informative</value>
252
+ </choice>
253
+ </attribute>
254
+ </optional>
255
+ <zeroOrMore>
256
+ <ref name="BasicBlock"/>
257
+ </zeroOrMore>
258
+ <ref name="dl"/>
259
+ </element>
260
+ </define>
261
+ <define name="terms">
262
+ <element name="terms">
263
+ <optional>
264
+ <attribute name="id">
265
+ <data type="ID"/>
266
+ </attribute>
267
+ </optional>
268
+ <optional>
269
+ <attribute name="language"/>
270
+ </optional>
271
+ <optional>
272
+ <attribute name="script"/>
273
+ </optional>
274
+ <optional>
275
+ <attribute name="obligation">
276
+ <choice>
277
+ <value>normative</value>
278
+ <value>informative</value>
279
+ </choice>
280
+ </attribute>
281
+ </optional>
282
+ <optional>
283
+ <ref name="section-title"/>
284
+ </optional>
285
+ <zeroOrMore>
286
+ <ref name="BasicBlock"/>
287
+ </zeroOrMore>
288
+ <choice>
289
+ <oneOrMore>
290
+ <ref name="term"/>
291
+ </oneOrMore>
292
+ <group>
293
+ <zeroOrMore>
294
+ <ref name="terms"/>
295
+ </zeroOrMore>
296
+ <optional>
297
+ <ref name="definitions"/>
298
+ </optional>
299
+ </group>
300
+ </choice>
301
+ </element>
302
+ </define>
303
+ <define name="term">
304
+ <element name="term">
305
+ <optional>
306
+ <attribute name="id">
307
+ <data type="ID"/>
308
+ </attribute>
309
+ </optional>
310
+ <ref name="preferred"/>
311
+ <zeroOrMore>
312
+ <ref name="admitted"/>
313
+ </zeroOrMore>
314
+ <zeroOrMore>
315
+ <ref name="deprecates"/>
316
+ </zeroOrMore>
317
+ <optional>
318
+ <ref name="termdomain"/>
319
+ </optional>
320
+ <ref name="definition"/>
321
+ <zeroOrMore>
322
+ <ref name="termnote"/>
323
+ </zeroOrMore>
324
+ <zeroOrMore>
325
+ <ref name="termexample"/>
326
+ </zeroOrMore>
327
+ <zeroOrMore>
328
+ <ref name="termsource"/>
329
+ </zeroOrMore>
330
+ </element>
331
+ </define>
332
+ <define name="definition">
333
+ <element name="definition">
334
+ <oneOrMore>
335
+ <choice>
336
+ <ref name="paragraph"/>
337
+ <ref name="figure"/>
338
+ <ref name="formula"/>
339
+ </choice>
340
+ </oneOrMore>
341
+ </element>
342
+ </define>
343
+ <define name="annex">
344
+ <element name="annex">
345
+ <optional>
346
+ <attribute name="id">
347
+ <data type="ID"/>
348
+ </attribute>
349
+ </optional>
350
+ <optional>
351
+ <attribute name="language"/>
352
+ </optional>
353
+ <optional>
354
+ <attribute name="script"/>
355
+ </optional>
356
+ <optional>
357
+ <attribute name="inline-header">
358
+ <data type="boolean"/>
359
+ </attribute>
360
+ </optional>
361
+ <optional>
362
+ <attribute name="obligation">
363
+ <choice>
364
+ <value>normative</value>
365
+ <value>informative</value>
366
+ </choice>
367
+ </attribute>
368
+ </optional>
369
+ <optional>
370
+ <ref name="section-title"/>
371
+ </optional>
372
+ <zeroOrMore>
373
+ <!--
374
+ allow hanging paragraps in annexes: they introduce lists
375
+ ( paragraph-with-footnote | table | note | formula | admonition | ol | ul | dl | figure | quote | sourcecode | review | example )*,
376
+ -->
377
+ <ref name="BasicBlock"/>
378
+ </zeroOrMore>
379
+ <zeroOrMore>
380
+ <ref name="note"/>
381
+ </zeroOrMore>
382
+ <zeroOrMore>
383
+ <ref name="clause-hanging-paragraph-with-footnote"/>
384
+ </zeroOrMore>
385
+ <zeroOrMore>
386
+ <ref name="annex-appendix"/>
387
+ </zeroOrMore>
388
+ </element>
389
+ </define>
390
+ <define name="figure">
391
+ <element name="figure">
392
+ <attribute name="id">
393
+ <data type="ID"/>
394
+ </attribute>
395
+ <optional>
396
+ <ref name="tname"/>
397
+ </optional>
398
+ <choice>
399
+ <ref name="image"/>
400
+ <oneOrMore>
401
+ <ref name="subfigure"/>
402
+ </oneOrMore>
403
+ </choice>
404
+ <zeroOrMore>
405
+ <ref name="fn"/>
406
+ </zeroOrMore>
407
+ <optional>
408
+ <ref name="dl"/>
409
+ </optional>
410
+ <zeroOrMore>
411
+ <ref name="note"/>
412
+ </zeroOrMore>
413
+ </element>
414
+ </define>
415
+ <define name="li">
416
+ <element name="li">
417
+ <group>
418
+ <optional>
419
+ <!-- ( paragraph-with-footnote | table | note | formula | admonition | ol | ul | dl | quote | sourcecode | review | example )+ -->
420
+ <attribute name="id">
421
+ <data type="ID"/>
422
+ </attribute>
423
+ </optional>
424
+ <oneOrMore>
425
+ <ref name="BasicBlock"/>
426
+ </oneOrMore>
427
+ </group>
428
+ <!-- exclude figures? -->
429
+ </element>
430
+ </define>
431
+ <define name="dd">
432
+ <element name="dd">
433
+ <zeroOrMore>
434
+ <!--
435
+ ( paragraph-with-footnote | table | note | formula | admonition | ol | ul | dl | quote | sourcecode | review | example )*
436
+ exclude figures?
437
+ -->
438
+ <ref name="BasicBlock"/>
439
+ </zeroOrMore>
440
+ </element>
441
+ </define>
442
+ <define name="admonition">
443
+ <element name="admonition">
444
+ <attribute name="id">
445
+ <data type="ID"/>
446
+ </attribute>
447
+ <attribute name="type">
448
+ <choice>
449
+ <value>danger</value>
450
+ <value>caution</value>
451
+ <value>warning</value>
452
+ <value>important</value>
453
+ <value>safety precautions</value>
454
+ </choice>
455
+ </attribute>
456
+ <oneOrMore>
457
+ <ref name="paragraph-with-footnote"/>
458
+ </oneOrMore>
459
+ <zeroOrMore>
460
+ <ref name="note"/>
461
+ </zeroOrMore>
462
+ </element>
463
+ </define>
464
+ <define name="xref">
465
+ <element name="xref">
466
+ <attribute name="target">
467
+ <data type="IDREF"/>
468
+ </attribute>
469
+ <text/>
470
+ </element>
471
+ </define>
472
+ <define name="hyperlink">
473
+ <element name="link">
474
+ <attribute name="target">
475
+ <data type="anyURI"/>
476
+ </attribute>
477
+ <text/>
478
+ </element>
479
+ </define>
480
+ <define name="thead">
481
+ <element name="thead">
482
+ <oneOrMore>
483
+ <ref name="tr"/>
484
+ </oneOrMore>
485
+ </element>
486
+ </define>
487
+ <define name="td">
488
+ <element name="td">
489
+ <optional>
490
+ <attribute name="colspan"/>
491
+ </optional>
492
+ <optional>
493
+ <attribute name="rowspan"/>
494
+ </optional>
495
+ <optional>
496
+ <attribute name="align">
497
+ <choice>
498
+ <value>left</value>
499
+ <value>right</value>
500
+ <value>center</value>
501
+ </choice>
502
+ </attribute>
503
+ </optional>
504
+ <choice>
505
+ <zeroOrMore>
506
+ <choice>
507
+ <ref name="TextElement"/>
508
+ <ref name="fn"/>
509
+ </choice>
510
+ </zeroOrMore>
511
+ <oneOrMore>
512
+ <ref name="paragraph-with-footnote"/>
513
+ </oneOrMore>
514
+ </choice>
515
+ </element>
516
+ </define>
517
+ <define name="th">
518
+ <element name="th">
519
+ <optional>
520
+ <attribute name="colspan"/>
521
+ </optional>
522
+ <optional>
523
+ <attribute name="rowspan"/>
524
+ </optional>
525
+ <optional>
526
+ <attribute name="align">
527
+ <choice>
528
+ <value>left</value>
529
+ <value>right</value>
530
+ <value>center</value>
531
+ </choice>
532
+ </attribute>
533
+ </optional>
534
+ <choice>
535
+ <zeroOrMore>
536
+ <choice>
537
+ <ref name="TextElement"/>
538
+ <ref name="fn"/>
539
+ </choice>
540
+ </zeroOrMore>
541
+ <oneOrMore>
542
+ <ref name="paragraph-with-footnote"/>
543
+ </oneOrMore>
544
+ </choice>
545
+ </element>
546
+ </define>
547
+ <define name="table-note">
548
+ <element name="note">
549
+ <optional>
550
+ <attribute name="id">
551
+ <data type="ID"/>
552
+ </attribute>
553
+ </optional>
554
+ <ref name="paragraph"/>
555
+ </element>
556
+ </define>
557
+ <define name="preface">
558
+ <element name="preface">
559
+ <optional>
560
+ <ref name="preface_abstract"/>
561
+ </optional>
562
+ <ref name="foreword"/>
563
+ <optional>
564
+ <ref name="introduction"/>
565
+ </optional>
566
+ </element>
567
+ </define>
568
+ <define name="DocumentType">
569
+ <choice>
570
+ <value>international-standard</value>
571
+ <value>technical-specification</value>
572
+ <value>technical-report</value>
573
+ <value>publicly-available-specification</value>
574
+ <value>international-workshop-agreement</value>
575
+ <value>guide</value>
576
+ </choice>
577
+ </define>
578
+ <define name="structuredidentifier">
579
+ <element name="structuredidentifier">
580
+ <optional>
581
+ <attribute name="type"/>
582
+ </optional>
583
+ <group>
584
+ <ref name="documentnumber"/>
585
+ <optional>
586
+ <ref name="tc-documentnumber"/>
587
+ </optional>
588
+ </group>
589
+ </element>
590
+ </define>
591
+ <define name="foreword">
592
+ <element name="foreword">
593
+ <ref name="Basic-Section"/>
594
+ </element>
595
+ </define>
596
+ <define name="introduction">
597
+ <element name="introduction">
598
+ <ref name="Content-Section"/>
599
+ </element>
600
+ </define>
601
+ </include>
602
+ <!-- end overrides -->
603
+ <!--
604
+ We display the Normative References between scope and terms; but to keep the
605
+ grammar simple, we keep the references together
606
+ -->
607
+ <define name="iso-standard">
608
+ <element name="iso-standard">
609
+ <ref name="bibdata"/>
610
+ <zeroOrMore>
611
+ <ref name="termdocsource"/>
612
+ </zeroOrMore>
613
+ <optional>
614
+ <ref name="boilerplate"/>
615
+ </optional>
616
+ <ref name="preface"/>
617
+ <oneOrMore>
618
+ <ref name="sections"/>
619
+ </oneOrMore>
620
+ <zeroOrMore>
621
+ <ref name="annex"/>
622
+ </zeroOrMore>
623
+ <ref name="bibliography"/>
624
+ </element>
625
+ </define>
626
+ <define name="bibliography">
627
+ <element name="bibliography">
628
+ <oneOrMore>
629
+ <choice>
630
+ <ref name="references"/>
631
+ <ref name="reference-clause"/>
632
+ </choice>
633
+ </oneOrMore>
634
+ </element>
635
+ </define>
636
+ <define name="editorialgroup">
637
+ <element name="editorialgroup">
638
+ <oneOrMore>
639
+ <ref name="technical-committee"/>
640
+ </oneOrMore>
641
+ <zeroOrMore>
642
+ <ref name="subcommittee"/>
643
+ </zeroOrMore>
644
+ <zeroOrMore>
645
+ <ref name="workgroup"/>
646
+ </zeroOrMore>
647
+ <optional>
648
+ <ref name="secretariat"/>
649
+ </optional>
650
+ </element>
651
+ </define>
652
+ <define name="preface_abstract">
653
+ <element name="abstract">
654
+ <ref name="Basic-Section"/>
655
+ </element>
656
+ </define>
657
+ <define name="documentnumber">
658
+ <element name="project-number">
659
+ <optional>
660
+ <attribute name="part">
661
+ <data type="int"/>
662
+ </attribute>
663
+ </optional>
664
+ <optional>
665
+ <attribute name="subpart">
666
+ <data type="int"/>
667
+ </attribute>
668
+ </optional>
669
+ <text/>
670
+ </element>
671
+ </define>
672
+ <define name="tc-documentnumber">
673
+ <element name="tc-document-number">
674
+ <data type="int"/>
675
+ </element>
676
+ </define>
677
+ <define name="technical-committee">
678
+ <element name="technical-committee">
679
+ <ref name="IsoWorkgroup"/>
680
+ </element>
681
+ </define>
682
+ <define name="subcommittee">
683
+ <element name="subcommittee">
684
+ <ref name="IsoWorkgroup"/>
685
+ </element>
686
+ </define>
687
+ <define name="workgroup">
688
+ <element name="workgroup">
689
+ <ref name="IsoWorkgroup"/>
690
+ </element>
691
+ </define>
692
+ <define name="IsoWorkgroup">
693
+ <optional>
694
+ <attribute name="number">
695
+ <data type="int"/>
696
+ </attribute>
697
+ </optional>
698
+ <optional>
699
+ <attribute name="type"/>
700
+ </optional>
701
+ <text/>
702
+ </define>
703
+ <define name="secretariat">
704
+ <element name="secretariat">
705
+ <text/>
706
+ </element>
707
+ </define>
708
+ <define name="clause-hanging-paragraph-with-footnote">
709
+ <element name="clause">
710
+ <optional>
711
+ <attribute name="id">
712
+ <data type="ID"/>
713
+ </attribute>
714
+ </optional>
715
+ <optional>
716
+ <attribute name="language"/>
717
+ </optional>
718
+ <optional>
719
+ <attribute name="script"/>
720
+ </optional>
721
+ <optional>
722
+ <attribute name="inline-header">
723
+ <data type="boolean"/>
724
+ </attribute>
725
+ </optional>
726
+ <optional>
727
+ <attribute name="obligation">
728
+ <choice>
729
+ <value>normative</value>
730
+ <value>informative</value>
731
+ </choice>
732
+ </attribute>
733
+ </optional>
734
+ <optional>
735
+ <ref name="section-title"/>
736
+ </optional>
737
+ <zeroOrMore>
738
+ <!-- allow hanging paragraphs in annexes: they introduce lists -->
739
+ <ref name="BasicBlock"/>
740
+ </zeroOrMore>
741
+ <zeroOrMore>
742
+ <ref name="note"/>
743
+ </zeroOrMore>
744
+ <zeroOrMore>
745
+ <ref name="clause-hanging-paragraph-with-footnote"/>
746
+ </zeroOrMore>
747
+ </element>
748
+ </define>
749
+ <define name="subfigure">
750
+ <element name="figure">
751
+ <attribute name="id">
752
+ <data type="ID"/>
753
+ </attribute>
754
+ <optional>
755
+ <ref name="tname"/>
756
+ </optional>
757
+ <ref name="image"/>
758
+ </element>
759
+ </define>
760
+ <define name="termdocsource">
761
+ <element name="termdocsource">
762
+ <ref name="CitationType"/>
763
+ </element>
764
+ </define>
765
+ <define name="ics">
766
+ <element name="ics">
767
+ <element name="code">
768
+ <text/>
769
+ </element>
770
+ <element name="text">
771
+ <text/>
772
+ </element>
773
+ </element>
774
+ </define>
775
+ <define name="term-clause">
776
+ <element name="clause">
777
+ <optional>
778
+ <attribute name="id">
779
+ <data type="ID"/>
780
+ </attribute>
781
+ </optional>
782
+ <optional>
783
+ <attribute name="language"/>
784
+ </optional>
785
+ <optional>
786
+ <attribute name="script"/>
787
+ </optional>
788
+ <optional>
789
+ <attribute name="inline-header">
790
+ <data type="boolean"/>
791
+ </attribute>
792
+ </optional>
793
+ <optional>
794
+ <attribute name="obligation">
795
+ <choice>
796
+ <value>normative</value>
797
+ <value>informative</value>
798
+ </choice>
799
+ </attribute>
800
+ </optional>
801
+ <optional>
802
+ <ref name="section-title"/>
803
+ </optional>
804
+ <zeroOrMore>
805
+ <choice>
806
+ <ref name="term-clause"/>
807
+ <ref name="terms"/>
808
+ <ref name="definitions"/>
809
+ </choice>
810
+ </zeroOrMore>
811
+ </element>
812
+ </define>
813
+ <define name="reference-clause">
814
+ <element name="clause">
815
+ <optional>
816
+ <attribute name="id">
817
+ <data type="ID"/>
818
+ </attribute>
819
+ </optional>
820
+ <optional>
821
+ <attribute name="language"/>
822
+ </optional>
823
+ <optional>
824
+ <attribute name="script"/>
825
+ </optional>
826
+ <optional>
827
+ <attribute name="inline-header">
828
+ <data type="boolean"/>
829
+ </attribute>
830
+ </optional>
831
+ <optional>
832
+ <attribute name="obligation">
833
+ <choice>
834
+ <value>normative</value>
835
+ <value>informative</value>
836
+ </choice>
837
+ </attribute>
838
+ </optional>
839
+ <optional>
840
+ <ref name="section-title"/>
841
+ </optional>
842
+ <choice>
843
+ <oneOrMore>
844
+ <ref name="reference-clause"/>
845
+ </oneOrMore>
846
+ <zeroOrMore>
847
+ <ref name="references"/>
848
+ </zeroOrMore>
849
+ </choice>
850
+ </element>
851
+ </define>
852
+ <define name="annex-appendix">
853
+ <element name="appendix">
854
+ <ref name="Clause-Section"/>
855
+ </element>
856
+ </define>
857
+ </grammar>
@@ -29,5 +29,11 @@ module RelatonIec
29
29
  item_hash = ::RelatonIsoBib::HashConverter.hash_to_bib(hash)
30
30
  ::RelatonIsoBib::IsoBibliographicItem.new item_hash
31
31
  end
32
+
33
+ # Returns hash of XML grammar
34
+ # @return [String]
35
+ def grammar_hash
36
+ @grammar_hash ||= ::RelatonIsoBib.grammar_hash
37
+ end
32
38
  end
33
39
  end
@@ -1,3 +1,3 @@
1
1
  module RelatonIec
2
- VERSION = "0.4.12".freeze
2
+ VERSION = "0.5.0".freeze
3
3
  end
data/relaton_iec.gemspec CHANGED
@@ -35,5 +35,5 @@ Gem::Specification.new do |spec|
35
35
  spec.add_development_dependency "webmock"
36
36
 
37
37
  spec.add_dependency "addressable"
38
- spec.add_dependency "relaton-iso-bib", "~> 0.3.0"
38
+ spec.add_dependency "relaton-iso-bib", "~> 0.4.0"
39
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: relaton-iec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.12
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-12-02 00:00:00.000000000 Z
11
+ date: 2019-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -170,14 +170,14 @@ dependencies:
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 0.3.0
173
+ version: 0.4.0
174
174
  type: :runtime
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 0.3.0
180
+ version: 0.4.0
181
181
  description: 'RelatonIec: retrieve IEC Standards for bibliographic use using the IsoBibliographicItem
182
182
  model'
183
183
  email:
@@ -199,6 +199,7 @@ files:
199
199
  - Rakefile
200
200
  - bin/console
201
201
  - bin/setup
202
+ - grammars
202
203
  - lib/relaton_iec.rb
203
204
  - lib/relaton_iec/hit.rb
204
205
  - lib/relaton_iec/hit_collection.rb