metanorma-ieee 0.1.0 → 0.1.2

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.
@@ -1,158 +1,32 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
- <grammar ns="https://www.metanorma.org/ns/ieee" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <grammar ns="https://www.metanorma.org/ns/ieee" xmlns="http://relaxng.org/ns/structure/1.0">
3
3
  <!--
4
4
  Currently we inherit from a namespaced grammar, isostandard. Until we inherit from isodoc,
5
5
  we cannot have a new default namespace: we will end up with a grammar with two different
6
6
  namespaces, one for isostandard and one for csand additions. And we do not want that.
7
7
  -->
8
+ <include href="relaton-ieee.rng"/>
8
9
  <include href="isodoc.rng">
9
10
  <start>
10
11
  <ref name="ieee-standard"/>
11
12
  </start>
12
- <define name="DocumentType">
13
- <choice>
14
- <value>guide</value>
15
- <value>recommended-practice</value>
16
- <value>standard</value>
17
- <value>whitepaper</value>
18
- <value>redline</value>
19
- <value>other</value>
20
- </choice>
21
- </define>
22
- <define name="stage">
23
- <element name="stage">
24
- <choice>
25
- <value>draft</value>
26
- <value>approved</value>
27
- <value>superseded</value>
28
- <value>withdrawn</value>
29
- </choice>
30
- </element>
31
- </define>
32
- <define name="editorialgroup">
33
- <element name="editorialgroup">
34
- <optional>
35
- <ref name="society"/>
36
- </optional>
13
+ <define name="sections">
14
+ <element name="sections">
37
15
  <optional>
38
- <ref name="balloting-group"/>
39
- </optional>
40
- <optional>
41
- <ref name="working-group"/>
16
+ <ref name="note"/>
42
17
  </optional>
43
18
  <oneOrMore>
44
- <ref name="committee"/>
19
+ <choice>
20
+ <ref name="clause"/>
21
+ <ref name="terms"/>
22
+ <ref name="term-clause"/>
23
+ <ref name="definitions"/>
24
+ <ref name="floating-title"/>
25
+ </choice>
45
26
  </oneOrMore>
46
27
  </element>
47
28
  </define>
48
- <define name="DocumentSubtype">
49
- <choice>
50
- <value>amendment</value>
51
- <value>corrigendum</value>
52
- <value>erratum</value>
53
- </choice>
54
- </define>
55
- <define name="BibDataExtensionType">
56
- <optional>
57
- <ref name="doctype"/>
58
- </optional>
59
- <optional>
60
- <ref name="docsubtype"/>
61
- </optional>
62
- <optional>
63
- <ref name="trialuse"/>
64
- </optional>
65
- <optional>
66
- <ref name="editorialgroup"/>
67
- </optional>
68
- <zeroOrMore>
69
- <ref name="ics"/>
70
- </zeroOrMore>
71
- <optional>
72
- <ref name="standard_status"/>
73
- </optional>
74
- <optional>
75
- <ref name="standard_modified"/>
76
- </optional>
77
- <optional>
78
- <ref name="pubstatus"/>
79
- </optional>
80
- <optional>
81
- <ref name="holdstatus"/>
82
- </optional>
83
- </define>
84
29
  </include>
