relaton-itu 0.3.11 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/macos.yml +0 -2
- data/.github/workflows/ubuntu.yml +0 -2
- data/.github/workflows/windows.yml +0 -2
- data/Gemfile.lock +10 -6
- data/grammars/basicdoc.rng +1029 -0
- data/grammars/biblio.rng +1142 -0
- data/grammars/isodoc.rng +514 -0
- data/grammars/isostandard.rng +857 -0
- data/grammars/itu.rng +304 -0
- data/grammars/reqt.rng +165 -0
- data/itubib.gemspec +2 -1
- data/lib/relaton_itu.rb +10 -1
- data/lib/relaton_itu/processor.rb +6 -0
- data/lib/relaton_itu/version.rb +1 -1
- metadata +24 -4
data/grammars/itu.rng
ADDED
@@ -0,0 +1,304 @@
|
|
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
|
+
<!--
|
4
|
+
Currently we inherit from a namespaced grammar, isostandard. Until we inherit from isodoc,
|
5
|
+
we cannot have a new default namespace: we will end up with a grammar with two different
|
6
|
+
namespaces, one for isostandard and one for csand additions. And we do not want that.
|
7
|
+
-->
|
8
|
+
<include href="isostandard.rng">
|
9
|
+
<start>
|
10
|
+
<ref name="itu"/>
|
11
|
+
</start>
|
12
|
+
<define name="figure">
|
13
|
+
<element name="figure">
|
14
|
+
<attribute name="id">
|
15
|
+
<data type="ID"/>
|
16
|
+
</attribute>
|
17
|
+
<optional>
|
18
|
+
<ref name="tname"/>
|
19
|
+
</optional>
|
20
|
+
<choice>
|
21
|
+
<ref name="image"/>
|
22
|
+
<ref name="pre"/>
|
23
|
+
<oneOrMore>
|
24
|
+
<ref name="subfigure"/>
|
25
|
+
</oneOrMore>
|
26
|
+
</choice>
|
27
|
+
<zeroOrMore>
|
28
|
+
<ref name="fn"/>
|
29
|
+
</zeroOrMore>
|
30
|
+
<optional>
|
31
|
+
<ref name="dl"/>
|
32
|
+
</optional>
|
33
|
+
<zeroOrMore>
|
34
|
+
<ref name="note"/>
|
35
|
+
</zeroOrMore>
|
36
|
+
</element>
|
37
|
+
</define>
|
38
|
+
<define name="subfigure">
|
39
|
+
<element name="figure">
|
40
|
+
<attribute name="id">
|
41
|
+
<data type="ID"/>
|
42
|
+
</attribute>
|
43
|
+
<optional>
|
44
|
+
<ref name="tname"/>
|
45
|
+
</optional>
|
46
|
+
<choice>
|
47
|
+
<ref name="image"/>
|
48
|
+
<ref name="pre"/>
|
49
|
+
</choice>
|
50
|
+
</element>
|
51
|
+
</define>
|
52
|
+
<define name="ol">
|
53
|
+
<element name="ol">
|
54
|
+
<attribute name="id">
|
55
|
+
<data type="ID"/>
|
56
|
+
</attribute>
|
57
|
+
<optional>
|
58
|
+
<attribute name="class">
|
59
|
+
<value>steps</value>
|
60
|
+
</attribute>
|
61
|
+
</optional>
|
62
|
+
<oneOrMore>
|
63
|
+
<ref name="li"/>
|
64
|
+
</oneOrMore>
|
65
|
+
<zeroOrMore>
|
66
|
+
<ref name="note"/>
|
67
|
+
</zeroOrMore>
|
68
|
+
</element>
|
69
|
+
</define>
|
70
|
+
<define name="DocumentType">
|
71
|
+
<choice>
|
72
|
+
<value>recommendation</value>
|
73
|
+
<value>recommendation-supplement</value>
|
74
|
+
<value>recommendation-amendment</value>
|
75
|
+
<value>recommendation-corrigendum</value>
|
76
|
+
<value>recommendation-errata</value>
|
77
|
+
<value>recommendation-annex</value>
|
78
|
+
<value>focus-group</value>
|
79
|
+
<value>implementers-guide</value>
|
80
|
+
<value>technical-paper</value>
|
81
|
+
<value>technical-report</value>
|
82
|
+
<value>joint-itu-iso-iec</value>
|
83
|
+
<value>resolution</value>
|
84
|
+
</choice>
|
85
|
+
</define>
|
86
|
+
<define name="editorialgroup">
|
87
|
+
<element name="editorialgroup">
|
88
|
+
<ref name="bureau"/>
|
89
|
+
<optional>
|
90
|
+
<ref name="group"/>
|
91
|
+
</optional>
|
92
|
+
<optional>
|
93
|
+
<ref name="subgroup"/>
|
94
|
+
</optional>
|
95
|
+
<optional>
|
96
|
+
<ref name="workgroup"/>
|
97
|
+
</optional>
|
98
|
+
</element>
|
99
|
+
</define>
|
100
|
+
<define name="workgroup">
|
101
|
+
<element name="workgroup">
|
102
|
+
<ref name="ItuGroup"/>
|
103
|
+
</element>
|
104
|
+
</define>
|
105
|
+
<define name="structuredidentifier">
|
106
|
+
<element name="structuredidentifier">
|
107
|
+
<ref name="bureau"/>
|
108
|
+
<element name="docnumber">
|
109
|
+
<text/>
|
110
|
+
</element>
|
111
|
+
<optional>
|
112
|
+
<element name="annexid">
|
113
|
+
<text/>
|
114
|
+
</element>
|
115
|
+
</optional>
|
116
|
+
</element>
|
117
|
+
</define>
|
118
|
+
<define name="BibDataExtensionType">
|
119
|
+
<optional>
|
120
|
+
<ref name="doctype"/>
|
121
|
+
</optional>
|
122
|
+
<ref name="editorialgroup"/>
|
123
|
+
<zeroOrMore>
|
124
|
+
<ref name="ics"/>
|
125
|
+
</zeroOrMore>
|
126
|
+
<optional>
|
127
|
+
<ref name="recommendationstatus"/>
|
128
|
+
</optional>
|
129
|
+
<optional>
|
130
|
+
<ref name="ipnoticereceived"/>
|
131
|
+
</optional>
|
132
|
+
<optional>
|
133
|
+
<ref name="structuredidentifier"/>
|
134
|
+
</optional>
|
135
|
+
</define>
|
136
|
+
<define name="preface">
|
137
|
+
<element name="preface">
|
138
|
+
<oneOrMore>
|
139
|
+
<choice>
|
140
|
+
<ref name="content"/>
|
141
|
+
<ref name="abstract"/>
|
142
|
+
<ref name="foreword"/>
|
143
|
+
<ref name="introduction"/>
|
144
|
+
<ref name="acknowledgements"/>
|
145
|
+
<ref name="clause"/>
|
146
|
+
</choice>
|
147
|
+
</oneOrMore>
|
148
|
+
</element>
|
149
|
+
</define>
|
150
|
+
<define name="TextElement" combine="choice">
|
151
|
+
<choice>
|
152
|
+
<ref name="add"/>
|
153
|
+
<ref name="del"/>
|
154
|
+
</choice>
|
155
|
+
</define>
|
156
|
+
</include>
|
157
|
+
<define name="add">
|
158
|
+
<element name="add">
|
159
|
+
<choice>
|
160
|
+
<ref name="PureTextElement"/>
|
161
|
+
<ref name="eref"/>
|
162
|
+
<ref name="stem"/>
|
163
|
+
<ref name="keyword"/>
|
164
|
+
<ref name="xref"/>
|
165
|
+
<ref name="hyperlink"/>
|
166
|
+
</choice>
|
167
|
+
</element>
|
168
|
+
</define>
|
169
|
+
<define name="del">
|
170
|
+
<element name="del">
|
171
|
+
<choice>
|
172
|
+
<ref name="PureTextElement"/>
|
173
|
+
<ref name="eref"/>
|
174
|
+
<ref name="stem"/>
|
175
|
+
<ref name="keyword"/>
|
176
|
+
<ref name="xref"/>
|
177
|
+
<ref name="hyperlink"/>
|
178
|
+
</choice>
|
179
|
+
</element>
|
180
|
+
</define>
|
181
|
+
<define name="ipnoticereceived">
|
182
|
+
<element name="ip-notice-received">
|
183
|
+
<data type="boolean"/>
|
184
|
+
</element>
|
185
|
+
</define>
|
186
|
+
<define name="recommendationstatus">
|
187
|
+
<element name="recommendationstatus">
|
188
|
+
<element name="from">
|
189
|
+
<ref name="ISO8601Date"/>
|
190
|
+
</element>
|
191
|
+
<element name="to">
|
192
|
+
<ref name="ISO8601Date"/>
|
193
|
+
</element>
|
194
|
+
<optional>
|
195
|
+
<ref name="approvalstage"/>
|
196
|
+
</optional>
|
197
|
+
</element>
|
198
|
+
</define>
|
199
|
+
<define name="approvalstage">
|
200
|
+
<element name="approvalstage">
|
201
|
+
<attribute name="process">
|
202
|
+
<choice>
|
203
|
+
<value>tap</value>
|
204
|
+
<value>aap</value>
|
205
|
+
</choice>
|
206
|
+
</attribute>
|
207
|
+
<choice>
|
208
|
+
<value>determined</value>
|
209
|
+
<value>in-force</value>
|
210
|
+
<value>a</value>
|
211
|
+
<value>lc</value>
|
212
|
+
<value>ac</value>
|
213
|
+
<value>lj</value>
|
214
|
+
<value>aj</value>
|
215
|
+
<value>na</value>
|
216
|
+
<value>ar</value>
|
217
|
+
<value>ri</value>
|
218
|
+
<value>at</value>
|
219
|
+
<value>sg</value>
|
220
|
+
<value>c</value>
|
221
|
+
<value>tap</value>
|
222
|
+
</choice>
|
223
|
+
</element>
|
224
|
+
</define>
|
225
|
+
<define name="bureau">
|
226
|
+
<element name="bureau">
|
227
|
+
<choice>
|
228
|
+
<value>T</value>
|
229
|
+
<value>D</value>
|
230
|
+
<value>R</value>
|
231
|
+
</choice>
|
232
|
+
</element>
|
233
|
+
</define>
|
234
|
+
<define name="group">
|
235
|
+
<element name="group">
|
236
|
+
<ref name="ItuGroup"/>
|
237
|
+
</element>
|
238
|
+
</define>
|
239
|
+
<define name="subgroup">
|
240
|
+
<element name="subgroup">
|
241
|
+
<ref name="ItuGroup"/>
|
242
|
+
</element>
|
243
|
+
</define>
|
244
|
+
<define name="ItuGroup">
|
245
|
+
<optional>
|
246
|
+
<attribute name="type">
|
247
|
+
<choice>
|
248
|
+
<value>tsag</value>
|
249
|
+
<value>study-group</value>
|
250
|
+
<value>work-group</value>
|
251
|
+
</choice>
|
252
|
+
</attribute>
|
253
|
+
</optional>
|
254
|
+
<ref name="tname"/>
|
255
|
+
<optional>
|
256
|
+
<ref name="groupacronym"/>
|
257
|
+
</optional>
|
258
|
+
<optional>
|
259
|
+
<ref name="groupperiod"/>
|
260
|
+
</optional>
|
261
|
+
</define>
|
262
|
+
<define name="groupacronym">
|
263
|
+
<element name="acronym">
|
264
|
+
<text/>
|
265
|
+
</element>
|
266
|
+
</define>
|
267
|
+
<define name="groupperiod">
|
268
|
+
<element name="period">
|
269
|
+
<ref name="groupperiodstart"/>
|
270
|
+
<optional>
|
271
|
+
<ref name="groupperiodend"/>
|
272
|
+
</optional>
|
273
|
+
</element>
|
274
|
+
</define>
|
275
|
+
<define name="groupperiodstart">
|
276
|
+
<element name="start">
|
277
|
+
<data type="gYear"/>
|
278
|
+
</element>
|
279
|
+
</define>
|
280
|
+
<define name="groupperiodend">
|
281
|
+
<element name="end">
|
282
|
+
<data type="gYear"/>
|
283
|
+
</element>
|
284
|
+
</define>
|
285
|
+
<define name="itu">
|
286
|
+
<element name="itu-standard">
|
287
|
+
<ref name="bibdata"/>
|
288
|
+
<zeroOrMore>
|
289
|
+
<ref name="termdocsource"/>
|
290
|
+
</zeroOrMore>
|
291
|
+
<optional>
|
292
|
+
<ref name="boilerplate"/>
|
293
|
+
</optional>
|
294
|
+
<ref name="preface"/>
|
295
|
+
<oneOrMore>
|
296
|
+
<ref name="sections"/>
|
297
|
+
</oneOrMore>
|
298
|
+
<zeroOrMore>
|
299
|
+
<ref name="annex"/>
|
300
|
+
</zeroOrMore>
|
301
|
+
<ref name="bibliography"/>
|
302
|
+
</element>
|
303
|
+
</define>
|
304
|
+
</grammar>
|
data/grammars/reqt.rng
ADDED
@@ -0,0 +1,165 @@
|
|
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
|
+
<!--
|
4
|
+
Presupposes isodoc.rnc, is included in it
|
5
|
+
include "isodoc.rnc" { }
|
6
|
+
-->
|
7
|
+
<define name="requirement">
|
8
|
+
<element name="requirement">
|
9
|
+
<ref name="RequirementType"/>
|
10
|
+
</element>
|
11
|
+
</define>
|
12
|
+
<define name="recommendation">
|
13
|
+
<element name="recommendation">
|
14
|
+
<ref name="RequirementType"/>
|
15
|
+
</element>
|
16
|
+
</define>
|
17
|
+
<define name="permission">
|
18
|
+
<element name="permission">
|
19
|
+
<ref name="RequirementType"/>
|
20
|
+
</element>
|
21
|
+
</define>
|
22
|
+
<define name="RequirementType">
|
23
|
+
<optional>
|
24
|
+
<attribute name="obligation">
|
25
|
+
<ref name="ObligationType"/>
|
26
|
+
</attribute>
|
27
|
+
</optional>
|
28
|
+
<optional>
|
29
|
+
<attribute name="unnumbered">
|
30
|
+
<data type="boolean"/>
|
31
|
+
</attribute>
|
32
|
+
</optional>
|
33
|
+
<optional>
|
34
|
+
<attribute name="subsequence"/>
|
35
|
+
</optional>
|
36
|
+
<attribute name="id">
|
37
|
+
<data type="ID"/>
|
38
|
+
</attribute>
|
39
|
+
<optional>
|
40
|
+
<attribute name="filename"/>
|
41
|
+
</optional>
|
42
|
+
<optional>
|
43
|
+
<ref name="reqtitle"/>
|
44
|
+
</optional>
|
45
|
+
<optional>
|
46
|
+
<ref name="label"/>
|
47
|
+
</optional>
|
48
|
+
<optional>
|
49
|
+
<ref name="subject"/>
|
50
|
+
</optional>
|
51
|
+
<optional>
|
52
|
+
<ref name="reqinherit"/>
|
53
|
+
</optional>
|
54
|
+
<zeroOrMore>
|
55
|
+
<ref name="classification"/>
|
56
|
+
</zeroOrMore>
|
57
|
+
<zeroOrMore>
|
58
|
+
<choice>
|
59
|
+
<ref name="measurementtarget"/>
|
60
|
+
<ref name="specification"/>
|
61
|
+
<ref name="verification"/>
|
62
|
+
<ref name="import"/>
|
63
|
+
<ref name="description"/>
|
64
|
+
</choice>
|
65
|
+
</zeroOrMore>
|
66
|
+
<optional>
|
67
|
+
<ref name="reqt_references"/>
|
68
|
+
</optional>
|
69
|
+
<zeroOrMore>
|
70
|
+
<choice>
|
71
|
+
<ref name="requirement"/>
|
72
|
+
<ref name="recommendation"/>
|
73
|
+
<ref name="permission"/>
|
74
|
+
</choice>
|
75
|
+
</zeroOrMore>
|
76
|
+
</define>
|
77
|
+
<define name="reqtitle">
|
78
|
+
<element name="title">
|
79
|
+
<ref name="FormattedString"/>
|
80
|
+
</element>
|
81
|
+
</define>
|
82
|
+
<define name="label">
|
83
|
+
<element name="label">
|
84
|
+
<text/>
|
85
|
+
</element>
|
86
|
+
</define>
|
87
|
+
<define name="subject">
|
88
|
+
<element name="subject">
|
89
|
+
<text/>
|
90
|
+
</element>
|
91
|
+
</define>
|
92
|
+
<define name="reqinherit">
|
93
|
+
<element name="inherit">
|
94
|
+
<text/>
|
95
|
+
</element>
|
96
|
+
</define>
|
97
|
+
<define name="measurementtarget">
|
98
|
+
<element name="measurement-target">
|
99
|
+
<ref name="RequirementSubpart"/>
|
100
|
+
</element>
|
101
|
+
</define>
|
102
|
+
<define name="specification">
|
103
|
+
<element name="specification">
|
104
|
+
<ref name="RequirementSubpart"/>
|
105
|
+
</element>
|
106
|
+
</define>
|
107
|
+
<define name="verification">
|
108
|
+
<element name="verification">
|
109
|
+
<ref name="RequirementSubpart"/>
|
110
|
+
</element>
|
111
|
+
</define>
|
112
|
+
<define name="import">
|
113
|
+
<element name="import">
|
114
|
+
<ref name="RequirementSubpart"/>
|
115
|
+
</element>
|
116
|
+
</define>
|
117
|
+
<define name="description">
|
118
|
+
<element name="description">
|
119
|
+
<ref name="RequirementSubpart"/>
|
120
|
+
</element>
|
121
|
+
</define>
|
122
|
+
<define name="reqt_references">
|
123
|
+
<element name="references">
|
124
|
+
<oneOrMore>
|
125
|
+
<ref name="bibitem"/>
|
126
|
+
</oneOrMore>
|
127
|
+
</element>
|
128
|
+
</define>
|
129
|
+
<define name="RequirementSubpart">
|
130
|
+
<optional>
|
131
|
+
<attribute name="type"/>
|
132
|
+
</optional>
|
133
|
+
<optional>
|
134
|
+
<attribute name="exclude">
|
135
|
+
<data type="boolean"/>
|
136
|
+
</attribute>
|
137
|
+
</optional>
|
138
|
+
<oneOrMore>
|
139
|
+
<ref name="BasicBlock"/>
|
140
|
+
</oneOrMore>
|
141
|
+
</define>
|
142
|
+
<define name="ObligationType">
|
143
|
+
<choice>
|
144
|
+
<value>requirement</value>
|
145
|
+
<value>recommendation</value>
|
146
|
+
<value>permission</value>
|
147
|
+
</choice>
|
148
|
+
</define>
|
149
|
+
<define name="classification">
|
150
|
+
<element name="classification">
|
151
|
+
<ref name="classification_tag"/>
|
152
|
+
<ref name="classification_value"/>
|
153
|
+
</element>
|
154
|
+
</define>
|
155
|
+
<define name="classification_tag">
|
156
|
+
<element name="tag">
|
157
|
+
<text/>
|
158
|
+
</element>
|
159
|
+
</define>
|
160
|
+
<define name="classification_value">
|
161
|
+
<element name="value">
|
162
|
+
<text/>
|
163
|
+
</element>
|
164
|
+
</define>
|
165
|
+
</grammar>
|