relaton-iec 0.4.12 → 0.5.0

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: 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