85
- <define name="standard_status">
86
- <element name="standard_status">
87
- <choice>
88
- <value>Inactive</value>
89
- <value>Active</value>
90
- <value>Superseded</value>
91
- </choice>
92
- </element>
93
- </define>
94
- <define name="standard_modified">
95
- <element name="standard_modified">
96
- <choice>
97
- <value>Draft</value>
98
- <value>Withdrawn</value>
99
- <value>Superseded</value>
100
- <value>Approved</value>
101
- <value>Reserved</value>
102
- <value>Redline</value>
103
- </choice>
104
- </element>
105
- </define>
106
- <define name="pubstatus">
107
- <element name="pubstatus">
108
- <choice>
109
- <value>Active</value>
110
- <value>Inactive</value>
111
- </choice>
112
- </element>
113
- </define>
114
- <define name="holdstatus">
115
- <element name="holdstatus">
116
- <choice>
117
- <value>Hold</value>
118
- <value>Publish</value>
119
- </choice>
120
- </element>
121
- </define>
122
- <define name="BibliographicDateType" combine="choice">
123
- <value>feedback-ended</value>
124
- </define>
125
- <define name="trialuse">
126
- <element name="trial-use">
127
- <data type="boolean"/>
128
- </element>
129
- </define>
130
- <define name="balloting-group">
131
- <element name="balloting-group">
132
- <attribute name="type">
133
- <choice>
134
- <value>individual</value>
135
- <value>entity</value>
136
- </choice>
137
- </attribute>
138
- <text/>
139
- </element>
140
- </define>
141
- <define name="working-group">
142
- <element name="working-group">
143
- <text/>
144
- </element>
145
- </define>
146
- <define name="committee">
147
- <element name="committee">
148
- <text/>
149
- </element>
150
- </define>
151
- <define name="society">
152
- <element name="society">
153
- <text/>
154
- </element>
155
- </define>
156
30
  <define name="ieee-standard">
157
31
  <element name="ieee-standard">
158
32
  <attribute name="version"/>
@@ -19,19 +19,7 @@
19
19
  -->
20
20
  <grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
21
21
  <include href="reqt.rng"/>
22
- <!-- include "biblio.rnc" { } -->
23
22
  <include href="basicdoc.rng">
24
- <start>
25
- <ref name="standard-document"/>
26
- </start>
27
- <define name="doctype">
28
- <element name="doctype">
29
- <optional>
30
- <attribute name="abbreviation"/>
31
- </optional>
32
- <ref name="DocumentType"/>
33
- </element>
34
- </define>
35
23
  <define name="admonition">
36
24
  <element name="admonition">
37
25
  <attribute name="type">
@@ -117,24 +105,6 @@
117
105
  </optional>
118
106
  </element>
119
107
  </define>
120
- <define name="bibitem">
121
- <element name="bibitem">
122
- <attribute name="id">
123
- <data type="ID"/>
124
- </attribute>
125
- <optional>
126
- <attribute name="hidden">
127
- <data type="boolean"/>
128
- </attribute>
129
- </optional>
130
- <optional>
131
- <attribute name="suppress_identifier">
132
- <data type="boolean"/>
133
- </attribute>
134
- </optional>
135
- <ref name="BibliographicItem"/>
136
- </element>
137
- </define>
138
108
  <define name="section-title">
139
109
  <element name="title">
140
110
  <zeroOrMore>
@@ -207,11 +177,7 @@
207
177
  </optional>
208
178
  <optional>
209
179
  <attribute name="style">
210
- <choice>
211
- <value>basic</value>
212
- <value>full</value>
213
- <value>short</value>
214
- </choice>
180
+ <ref name="XrefStyleType"/>
215
181
  </attribute>
216
182
  </optional>
217
183
  <ref name="XrefBody"/>
@@ -248,42 +214,6 @@
248
214
  <ref name="PureTextElement"/>
249
215
  </oneOrMore>
250
216
  </define>
251
- <define name="localityStack">
252
- <element name="localityStack">
253
- <optional>
254
- <attribute name="connective">
255
- <choice>
256
- <value>and</value>
257
- <value>or</value>
258
- <value>from</value>
259
- <value>to</value>
260
- <value/>
261
- </choice>
262
- </attribute>
263
- </optional>
264
- <zeroOrMore>
265
- <ref name="locality"/>
266
- </zeroOrMore>
267
- </element>
268
- </define>
269
- <define name="sourceLocalityStack">
270
- <element name="sourceLocalityStack">
271
- <optional>
272
- <attribute name="connective">
273
- <choice>
274
- <value>and</value>
275
- <value>or</value>
276
- <value>from</value>
277
- <value>to</value>
278
- <value/>
279
- </choice>
280
- </attribute>
281
- </optional>
282
- <zeroOrMore>
283
- <ref name="sourceLocality"/>
284
- </zeroOrMore>
285
- </element>
286
- </define>
287
217
  <define name="ul">
288
218
  <element name="ul">
289
219
  <attribute name="id">
@@ -827,21 +757,6 @@
827
757
  </zeroOrMore>
828
758
  </element>
829
759
  </define>
830
- <define name="BibDataExtensionType">
831
- <ref name="doctype"/>
832
- <optional>
833
- <ref name="docsubtype"/>
834
- </optional>
835
- <optional>
836
- <ref name="editorialgroup"/>
837
- </optional>
838
- <zeroOrMore>
839
- <ref name="ics"/>
840
- </zeroOrMore>
841
- <zeroOrMore>
842
- <ref name="structuredidentifier"/>
843
- </zeroOrMore>
844
- </define>
845
760
  <!-- TitleType = text -->
846
761
  <define name="sections">
847
762
  <element name="sections">
@@ -881,7 +796,7 @@
881
796
  <ref name="BasicBlock"/>
882
797
  </zeroOrMore>
883
798
  <zeroOrMore>
884
- <ref name="bibitem"/>
799
+ <ref name="doc_bibitem"/>
885
800
  <zeroOrMore>
886
801
  <ref name="note"/>
887
802
  </zeroOrMore>
@@ -1112,6 +1027,7 @@
1112
1027
  <ref name="stem"/>
1113
1028
  <ref name="index"/>
1114
1029
  <ref name="eref"/>
1030
+ <ref name="erefstack"/>
1115
1031
  <ref name="xref"/>
1116
1032
  <ref name="hyperlink"/>
1117
1033
  </choice>
@@ -1126,6 +1042,7 @@
1126
1042
  <ref name="stem"/>
1127
1043
  <ref name="index"/>
1128
1044
  <ref name="eref"/>
1045
+ <ref name="erefstack"/>
1129
1046
  <ref name="xref"/>
1130
1047
  <ref name="hyperlink"/>
1131
1048
  </choice>
@@ -1139,6 +1056,7 @@
1139
1056
  <ref name="PureTextElement"/>
1140
1057
  <ref name="index"/>
1141
1058
  <ref name="eref"/>
1059
+ <ref name="erefstack"/>
1142
1060
  <ref name="xref"/>
1143
1061
  <ref name="hyperlink"/>
1144
1062
  </choice>
@@ -1219,6 +1137,24 @@
1219
1137
  </define>
1220
1138
  </include>
1221
1139
  <!-- end overrides -->
1140
+ <define name="doc_bibitem">
1141
+ <element name="bibitem">
1142
+ <attribute name="id">
1143
+ <data type="ID"/>
1144
+ </attribute>
1145
+ <optional>
1146
+ <attribute name="hidden">
1147
+ <data type="boolean"/>
1148
+ </attribute>
1149
+ </optional>
1150
+ <optional>
1151
+ <attribute name="suppress_identifier">
1152
+ <data type="boolean"/>
1153
+ </attribute>
1154
+ </optional>
1155
+ <ref name="BibliographicItem"/>
1156
+ </element>
1157
+ </define>
1222
1158
  <define name="image" combine="choice">
1223
1159
  <element name="svg">
1224
1160
  <oneOrMore>
@@ -1237,14 +1173,6 @@
1237
1173
  <value>tag</value>
1238
1174
  </choice>
1239
1175
  </define>
1240
- <define name="docsubtype">
1241
- <element name="subdoctype">
1242
- <ref name="DocumentSubtype"/>
1243
- </element>
1244
- </define>
1245
- <define name="DocumentSubtype">
1246
- <text/>
1247
- </define>
1248
1176
  <define name="colgroup">
1249
1177
  <element name="colgroup">
1250
1178
  <oneOrMore>
@@ -1266,6 +1194,7 @@
1266
1194
  <ref name="add"/>
1267
1195
  <ref name="del"/>
1268
1196
  <ref name="span"/>
1197
+ <ref name="erefstack"/>
1269
1198
  </choice>
1270
1199
  </define>
1271
1200
  <define name="add">
@@ -1273,6 +1202,7 @@
1273
1202
  <choice>
1274
1203
  <ref name="PureTextElement"/>
1275
1204
  <ref name="eref"/>
1205
+ <ref name="erefstack"/>
1276
1206
  <ref name="stem"/>
1277
1207
  <ref name="keyword"/>
1278
1208
  <ref name="xref"/>
@@ -1285,6 +1215,7 @@
1285
1215
  <choice>
1286
1216
  <ref name="PureTextElement"/>
1287
1217
  <ref name="eref"/>
1218
+ <ref name="erefstack"/>
1288
1219
  <ref name="stem"/>
1289
1220
  <ref name="keyword"/>
1290
1221
  <ref name="xref"/>
@@ -1349,6 +1280,7 @@
1349
1280
  </optional>
1350
1281
  <choice>
1351
1282
  <ref name="eref"/>
1283
+ <ref name="erefstack"/>
1352
1284
  <ref name="xref"/>
1353
1285
  <ref name="termref"/>
1354
1286
  </choice>
@@ -1606,45 +1538,6 @@
1606
1538
  </choice>
1607
1539
  </element>
1608
1540
  </define>
1609
- <define name="editorialgroup">
1610
- <element name="editorialgroup">
1611
- <oneOrMore>
1612
- <ref name="technical-committee"/>
1613
- </oneOrMore>
1614
- </element>
1615
- </define>
1616
- <define name="technical-committee">
1617
- <element name="technical-committee">
1618
- <ref name="IsoWorkgroup"/>
1619
- </element>
1620
- </define>
1621
- <define name="IsoWorkgroup">
1622
- <optional>
1623
- <attribute name="number"/>
1624
- </optional>
1625
- <optional>
1626
- <attribute name="type"/>
1627
- </optional>
1628
- <optional>
1629
- <attribute name="identifier"/>
1630
- </optional>
1631
- <optional>
1632
- <attribute name="prefix"/>
1633
- </optional>
1634
- <text/>
1635
- </define>
1636
- <define name="ics">
1637
- <element name="ics">
1638
- <element name="code">
1639
- <text/>
1640
- </element>
1641
- <optional>
1642
- <element name="text">
1643
- <text/>
1644
- </element>
1645
- </optional>
1646
- </element>
1647
- </define>
1648
1541
  <define name="standard-document">
1649
1542
  <element name="standard-document">
1650
1543
  <attribute name="version"/>
@@ -2080,6 +1973,7 @@
2080
1973
  </element>
2081
1974
  <choice>
2082
1975
  <ref name="eref"/>
1976
+ <ref name="erefstack"/>
2083
1977
  <ref name="xref"/>
2084
1978
  <ref name="termref"/>
2085
1979
  </choice>
@@ -2475,71 +2369,6 @@
2475
2369
  </optional>
2476
2370
  </element>
2477
2371
  </define>
2478
- <define name="structuredidentifier">
2479
- <element name="structuredidentifier">
2480
- <optional>
2481
- <attribute name="type"/>
2482
- </optional>
2483
- <oneOrMore>
2484
- <element name="agency">
2485
- <text/>
2486
- </element>
2487
- </oneOrMore>
2488
- <optional>
2489
- <element name="class">
2490
- <text/>
2491
- </element>
2492
- </optional>
2493
- <element name="docnumber">
2494
- <text/>
2495
- </element>
2496
- <optional>
2497
- <element name="partnumber">
2498
- <text/>
2499
- </element>
2500
- </optional>
2501
- <optional>
2502
- <element name="edition">
2503
- <text/>
2504
- </element>
2505
- </optional>
2506
- <optional>
2507
- <element name="version">
2508
- <text/>
2509
- </element>
2510
- </optional>
2511
- <optional>
2512
- <element name="supplementtype">
2513
- <text/>
2514
- </element>
2515
- </optional>
2516
- <optional>
2517
- <element name="supplementnumber">
2518
- <text/>
2519
- </element>
2520
- </optional>
2521
- <optional>
2522
- <element name="amendment">
2523
- <text/>
2524
- </element>
2525
- </optional>
2526
- <optional>
2527
- <element name="corrigendum">
2528
- <text/>
2529
- </element>
2530
- </optional>
2531
- <optional>
2532
- <element name="language">
2533
- <text/>
2534
- </element>
2535
- </optional>
2536
- <optional>
2537
- <element name="year">
2538
- <text/>
2539
- </element>
2540
- </optional>
2541
- </element>
2542
- </define>
2543
2372
  <define name="term-clause">
2544
2373
  <element name="clause">
2545
2374
  <optional>
@@ -2700,6 +2529,7 @@
2700
2529
  <ref name="xref"/>
2701
2530
  <ref name="hyperlink"/>
2702
2531
  <ref name="eref"/>
2532
+ <ref name="erefstack"/>
2703
2533
  </choice>
2704
2534
  <oneOrMore>
2705
2535
  <element name="coords">
@@ -2747,6 +2577,7 @@
2747
2577
  <ref name="xref"/>
2748
2578
  <ref name="hyperlink"/>
2749
2579
  <ref name="eref"/>
2580
+ <ref name="erefstack"/>
2750
2581
  </choice>
2751
2582
  </element>
2752
2583
  </zeroOrMore>
@@ -2795,6 +2626,15 @@
2795
2626
  <ref name="PureTextElement"/>
2796
2627
  </oneOrMore>
2797
2628
  </define>
2629
+ <define name="XrefConnectiveType">
2630
+ <choice>
2631
+ <value>and</value>
2632
+ <value>or</value>
2633
+ <value>from</value>
2634
+ <value>to</value>
2635
+ <value/>
2636
+ </choice>
2637
+ </define>
2798
2638
  <define name="XrefTarget">
2799
2639
  <element name="location">
2800
2640
  <attribute name="target">
@@ -2803,14 +2643,36 @@
2803
2643
  </data>
2804
2644
  </attribute>
2805
2645
  <attribute name="connective">
2806
- <choice>
2807
- <value>and</value>
2808
- <value>or</value>
2809
- <value>from</value>
2810
- <value>to</value>
2811
- <value/>
2812
- </choice>
2646
+ <ref name="XrefConnectiveType"/>
2813
2647
  </attribute>
2814
2648
  </element>
2815
2649
  </define>
2650
+ <define name="XrefStyleType">
2651
+ <choice>
2652
+ <value>basic</value>
2653
+ <value>full</value>
2654
+ <value>short</value>
2655
+ <value>id</value>
2656
+ </choice>
2657
+ </define>
2658
+ <define name="erefTypeWithConnective">
2659
+ <optional>
2660
+ <attribute name="connective">
2661
+ <ref name="XrefConnectiveType"/>
2662
+ </attribute>
2663
+ </optional>
2664
+ <ref name="erefType"/>
2665
+ </define>
2666
+ <define name="erefstack">
2667
+ <element name="erefstack">
2668
+ <oneOrMore>
2669
+ <element name="eref">
2670
+ <ref name="erefTypeWithConnective"/>
2671
+ </element>
2672
+ </oneOrMore>
2673
+ </element>
2674
+ </define>
2675
+ <start>
2676
+ <ref name="standard-document"/>
2677
+ </start>
2816
2678
  </grammar>