metanorma-ieee 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +7 -0
  2. data/.github/workflows/rake.yml +13 -0
  3. data/.rubocop.yml +10 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +11 -0
  6. data/LICENSE +25 -0
  7. data/README.adoc +30 -0
  8. data/Rakefile +8 -0
  9. data/bin/console +14 -0
  10. data/bin/rspec +17 -0
  11. data/bin/setup +8 -0
  12. data/lib/html2doc/ieee.rb +89 -0
  13. data/lib/isodoc/ieee/base_convert.rb +33 -0
  14. data/lib/isodoc/ieee/html/header.html +146 -0
  15. data/lib/isodoc/ieee/html/html_ieee_intro.html +12 -0
  16. data/lib/isodoc/ieee/html/html_ieee_titlepage.html +44 -0
  17. data/lib/isodoc/ieee/html/htmlstyle.css +1027 -0
  18. data/lib/isodoc/ieee/html/htmlstyle.scss +736 -0
  19. data/lib/isodoc/ieee/html/ieee.css +3603 -0
  20. data/lib/isodoc/ieee/html/ieee.scss +3418 -0
  21. data/lib/isodoc/ieee/html/scripts.html +70 -0
  22. data/lib/isodoc/ieee/html/word_ieee_intro.html +70 -0
  23. data/lib/isodoc/ieee/html/word_ieee_titlepage.html +28 -0
  24. data/lib/isodoc/ieee/html/wordstyle.css +5310 -0
  25. data/lib/isodoc/ieee/html/wordstyle.scss +5026 -0
  26. data/lib/isodoc/ieee/html_convert.rb +52 -0
  27. data/lib/isodoc/ieee/i18n-en.yaml +28 -0
  28. data/lib/isodoc/ieee/i18n.rb +19 -0
  29. data/lib/isodoc/ieee/ieee.amendment.xsl +11177 -0
  30. data/lib/isodoc/ieee/ieee.rb +11 -0
  31. data/lib/isodoc/ieee/ieee.standard.xsl +11177 -0
  32. data/lib/isodoc/ieee/init.rb +28 -0
  33. data/lib/isodoc/ieee/metadata.rb +136 -0
  34. data/lib/isodoc/ieee/pdf_convert.rb +24 -0
  35. data/lib/isodoc/ieee/presentation_terms.rb +181 -0
  36. data/lib/isodoc/ieee/presentation_xml_convert.rb +89 -0
  37. data/lib/isodoc/ieee/word_authority.rb +160 -0
  38. data/lib/isodoc/ieee/word_cleanup.rb +134 -0
  39. data/lib/isodoc/ieee/word_convert.rb +75 -0
  40. data/lib/isodoc/ieee/xref.rb +77 -0
  41. data/lib/isodoc/ieee.rb +11 -0
  42. data/lib/metanorma/ieee/basicdoc.rng +1150 -0
  43. data/lib/metanorma/ieee/biblio.rng +1385 -0
  44. data/lib/metanorma/ieee/boilerplate.xml +298 -0
  45. data/lib/metanorma/ieee/cleanup.rb +160 -0
  46. data/lib/metanorma/ieee/converter.rb +81 -0
  47. data/lib/metanorma/ieee/front.rb +120 -0
  48. data/lib/metanorma/ieee/ieee.rng +97 -0
  49. data/lib/metanorma/ieee/isodoc.rng +2776 -0
  50. data/lib/metanorma/ieee/processor.rb +56 -0
  51. data/lib/metanorma/ieee/reqt.rng +226 -0
  52. data/lib/metanorma/ieee/validate.rb +198 -0
  53. data/lib/metanorma/ieee/validate_section.rb +119 -0
  54. data/lib/metanorma/ieee/validate_style.rb +108 -0
  55. data/lib/metanorma/ieee/version.rb +5 -0
  56. data/lib/metanorma/ieee.rb +11 -0
  57. data/lib/metanorma-ieee.rb +8 -0
  58. data/metanorma-itu.gemspec +41 -0
  59. metadata +284 -0
@@ -0,0 +1,2776 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ instantiations of this grammar may replace leaf strings
4
+ with more elaborated types; e.g. title (text) replaced with
5
+ title-main, title-intro, title-part; type replaced with
6
+ enum.
7
+
8
+ some renaming at leaf nodes is permissible
9
+
10
+ obligations can change both from optional to mandatory,
11
+ and from mandatory to optional; optional elements may
12
+ be omitted; freely positioned alternatives may be replaced
13
+ with strict ordering
14
+
15
+ DO NOT introduce a namespace here. We do not want a distinct namespace
16
+ for these elements, and a distinct namespace for any grammar inheriting
17
+ these elements; we just want one namespace for any child grammars
18
+ of this.
19
+ -->
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
+ <include href="reqt.rng"/>
22
+ <!-- include "biblio.rnc" { } -->
23
+ <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
+ <define name="admonition">
36
+ <element name="admonition">
37
+ <attribute name="type">
38
+ <ref name="AdmonitionType"/>
39
+ </attribute>
40
+ <optional>
41
+ <attribute name="class"/>
42
+ </optional>
43
+ <attribute name="id">
44
+ <data type="ID"/>
45
+ </attribute>
46
+ <optional>
47
+ <attribute name="uri">
48
+ <data type="anyURI"/>
49
+ </attribute>
50
+ </optional>
51
+ <optional>
52
+ <attribute name="coverpage">
53
+ <data type="boolean"/>
54
+ </attribute>
55
+ </optional>
56
+ <optional>
57
+ <attribute name="notag">
58
+ <data type="boolean"/>
59
+ </attribute>
60
+ </optional>
61
+ <optional>
62
+ <ref name="tname"/>
63
+ </optional>
64
+ <zeroOrMore>
65
+ <ref name="paragraph-with-footnote"/>
66
+ </zeroOrMore>
67
+ <zeroOrMore>
68
+ <ref name="note"/>
69
+ </zeroOrMore>
70
+ </element>
71
+ </define>
72
+ <define name="index">
73
+ <element name="index">
74
+ <optional>
75
+ <attribute name="to">
76
+ <data type="IDREF"/>
77
+ </attribute>
78
+ </optional>
79
+ <element name="primary">
80
+ <oneOrMore>
81
+ <choice>
82
+ <ref name="PureTextElement"/>
83
+ <ref name="stem"/>
84
+ </choice>
85
+ </oneOrMore>
86
+ </element>
87
+ <optional>
88
+ <element name="secondary">
89
+ <oneOrMore>
90
+ <choice>
91
+ <ref name="PureTextElement"/>
92
+ <ref name="stem"/>
93
+ </choice>
94
+ </oneOrMore>
95
+ </element>
96
+ </optional>
97
+ <optional>
98
+ <element name="tertiary">
99
+ <oneOrMore>
100
+ <choice>
101
+ <ref name="PureTextElement"/>
102
+ <ref name="stem"/>
103
+ </choice>
104
+ </oneOrMore>
105
+ </element>
106
+ </optional>
107
+ </element>
108
+ </define>
109
+ <define name="bibitem">
110
+ <element name="bibitem">
111
+ <attribute name="id">
112
+ <data type="ID"/>
113
+ </attribute>
114
+ <optional>
115
+ <attribute name="hidden">
116
+ <data type="boolean"/>
117
+ </attribute>
118
+ </optional>
119
+ <ref name="BibliographicItem"/>
120
+ </element>
121
+ </define>
122
+ <define name="section-title">
123
+ <element name="title">
124
+ <zeroOrMore>
125
+ <ref name="TextElement"/>
126
+ </zeroOrMore>
127
+ </element>
128
+ <zeroOrMore>
129
+ <element name="variant-title">
130
+ <ref name="TypedTitleString"/>
131
+ </element>
132
+ </zeroOrMore>
133
+ </define>
134
+ <define name="hyperlink">
135
+ <element name="link">
136
+ <attribute name="target">
137
+ <data type="anyURI"/>
138
+ </attribute>
139
+ <optional>
140
+ <attribute name="type">
141
+ <ref name="ReferenceFormat"/>
142
+ </attribute>
143
+ </optional>
144
+ <optional>
145
+ <attribute name="alt"/>
146
+ </optional>
147
+ <optional>
148
+ <attribute name="update-type">
149
+ <data type="boolean"/>
150
+ </attribute>
151
+ </optional>
152
+ <oneOrMore>
153
+ <ref name="PureTextElement"/>
154
+ </oneOrMore>
155
+ </element>
156
+ </define>
157
+ <define name="xref">
158
+ <element name="xref">
159
+ <attribute name="target">
160
+ <data type="string">
161
+ <param name="pattern">\i\c*|\c+#\c+</param>
162
+ </data>
163
+ </attribute>
164
+ <optional>
165
+ <attribute name="to">
166
+ <data type="string">
167
+ <param name="pattern">\i\c*|\c+#\c+</param>
168
+ </data>
169
+ </attribute>
170
+ </optional>
171
+ <optional>
172
+ <attribute name="type">
173
+ <ref name="ReferenceFormat"/>
174
+ </attribute>
175
+ </optional>
176
+ <optional>
177
+ <attribute name="alt"/>
178
+ </optional>
179
+ <optional>
180
+ <attribute name="case">
181
+ <choice>
182
+ <value>capital</value>
183
+ <value>lowercase</value>
184
+ </choice>
185
+ </attribute>
186
+ </optional>
187
+ <optional>
188
+ <attribute name="droploc">
189
+ <data type="boolean"/>
190
+ </attribute>
191
+ </optional>
192
+ <ref name="XrefBody"/>
193
+ </element>
194
+ </define>
195
+ <define name="erefType">
196
+ <optional>
197
+ <attribute name="normative">
198
+ <data type="boolean"/>
199
+ </attribute>
200
+ </optional>
201
+ <attribute name="citeas"/>
202
+ <attribute name="type">
203
+ <ref name="ReferenceFormat"/>
204
+ </attribute>
205
+ <optional>
206
+ <attribute name="alt"/>
207
+ </optional>
208
+ <optional>
209
+ <attribute name="case">
210
+ <choice>
211
+ <value>capital</value>
212
+ <value>lowercase</value>
213
+ </choice>
214
+ </attribute>
215
+ </optional>
216
+ <optional>
217
+ <attribute name="droploc">
218
+ <data type="boolean"/>
219
+ </attribute>
220
+ </optional>
221
+ <ref name="CitationType"/>
222
+ <oneOrMore>
223
+ <ref name="PureTextElement"/>
224
+ </oneOrMore>
225
+ </define>
226
+ <define name="localityStack">
227
+ <element name="localityStack">
228
+ <optional>
229
+ <attribute name="connective">
230
+ <choice>
231
+ <value>and</value>
232
+ <value>or</value>
233
+ <value>from</value>
234
+ <value>to</value>
235
+ <value/>
236
+ </choice>
237
+ </attribute>
238
+ </optional>
239
+ <zeroOrMore>
240
+ <ref name="locality"/>
241
+ </zeroOrMore>
242
+ </element>
243
+ </define>
244
+ <define name="sourceLocalityStack">
245
+ <element name="sourceLocalityStack">
246
+ <optional>
247
+ <attribute name="connective">
248
+ <choice>
249
+ <value>and</value>
250
+ <value>or</value>
251
+ <value>from</value>
252
+ <value>to</value>
253
+ <value/>
254
+ </choice>
255
+ </attribute>
256
+ </optional>
257
+ <zeroOrMore>
258
+ <ref name="sourceLocality"/>
259
+ </zeroOrMore>
260
+ </element>
261
+ </define>
262
+ <define name="ul">
263
+ <element name="ul">
264
+ <attribute name="id">
265
+ <data type="ID"/>
266
+ </attribute>
267
+ <optional>
268
+ <attribute name="keep-with-next">
269
+ <data type="boolean"/>
270
+ </attribute>
271
+ </optional>
272
+ <optional>
273
+ <attribute name="keep-lines-together">
274
+ <data type="boolean"/>
275
+ </attribute>
276
+ </optional>
277
+ <optional>
278
+ <attribute name="tag"/>
279
+ </optional>
280
+ <optional>
281
+ <attribute name="multilingual-rendering">
282
+ <ref name="MultilingualRenderingType"/>
283
+ </attribute>
284
+ </optional>
285
+ <optional>
286
+ <ref name="tname"/>
287
+ </optional>
288
+ <oneOrMore>
289
+ <ref name="ul_li"/>
290
+ </oneOrMore>
291
+ <zeroOrMore>
292
+ <ref name="note"/>
293
+ </zeroOrMore>
294
+ </element>
295
+ </define>
296
+ <define name="ol">
297
+ <element name="ol">
298
+ <attribute name="id">
299
+ <data type="ID"/>
300
+ </attribute>
301
+ <optional>
302
+ <attribute name="keep-with-next">
303
+ <data type="boolean"/>
304
+ </attribute>
305
+ </optional>
306
+ <optional>
307
+ <attribute name="keep-lines-together">
308
+ <data type="boolean"/>
309
+ </attribute>
310
+ </optional>
311
+ <optional>
312
+ <attribute name="tag"/>
313
+ </optional>
314
+ <optional>
315
+ <attribute name="multilingual-rendering">
316
+ <ref name="MultilingualRenderingType"/>
317
+ </attribute>
318
+ </optional>
319
+ <optional>
320
+ <attribute name="type">
321
+ <choice>
322
+ <value>roman</value>
323
+ <value>alphabet</value>
324
+ <value>arabic</value>
325
+ <value>roman_upper</value>
326
+ <value>alphabet_upper</value>
327
+ </choice>
328
+ </attribute>
329
+ </optional>
330
+ <optional>
331
+ <ref name="tname"/>
332
+ </optional>
333
+ <oneOrMore>
334
+ <ref name="li"/>
335
+ </oneOrMore>
336
+ <zeroOrMore>
337
+ <ref name="note"/>
338
+ </zeroOrMore>
339
+ </element>
340
+ </define>
341
+ <define name="dl">
342
+ <element name="dl">
343
+ <attribute name="id">
344
+ <data type="ID"/>
345
+ </attribute>
346
+ <optional>
347
+ <attribute name="keep-with-next">
348
+ <data type="boolean"/>
349
+ </attribute>
350
+ </optional>
351
+ <optional>
352
+ <attribute name="keep-lines-together">
353
+ <data type="boolean"/>
354
+ </attribute>
355
+ </optional>
356
+ <optional>
357
+ <attribute name="key">
358
+ <data type="boolean"/>
359
+ </attribute>
360
+ </optional>
361
+ <optional>
362
+ <attribute name="tag"/>
363
+ </optional>
364
+ <optional>
365
+ <attribute name="multilingual-rendering">
366
+ <ref name="MultilingualRenderingType"/>
367
+ </attribute>
368
+ </optional>
369
+ <optional>
370
+ <ref name="tname"/>
371
+ </optional>
372
+ <oneOrMore>
373
+ <ref name="dt"/>
374
+ <ref name="dd"/>
375
+ </oneOrMore>
376
+ <zeroOrMore>
377
+ <ref name="note"/>
378
+ </zeroOrMore>
379
+ </element>
380
+ </define>
381
+ <define name="dt">
382
+ <element name="dt">
383
+ <optional>
384
+ <attribute name="id">
385
+ <data type="ID"/>
386
+ </attribute>
387
+ </optional>
388
+ <zeroOrMore>
389
+ <ref name="TextElement"/>
390
+ </zeroOrMore>
391
+ </element>
392
+ </define>
393
+ <define name="example">
394
+ <element name="example">
395
+ <attribute name="id">
396
+ <data type="ID"/>
397
+ </attribute>
398
+ <optional>
399
+ <attribute name="unnumbered">
400
+ <data type="boolean"/>
401
+ </attribute>
402
+ </optional>
403
+ <optional>
404
+ <attribute name="subsequence"/>
405
+ </optional>
406
+ <optional>
407
+ <attribute name="number"/>
408
+ </optional>
409
+ <optional>
410
+ <attribute name="keep-with-next">
411
+ <data type="boolean"/>
412
+ </attribute>
413
+ </optional>
414
+ <optional>
415
+ <attribute name="keep-lines-together">
416
+ <data type="boolean"/>
417
+ </attribute>
418
+ </optional>
419
+ <optional>
420
+ <attribute name="tag"/>
421
+ </optional>
422
+ <optional>
423
+ <attribute name="multilingual-rendering">
424
+ <ref name="MultilingualRenderingType"/>
425
+ </attribute>
426
+ </optional>
427
+ <optional>
428
+ <ref name="tname"/>
429
+ </optional>
430
+ <oneOrMore>
431
+ <choice>
432
+ <ref name="formula"/>
433
+ <ref name="ul"/>
434
+ <ref name="ol"/>
435
+ <ref name="dl"/>
436
+ <ref name="quote"/>
437
+ <ref name="sourcecode"/>
438
+ <ref name="paragraph-with-footnote"/>
439
+ <ref name="figure"/>
440
+ </choice>
441
+ </oneOrMore>
442
+ <zeroOrMore>
443
+ <ref name="note"/>
444
+ </zeroOrMore>
445
+ </element>
446
+ </define>
447
+ <define name="table">
448
+ <element name="table">
449
+ <attribute name="id">
450
+ <data type="ID"/>
451
+ </attribute>
452
+ <optional>
453
+ <attribute name="unnumbered">
454
+ <data type="boolean"/>
455
+ </attribute>
456
+ </optional>
457
+ <optional>
458
+ <attribute name="number"/>
459
+ </optional>
460
+ <optional>
461
+ <attribute name="subsequence"/>
462
+ </optional>
463
+ <optional>
464
+ <attribute name="alt"/>
465
+ </optional>
466
+ <optional>
467
+ <attribute name="summary"/>
468
+ </optional>
469
+ <optional>
470
+ <attribute name="uri">
471
+ <data type="anyURI"/>
472
+ </attribute>
473
+ </optional>
474
+ <optional>
475
+ <attribute name="keep-with-next">
476
+ <data type="boolean"/>
477
+ </attribute>
478
+ </optional>
479
+ <optional>
480
+ <attribute name="keep-lines-together">
481
+ <data type="boolean"/>
482
+ </attribute>
483
+ </optional>
484
+ <optional>
485
+ <attribute name="width"/>
486
+ </optional>
487
+ <optional>
488
+ <attribute name="tag"/>
489
+ </optional>
490
+ <optional>
491
+ <attribute name="multilingual-rendering">
492
+ <ref name="MultilingualRenderingType"/>
493
+ </attribute>
494
+ </optional>
495
+ <optional>
496
+ <ref name="colgroup"/>
497
+ </optional>
498
+ <optional>
499
+ <ref name="tname"/>
500
+ </optional>
501
+ <optional>
502
+ <ref name="thead"/>
503
+ </optional>
504
+ <ref name="tbody"/>
505
+ <optional>
506
+ <ref name="tfoot"/>
507
+ </optional>
508
+ <zeroOrMore>
509
+ <ref name="table-note"/>
510
+ </zeroOrMore>
511
+ <optional>
512
+ <ref name="dl"/>
513
+ </optional>
514
+ </element>
515
+ </define>
516
+ <define name="figure">
517
+ <element name="figure">
518
+ <attribute name="id">
519
+ <data type="ID"/>
520
+ </attribute>
521
+ <optional>
522
+ <attribute name="unnumbered">
523
+ <data type="boolean"/>
524
+ </attribute>
525
+ </optional>
526
+ <optional>
527
+ <attribute name="number"/>
528
+ </optional>
529
+ <optional>
530
+ <attribute name="subsequence"/>
531
+ </optional>
532
+ <optional>
533
+ <attribute name="keep-with-next">
534
+ <data type="boolean"/>
535
+ </attribute>
536
+ </optional>
537
+ <optional>
538
+ <attribute name="keep-lines-together">
539
+ <data type="boolean"/>
540
+ </attribute>
541
+ </optional>
542
+ <optional>
543
+ <attribute name="class"/>
544
+ </optional>
545
+ <optional>
546
+ <attribute name="tag"/>
547
+ </optional>
548
+ <optional>
549
+ <attribute name="multilingual-rendering">
550
+ <ref name="MultilingualRenderingType"/>
551
+ </attribute>
552
+ </optional>
553
+ <optional>
554
+ <ref name="source"/>
555
+ </optional>
556
+ <optional>
557
+ <ref name="tname"/>
558
+ </optional>
559
+ <choice>
560
+ <ref name="image"/>
561
+ <ref name="video"/>
562
+ <ref name="audio"/>
563
+ <ref name="pre"/>
564
+ <oneOrMore>
565
+ <ref name="paragraph-with-footnote"/>
566
+ </oneOrMore>
567
+ <zeroOrMore>
568
+ <ref name="figure"/>
569
+ </zeroOrMore>
570
+ </choice>
571
+ <zeroOrMore>
572
+ <ref name="fn"/>
573
+ </zeroOrMore>
574
+ <optional>
575
+ <ref name="dl"/>
576
+ </optional>
577
+ <zeroOrMore>
578
+ <ref name="note"/>
579
+ </zeroOrMore>
580
+ </element>
581
+ </define>
582
+ <define name="sourcecode">
583
+ <element name="sourcecode">
584
+ <attribute name="id">
585
+ <data type="ID"/>
586
+ </attribute>
587
+ <optional>
588
+ <attribute name="unnumbered">
589
+ <data type="boolean"/>
590
+ </attribute>
591
+ </optional>
592
+ <optional>
593
+ <attribute name="number"/>
594
+ </optional>
595
+ <optional>
596
+ <attribute name="subsequence"/>
597
+ </optional>
598
+ <optional>
599
+ <attribute name="keep-with-next">
600
+ <data type="boolean"/>
601
+ </attribute>
602
+ </optional>
603
+ <optional>
604
+ <attribute name="keep-lines-together">
605
+ <data type="boolean"/>
606
+ </attribute>
607
+ </optional>
608
+ <optional>
609
+ <attribute name="lang"/>
610
+ </optional>
611
+ <optional>
612
+ <attribute name="tag"/>
613
+ </optional>
614
+ <optional>
615
+ <attribute name="multilingual-rendering">
616
+ <ref name="MultilingualRenderingType"/>
617
+ </attribute>
618
+ </optional>
619
+ <optional>
620
+ <ref name="tname"/>
621
+ </optional>
622
+ <oneOrMore>
623
+ <choice>
624
+ <text/>
625
+ <ref name="callout"/>
626
+ </choice>
627
+ </oneOrMore>
628
+ <zeroOrMore>
629
+ <ref name="annotation"/>
630
+ </zeroOrMore>
631
+ <zeroOrMore>
632
+ <ref name="note"/>
633
+ </zeroOrMore>
634
+ </element>
635
+ </define>
636
+ <define name="formula">
637
+ <element name="formula">
638
+ <attribute name="id">
639
+ <data type="ID"/>
640
+ </attribute>
641
+ <optional>
642
+ <attribute name="unnumbered">
643
+ <data type="boolean"/>
644
+ </attribute>
645
+ </optional>
646
+ <optional>
647
+ <attribute name="number"/>
648
+ </optional>
649
+ <optional>
650
+ <attribute name="subsequence"/>
651
+ </optional>
652
+ <optional>
653
+ <attribute name="keep-with-next">
654
+ <data type="boolean"/>
655
+ </attribute>
656
+ </optional>
657
+ <optional>
658
+ <attribute name="keep-lines-together">
659
+ <data type="boolean"/>
660
+ </attribute>
661
+ </optional>
662
+ <optional>
663
+ <attribute name="inequality">
664
+ <data type="boolean"/>
665
+ </attribute>
666
+ </optional>
667
+ <optional>
668
+ <attribute name="tag"/>
669
+ </optional>
670
+ <optional>
671
+ <attribute name="multilingual-rendering">
672
+ <ref name="MultilingualRenderingType"/>
673
+ </attribute>
674
+ </optional>
675
+ <ref name="stem"/>
676
+ <optional>
677
+ <ref name="dl"/>
678
+ </optional>
679
+ <zeroOrMore>
680
+ <ref name="note"/>
681
+ </zeroOrMore>
682
+ </element>
683
+ </define>
684
+ <define name="ParagraphType">
685
+ <attribute name="id">
686
+ <data type="ID"/>
687
+ </attribute>
688
+ <optional>
689
+ <attribute name="align">
690
+ <ref name="Alignments"/>
691
+ </attribute>
692
+ </optional>
693
+ <optional>
694
+ <attribute name="keep-with-next">
695
+ <data type="boolean"/>
696
+ </attribute>
697
+ </optional>
698
+ <optional>
699
+ <attribute name="keep-lines-together">
700
+ <data type="boolean"/>
701
+ </attribute>
702
+ </optional>
703
+ <optional>
704
+ <attribute name="tag"/>
705
+ </optional>
706
+ <optional>
707
+ <attribute name="type"/>
708
+ </optional>
709
+ <optional>
710
+ <attribute name="multilingual-rendering">
711
+ <ref name="MultilingualRenderingType"/>
712
+ </attribute>
713
+ </optional>
714
+ <zeroOrMore>
715
+ <ref name="TextElement"/>
716
+ </zeroOrMore>
717
+ <zeroOrMore>
718
+ <ref name="note"/>
719
+ </zeroOrMore>
720
+ </define>
721
+ <define name="paragraph-with-footnote">
722
+ <element name="p">
723
+ <attribute name="id">
724
+ <data type="ID"/>
725
+ </attribute>
726
+ <optional>
727
+ <attribute name="align">
728
+ <ref name="Alignments"/>
729
+ </attribute>
730
+ </optional>
731
+ <optional>
732
+ <attribute name="keep-with-next">
733
+ <data type="boolean"/>
734
+ </attribute>
735
+ </optional>
736
+ <optional>
737
+ <attribute name="keep-lines-together">
738
+ <data type="boolean"/>
739
+ </attribute>
740
+ </optional>
741
+ <optional>
742
+ <attribute name="tag"/>
743
+ </optional>
744
+ <optional>
745
+ <attribute name="type"/>
746
+ </optional>
747
+ <optional>
748
+ <attribute name="multilingual-rendering">
749
+ <ref name="MultilingualRenderingType"/>
750
+ </attribute>
751
+ </optional>
752
+ <zeroOrMore>
753
+ <choice>
754
+ <ref name="TextElement"/>
755
+ <ref name="fn"/>
756
+ </choice>
757
+ </zeroOrMore>
758
+ <zeroOrMore>
759
+ <ref name="note"/>
760
+ </zeroOrMore>
761
+ </element>
762
+ </define>
763
+ <define name="quote">
764
+ <element name="quote">
765
+ <attribute name="id">
766
+ <data type="ID"/>
767
+ </attribute>
768
+ <optional>
769
+ <attribute name="alignment">
770
+ <ref name="Alignments"/>
771
+ </attribute>
772
+ </optional>
773
+ <optional>
774
+ <attribute name="keep-with-next">
775
+ <data type="boolean"/>
776
+ </attribute>
777
+ </optional>
778
+ <optional>
779
+ <attribute name="keep-lines-together">
780
+ <data type="boolean"/>
781
+ </attribute>
782
+ </optional>
783
+ <optional>
784
+ <attribute name="tag"/>
785
+ </optional>
786
+ <optional>
787
+ <attribute name="multilingual-rendering">
788
+ <ref name="MultilingualRenderingType"/>
789
+ </attribute>
790
+ </optional>
791
+ <optional>
792
+ <ref name="quote-source"/>
793
+ </optional>
794
+ <optional>
795
+ <ref name="quote-author"/>
796
+ </optional>
797
+ <oneOrMore>
798
+ <ref name="paragraph-with-footnote"/>
799
+ </oneOrMore>
800
+ <zeroOrMore>
801
+ <ref name="note"/>
802
+ </zeroOrMore>
803
+ </element>
804
+ </define>
805
+ <define name="BibDataExtensionType">
806
+ <ref name="doctype"/>
807
+ <optional>
808
+ <ref name="docsubtype"/>
809
+ </optional>
810
+ <optional>
811
+ <ref name="editorialgroup"/>
812
+ </optional>
813
+ <zeroOrMore>
814
+ <ref name="ics"/>
815
+ </zeroOrMore>
816
+ <zeroOrMore>
817
+ <ref name="structuredidentifier"/>
818
+ </zeroOrMore>
819
+ </define>
820
+ <!-- TitleType = text -->
821
+ <define name="sections">
822
+ <element name="sections">
823
+ <oneOrMore>
824
+ <choice>
825
+ <ref name="clause"/>
826
+ <ref name="terms"/>
827
+ <ref name="term-clause"/>
828
+ <ref name="definitions"/>
829
+ <ref name="floating-title"/>
830
+ </choice>
831
+ </oneOrMore>
832
+ </element>
833
+ </define>
834
+ <define name="references">
835
+ <element name="references">
836
+ <optional>
837
+ <attribute name="id">
838
+ <data type="ID"/>
839
+ </attribute>
840
+ </optional>
841
+ <optional>
842
+ <attribute name="obligation">
843
+ <choice>
844
+ <value>normative</value>
845
+ <value>informative</value>
846
+ </choice>
847
+ </attribute>
848
+ </optional>
849
+ <attribute name="normative">
850
+ <data type="boolean"/>
851
+ </attribute>
852
+ <optional>
853
+ <ref name="section-title"/>
854
+ </optional>
855
+ <zeroOrMore>
856
+ <ref name="BasicBlock"/>
857
+ </zeroOrMore>
858
+ <zeroOrMore>
859
+ <ref name="bibitem"/>
860
+ <zeroOrMore>
861
+ <ref name="note"/>
862
+ </zeroOrMore>
863
+ </zeroOrMore>
864
+ <zeroOrMore>
865
+ <ref name="references"/>
866
+ </zeroOrMore>
867
+ </element>
868
+ </define>
869
+ <define name="note">
870
+ <element name="note">
871
+ <attribute name="id">
872
+ <data type="ID"/>
873
+ </attribute>
874
+ <optional>
875
+ <attribute name="unnumbered">
876
+ <data type="boolean"/>
877
+ </attribute>
878
+ </optional>
879
+ <optional>
880
+ <attribute name="number"/>
881
+ </optional>
882
+ <optional>
883
+ <attribute name="subsequence"/>
884
+ </optional>
885
+ <optional>
886
+ <attribute name="keep-with-next">
887
+ <data type="boolean"/>
888
+ </attribute>
889
+ </optional>
890
+ <optional>
891
+ <attribute name="keep-lines-together">
892
+ <data type="boolean"/>
893
+ </attribute>
894
+ </optional>
895
+ <optional>
896
+ <attribute name="type"/>
897
+ </optional>
898
+ <optional>
899
+ <attribute name="tag"/>
900
+ </optional>
901
+ <optional>
902
+ <attribute name="multilingual-rendering">
903
+ <ref name="MultilingualRenderingType"/>
904
+ </attribute>
905
+ </optional>
906
+ <optional>
907
+ <attribute name="coverpage">
908
+ <data type="boolean"/>
909
+ </attribute>
910
+ </optional>
911
+ <optional>
912
+ <attribute name="notag">
913
+ <data type="boolean"/>
914
+ </attribute>
915
+ </optional>
916
+ <oneOrMore>
917
+ <choice>
918
+ <ref name="paragraph"/>
919
+ <ref name="ul"/>
920
+ <ref name="ol"/>
921
+ <ref name="dl"/>
922
+ <ref name="formula"/>
923
+ <ref name="quote"/>
924
+ <ref name="sourcecode"/>
925
+ </choice>
926
+ </oneOrMore>
927
+ </element>
928
+ </define>
929
+ <define name="Basic-Section">
930
+ <optional>
931
+ <attribute name="id">
932
+ <data type="ID"/>
933
+ </attribute>
934
+ </optional>
935
+ <optional>
936
+ <attribute name="language"/>
937
+ </optional>
938
+ <optional>
939
+ <attribute name="script"/>
940
+ </optional>
941
+ <optional>
942
+ <attribute name="obligation">
943
+ <choice>
944
+ <value>normative</value>
945
+ <value>informative</value>
946
+ </choice>
947
+ </attribute>
948
+ </optional>
949
+ <optional>
950
+ <ref name="section-title"/>
951
+ </optional>
952
+ <oneOrMore>
953
+ <ref name="BasicBlock"/>
954
+ </oneOrMore>
955
+ </define>
956
+ <define name="li">
957
+ <element name="li">
958
+ <group>
959
+ <optional>
960
+ <attribute name="id">
961
+ <data type="ID"/>
962
+ </attribute>
963
+ </optional>
964
+ <oneOrMore>
965
+ <ref name="BasicBlock"/>
966
+ </oneOrMore>
967
+ </group>
968
+ <!-- exclude figures? -->
969
+ </element>
970
+ </define>
971
+ <define name="dd">
972
+ <element name="dd">
973
+ <zeroOrMore>
974
+ <!-- exclude figures? -->
975
+ <ref name="BasicBlock"/>
976
+ </zeroOrMore>
977
+ </element>
978
+ </define>
979
+ <define name="thead">
980
+ <element name="thead">
981
+ <oneOrMore>
982
+ <ref name="tr"/>
983
+ </oneOrMore>
984
+ </element>
985
+ </define>
986
+ <define name="td">
987
+ <element name="td">
988
+ <optional>
989
+ <attribute name="colspan"/>
990
+ </optional>
991
+ <optional>
992
+ <attribute name="rowspan"/>
993
+ </optional>
994
+ <optional>
995
+ <attribute name="align">
996
+ <choice>
997
+ <value>left</value>
998
+ <value>right</value>
999
+ <value>center</value>
1000
+ </choice>
1001
+ </attribute>
1002
+ </optional>
1003
+ <optional>
1004
+ <attribute name="valign">
1005
+ <choice>
1006
+ <value>top</value>
1007
+ <value>middle</value>
1008
+ <value>bottom</value>
1009
+ <value>baseline</value>
1010
+ </choice>
1011
+ </attribute>
1012
+ </optional>
1013
+ <choice>
1014
+ <zeroOrMore>
1015
+ <choice>
1016
+ <ref name="TextElement"/>
1017
+ <ref name="fn"/>
1018
+ </choice>
1019
+ </zeroOrMore>
1020
+ <oneOrMore>
1021
+ <choice>
1022
+ <ref name="paragraph-with-footnote"/>
1023
+ <ref name="dl"/>
1024
+ <ref name="ul"/>
1025
+ <ref name="ol"/>
1026
+ <ref name="figure"/>
1027
+ </choice>
1028
+ </oneOrMore>
1029
+ </choice>
1030
+ </element>
1031
+ </define>
1032
+ <define name="th">
1033
+ <element name="th">
1034
+ <optional>
1035
+ <attribute name="colspan"/>
1036
+ </optional>
1037
+ <optional>
1038
+ <attribute name="rowspan"/>
1039
+ </optional>
1040
+ <optional>
1041
+ <attribute name="align">
1042
+ <choice>
1043
+ <value>left</value>
1044
+ <value>right</value>
1045
+ <value>center</value>
1046
+ </choice>
1047
+ </attribute>
1048
+ </optional>
1049
+ <optional>
1050
+ <attribute name="valign">
1051
+ <choice>
1052
+ <value>top</value>
1053
+ <value>middle</value>
1054
+ <value>bottom</value>
1055
+ <value>baseline</value>
1056
+ </choice>
1057
+ </attribute>
1058
+ </optional>
1059
+ <choice>
1060
+ <zeroOrMore>
1061
+ <choice>
1062
+ <ref name="TextElement"/>
1063
+ <ref name="fn"/>
1064
+ </choice>
1065
+ </zeroOrMore>
1066
+ <oneOrMore>
1067
+ <ref name="paragraph-with-footnote"/>
1068
+ </oneOrMore>
1069
+ </choice>
1070
+ </element>
1071
+ </define>
1072
+ <define name="table-note">
1073
+ <element name="note">
1074
+ <optional>
1075
+ <attribute name="id">
1076
+ <data type="ID"/>
1077
+ </attribute>
1078
+ </optional>
1079
+ <ref name="paragraph"/>
1080
+ </element>
1081
+ </define>
1082
+ <define name="em">
1083
+ <element name="em">
1084
+ <zeroOrMore>
1085
+ <choice>
1086
+ <ref name="PureTextElement"/>
1087
+ <ref name="stem"/>
1088
+ <ref name="index"/>
1089
+ <ref name="eref"/>
1090
+ <ref name="xref"/>
1091
+ <ref name="hyperlink"/>
1092
+ </choice>
1093
+ </zeroOrMore>
1094
+ </element>
1095
+ </define>
1096
+ <define name="strong">
1097
+ <element name="strong">
1098
+ <zeroOrMore>
1099
+ <choice>
1100
+ <ref name="PureTextElement"/>
1101
+ <ref name="stem"/>
1102
+ <ref name="index"/>
1103
+ <ref name="eref"/>
1104
+ <ref name="xref"/>
1105
+ <ref name="hyperlink"/>
1106
+ </choice>
1107
+ </zeroOrMore>
1108
+ </element>
1109
+ </define>
1110
+ <define name="tt">
1111
+ <element name="tt">
1112
+ <zeroOrMore>
1113
+ <choice>
1114
+ <ref name="PureTextElement"/>
1115
+ <ref name="index"/>
1116
+ <ref name="eref"/>
1117
+ <ref name="xref"/>
1118
+ <ref name="hyperlink"/>
1119
+ </choice>
1120
+ </zeroOrMore>
1121
+ </element>
1122
+ </define>
1123
+ <define name="keyword">
1124
+ <element name="keyword">
1125
+ <zeroOrMore>
1126
+ <choice>
1127
+ <ref name="PureTextElement"/>
1128
+ <ref name="index"/>
1129
+ </choice>
1130
+ </zeroOrMore>
1131
+ </element>
1132
+ </define>
1133
+ <define name="strike">
1134
+ <element name="strike">
1135
+ <zeroOrMore>
1136
+ <choice>
1137
+ <ref name="PureTextElement"/>
1138
+ <ref name="index"/>
1139
+ </choice>
1140
+ </zeroOrMore>
1141
+ </element>
1142
+ </define>
1143
+ <define name="underline">
1144
+ <element name="underline">
1145
+ <zeroOrMore>
1146
+ <choice>
1147
+ <ref name="PureTextElement"/>
1148
+ <ref name="index"/>
1149
+ </choice>
1150
+ </zeroOrMore>
1151
+ </element>
1152
+ </define>
1153
+ <define name="smallcap">
1154
+ <element name="smallcap">
1155
+ <zeroOrMore>
1156
+ <choice>
1157
+ <ref name="PureTextElement"/>
1158
+ <ref name="index"/>
1159
+ </choice>
1160
+ </zeroOrMore>
1161
+ </element>
1162
+ </define>
1163
+ <define name="sub">
1164
+ <element name="sub">
1165
+ <zeroOrMore>
1166
+ <choice>
1167
+ <ref name="PureTextElement"/>
1168
+ <ref name="stem"/>
1169
+ </choice>
1170
+ </zeroOrMore>
1171
+ </element>
1172
+ </define>
1173
+ <define name="sup">
1174
+ <element name="sup">
1175
+ <zeroOrMore>
1176
+ <choice>
1177
+ <ref name="PureTextElement"/>
1178
+ <ref name="stem"/>
1179
+ </choice>
1180
+ </zeroOrMore>
1181
+ </element>
1182
+ </define>
1183
+ <define name="pagebreak">
1184
+ <element name="pagebreak">
1185
+ <optional>
1186
+ <attribute name="orientation">
1187
+ <choice>
1188
+ <value>landscape</value>
1189
+ <value>portrait</value>
1190
+ </choice>
1191
+ </attribute>
1192
+ </optional>
1193
+ </element>
1194
+ </define>
1195
+ </include>
1196
+ <!-- end overrides -->
1197
+ <define name="image" combine="choice">
1198
+ <element name="svg">
1199
+ <oneOrMore>
1200
+ <choice>
1201
+ <text/>
1202
+ <ref name="AnyElement"/>
1203
+ </choice>
1204
+ </oneOrMore>
1205
+ </element>
1206
+ </define>
1207
+ <define name="MultilingualRenderingType">
1208
+ <choice>
1209
+ <value>common</value>
1210
+ <value>all-columns</value>
1211
+ <value>parallel</value>
1212
+ <value>tag</value>
1213
+ </choice>
1214
+ </define>
1215
+ <define name="docsubtype">
1216
+ <element name="subdoctype">
1217
+ <ref name="DocumentSubtype"/>
1218
+ </element>
1219
+ </define>
1220
+ <define name="DocumentSubtype">
1221
+ <text/>
1222
+ </define>
1223
+ <define name="colgroup">
1224
+ <element name="colgroup">
1225
+ <oneOrMore>
1226
+ <ref name="col"/>
1227
+ </oneOrMore>
1228
+ </element>
1229
+ </define>
1230
+ <define name="col">
1231
+ <element name="col">
1232
+ <attribute name="width"/>
1233
+ </element>
1234
+ </define>
1235
+ <define name="BibItemType" combine="choice">
1236
+ <value>internal</value>
1237
+ </define>
1238
+ <define name="TextElement" combine="choice">
1239
+ <choice>
1240
+ <ref name="concept"/>
1241
+ <ref name="add"/>
1242
+ <ref name="del"/>
1243
+ <ref name="span"/>
1244
+ </choice>
1245
+ </define>
1246
+ <define name="add">
1247
+ <element name="add">
1248
+ <choice>
1249
+ <ref name="PureTextElement"/>
1250
+ <ref name="eref"/>
1251
+ <ref name="stem"/>
1252
+ <ref name="keyword"/>
1253
+ <ref name="xref"/>
1254
+ <ref name="hyperlink"/>
1255
+ </choice>
1256
+ </element>
1257
+ </define>
1258
+ <define name="del">
1259
+ <element name="del">
1260
+ <choice>
1261
+ <ref name="PureTextElement"/>
1262
+ <ref name="eref"/>
1263
+ <ref name="stem"/>
1264
+ <ref name="keyword"/>
1265
+ <ref name="xref"/>
1266
+ <ref name="hyperlink"/>
1267
+ </choice>
1268
+ </element>
1269
+ </define>
1270
+ <define name="span">
1271
+ <element name="span">
1272
+ <attribute name="class"/>
1273
+ <oneOrMore>
1274
+ <ref name="TextElement"/>
1275
+ </oneOrMore>
1276
+ </element>
1277
+ </define>
1278
+ <define name="concept">
1279
+ <element name="concept">
1280
+ <optional>
1281
+ <attribute name="ital">
1282
+ <data type="boolean"/>
1283
+ </attribute>
1284
+ </optional>
1285
+ <optional>
1286
+ <attribute name="ref">
1287
+ <data type="boolean"/>
1288
+ </attribute>
1289
+ </optional>
1290
+ <optional>
1291
+ <attribute name="linkmention">
1292
+ <data type="boolean"/>
1293
+ </attribute>
1294
+ </optional>
1295
+ <optional>
1296
+ <attribute name="linkref">
1297
+ <data type="boolean"/>
1298
+ </attribute>
1299
+ </optional>
1300
+ <optional>
1301
+ <element name="refterm">
1302
+ <zeroOrMore>
1303
+ <choice>
1304
+ <ref name="PureTextElement"/>
1305
+ <ref name="stem"/>
1306
+ </choice>
1307
+ </zeroOrMore>
1308
+ </element>
1309
+ </optional>
1310
+ <optional>
1311
+ <element name="renderterm">
1312
+ <zeroOrMore>
1313
+ <choice>
1314
+ <ref name="PureTextElement"/>
1315
+ <ref name="stem"/>
1316
+ </choice>
1317
+ </zeroOrMore>
1318
+ </element>
1319
+ </optional>
1320
+ <choice>
1321
+ <ref name="eref"/>
1322
+ <ref name="xref"/>
1323
+ <ref name="termref"/>
1324
+ </choice>
1325
+ </element>
1326
+ </define>
1327
+ <define name="BasicBlock" combine="choice">
1328
+ <choice>
1329
+ <ref name="requirement"/>
1330
+ <ref name="recommendation"/>
1331
+ <ref name="permission"/>
1332
+ <ref name="imagemap"/>
1333
+ <ref name="svgmap"/>
1334
+ <ref name="inputform"/>
1335
+ <ref name="toc"/>
1336
+ <ref name="passthrough"/>
1337
+ </choice>
1338
+ </define>
1339
+ <define name="toc">
1340
+ <element name="toc">
1341
+ <ref name="ul"/>
1342
+ </element>
1343
+ </define>
1344
+ <define name="passthrough">
1345
+ <element name="passthrough">
1346
+ <optional>
1347
+ <attribute name="formats"/>
1348
+ </optional>
1349
+ <text/>
1350
+ </element>
1351
+ </define>
1352
+ <define name="inputform">
1353
+ <element name="form">
1354
+ <attribute name="id">
1355
+ <data type="ID"/>
1356
+ </attribute>
1357
+ <attribute name="name"/>
1358
+ <attribute name="action"/>
1359
+ <optional>
1360
+ <attribute name="class"/>
1361
+ </optional>
1362
+ <optional>
1363
+ <attribute name="tag"/>
1364
+ </optional>
1365
+ <optional>
1366
+ <attribute name="multilingual-rendering">
1367
+ <ref name="MultilingualRenderingType"/>
1368
+ </attribute>
1369
+ </optional>
1370
+ <zeroOrMore>
1371
+ <choice>
1372
+ <ref name="TextElement"/>
1373
+ <ref name="FormInput"/>
1374
+ </choice>
1375
+ </zeroOrMore>
1376
+ </element>
1377
+ </define>
1378
+ <define name="FormInput">
1379
+ <choice>
1380
+ <ref name="input"/>
1381
+ <ref name="formlabel"/>
1382
+ <ref name="select"/>
1383
+ <ref name="textarea"/>
1384
+ </choice>
1385
+ </define>
1386
+ <define name="InputType">
1387
+ <choice>
1388
+ <value>button</value>
1389
+ <value>checkbox</value>
1390
+ <value>date</value>
1391
+ <value>file</value>
1392
+ <value>password</value>
1393
+ <value>radio</value>
1394
+ <value>submit</value>
1395
+ <value>text</value>
1396
+ </choice>
1397
+ </define>
1398
+ <define name="input">
1399
+ <element name="input">
1400
+ <attribute name="type">
1401
+ <ref name="InputType"/>
1402
+ </attribute>
1403
+ <optional>
1404
+ <attribute name="checked">
1405
+ <data type="boolean"/>
1406
+ </attribute>
1407
+ </optional>
1408
+ <optional>
1409
+ <attribute name="disabled">
1410
+ <data type="boolean"/>
1411
+ </attribute>
1412
+ </optional>
1413
+ <optional>
1414
+ <attribute name="readonly">
1415
+ <data type="boolean"/>
1416
+ </attribute>
1417
+ </optional>
1418
+ <optional>
1419
+ <attribute name="maxlength">
1420
+ <data type="int"/>
1421
+ </attribute>
1422
+ </optional>
1423
+ <optional>
1424
+ <attribute name="minlength">
1425
+ <data type="int"/>
1426
+ </attribute>
1427
+ </optional>
1428
+ <optional>
1429
+ <attribute name="name"/>
1430
+ </optional>
1431
+ <optional>
1432
+ <attribute name="value"/>
1433
+ </optional>
1434
+ <optional>
1435
+ <attribute name="id">
1436
+ <data type="ID"/>
1437
+ </attribute>
1438
+ </optional>
1439
+ </element>
1440
+ </define>
1441
+ <define name="formlabel">
1442
+ <element name="label">
1443
+ <attribute name="for">
1444
+ <data type="IDREF"/>
1445
+ </attribute>
1446
+ <zeroOrMore>
1447
+ <ref name="PureTextElement"/>
1448
+ </zeroOrMore>
1449
+ </element>
1450
+ </define>
1451
+ <define name="select">
1452
+ <element name="select">
1453
+ <optional>
1454
+ <attribute name="name"/>
1455
+ </optional>
1456
+ <optional>
1457
+ <attribute name="value"/>
1458
+ </optional>
1459
+ <optional>
1460
+ <attribute name="id">
1461
+ <data type="ID"/>
1462
+ </attribute>
1463
+ </optional>
1464
+ <optional>
1465
+ <attribute name="disabled">
1466
+ <data type="boolean"/>
1467
+ </attribute>
1468
+ </optional>
1469
+ <optional>
1470
+ <attribute name="multiple">
1471
+ <data type="boolean"/>
1472
+ </attribute>
1473
+ </optional>
1474
+ <optional>
1475
+ <attribute name="size">
1476
+ <data type="int"/>
1477
+ </attribute>
1478
+ </optional>
1479
+ <oneOrMore>
1480
+ <ref name="option"/>
1481
+ </oneOrMore>
1482
+ </element>
1483
+ </define>
1484
+ <define name="option">
1485
+ <element name="option">
1486
+ <optional>
1487
+ <attribute name="disabled">
1488
+ <data type="boolean"/>
1489
+ </attribute>
1490
+ </optional>
1491
+ <optional>
1492
+ <attribute name="value"/>
1493
+ </optional>
1494
+ <zeroOrMore>
1495
+ <ref name="PureTextElement"/>
1496
+ </zeroOrMore>
1497
+ </element>
1498
+ </define>
1499
+ <define name="textarea">
1500
+ <element name="textarea">
1501
+ <optional>
1502
+ <attribute name="name"/>
1503
+ </optional>
1504
+ <optional>
1505
+ <attribute name="value"/>
1506
+ </optional>
1507
+ <optional>
1508
+ <attribute name="id">
1509
+ <data type="ID"/>
1510
+ </attribute>
1511
+ </optional>
1512
+ <optional>
1513
+ <attribute name="rows">
1514
+ <data type="int"/>
1515
+ </attribute>
1516
+ </optional>
1517
+ <optional>
1518
+ <attribute name="cols">
1519
+ <data type="int"/>
1520
+ </attribute>
1521
+ </optional>
1522
+ </element>
1523
+ </define>
1524
+ <define name="bibliography">
1525
+ <element name="bibliography">
1526
+ <oneOrMore>
1527
+ <choice>
1528
+ <ref name="references"/>
1529
+ <ref name="reference-clause"/>
1530
+ </choice>
1531
+ </oneOrMore>
1532
+ </element>
1533
+ </define>
1534
+ <define name="reference-clause">
1535
+ <element name="clause">
1536
+ <optional>
1537
+ <attribute name="id">
1538
+ <data type="ID"/>
1539
+ </attribute>
1540
+ </optional>
1541
+ <optional>
1542
+ <attribute name="language"/>
1543
+ </optional>
1544
+ <optional>
1545
+ <attribute name="script"/>
1546
+ </optional>
1547
+ <optional>
1548
+ <attribute name="inline-header">
1549
+ <data type="boolean"/>
1550
+ </attribute>
1551
+ </optional>
1552
+ <optional>
1553
+ <attribute name="number"/>
1554
+ </optional>
1555
+ <optional>
1556
+ <attribute name="obligation">
1557
+ <choice>
1558
+ <value>normative</value>
1559
+ <value>informative</value>
1560
+ </choice>
1561
+ </attribute>
1562
+ </optional>
1563
+ <optional>
1564
+ <ref name="section-title"/>
1565
+ </optional>
1566
+ <zeroOrMore>
1567
+ <ref name="BasicBlock"/>
1568
+ </zeroOrMore>
1569
+ <choice>
1570
+ <oneOrMore>
1571
+ <ref name="reference-clause"/>
1572
+ </oneOrMore>
1573
+ <zeroOrMore>
1574
+ <ref name="references"/>
1575
+ </zeroOrMore>
1576
+ </choice>
1577
+ </element>
1578
+ </define>
1579
+ <define name="editorialgroup">
1580
+ <element name="editorialgroup">
1581
+ <oneOrMore>
1582
+ <ref name="technical-committee"/>
1583
+ </oneOrMore>
1584
+ </element>
1585
+ </define>
1586
+ <define name="technical-committee">
1587
+ <element name="technical-committee">
1588
+ <ref name="IsoWorkgroup"/>
1589
+ </element>
1590
+ </define>
1591
+ <define name="IsoWorkgroup">
1592
+ <optional>
1593
+ <attribute name="number"/>
1594
+ </optional>
1595
+ <optional>
1596
+ <attribute name="type"/>
1597
+ </optional>
1598
+ <optional>
1599
+ <attribute name="identifier"/>
1600
+ </optional>
1601
+ <optional>
1602
+ <attribute name="prefix"/>
1603
+ </optional>
1604
+ <text/>
1605
+ </define>
1606
+ <define name="ics">
1607
+ <element name="ics">
1608
+ <element name="code">
1609
+ <text/>
1610
+ </element>
1611
+ <optional>
1612
+ <element name="text">
1613
+ <text/>
1614
+ </element>
1615
+ </optional>
1616
+ </element>
1617
+ </define>
1618
+ <define name="standard-document">
1619
+ <element name="standard-document">
1620
+ <attribute name="version"/>
1621
+ <attribute name="type">
1622
+ <choice>
1623
+ <value>semantic</value>
1624
+ <value>presentation</value>
1625
+ </choice>
1626
+ </attribute>
1627
+ <ref name="bibdata"/>
1628
+ <optional>
1629
+ <ref name="misccontainer"/>
1630
+ </optional>
1631
+ <optional>
1632
+ <ref name="boilerplate"/>
1633
+ </optional>
1634
+ <optional>
1635
+ <ref name="preface"/>
1636
+ </optional>
1637
+ <ref name="sections"/>
1638
+ <zeroOrMore>
1639
+ <ref name="annex"/>
1640
+ </zeroOrMore>
1641
+ <optional>
1642
+ <ref name="bibliography"/>
1643
+ </optional>
1644
+ <zeroOrMore>
1645
+ <ref name="indexsect"/>
1646
+ </zeroOrMore>
1647
+ </element>
1648
+ </define>
1649
+ <define name="misccontainer">
1650
+ <element name="misc-container">
1651
+ <oneOrMore>
1652
+ <ref name="AnyElement"/>
1653
+ </oneOrMore>
1654
+ </element>
1655
+ </define>
1656
+ <define name="preface">
1657
+ <element name="preface">
1658
+ <oneOrMore>
1659
+ <choice>
1660
+ <ref name="content"/>
1661
+ <ref name="abstract"/>
1662
+ <ref name="foreword"/>
1663
+ <ref name="introduction"/>
1664
+ <ref name="acknowledgements"/>
1665
+ </choice>
1666
+ </oneOrMore>
1667
+ </element>
1668
+ </define>
1669
+ <define name="foreword">
1670
+ <element name="foreword">
1671
+ <ref name="Content-Section"/>
1672
+ </element>
1673
+ </define>
1674
+ <define name="introduction">
1675
+ <element name="introduction">
1676
+ <ref name="Content-Section"/>
1677
+ </element>
1678
+ </define>
1679
+ <define name="indexsect">
1680
+ <element name="indexsect">
1681
+ <ref name="Content-Section"/>
1682
+ </element>
1683
+ </define>
1684
+ <define name="boilerplate">
1685
+ <element name="boilerplate">
1686
+ <optional>
1687
+ <ref name="copyright-statement"/>
1688
+ </optional>
1689
+ <optional>
1690
+ <ref name="license-statement"/>
1691
+ </optional>
1692
+ <optional>
1693
+ <ref name="legal-statement"/>
1694
+ </optional>
1695
+ <optional>
1696
+ <ref name="feedback-statement"/>
1697
+ </optional>
1698
+ </element>
1699
+ </define>
1700
+ <define name="copyright-statement">
1701
+ <element name="copyright-statement">
1702
+ <ref name="Content-Section"/>
1703
+ </element>
1704
+ </define>
1705
+ <define name="license-statement">
1706
+ <element name="license-statement">
1707
+ <ref name="Content-Section"/>
1708
+ </element>
1709
+ </define>
1710
+ <define name="legal-statement">
1711
+ <element name="legal-statement">
1712
+ <ref name="Content-Section"/>
1713
+ </element>
1714
+ </define>
1715
+ <define name="feedback-statement">
1716
+ <element name="feedback-statement">
1717
+ <ref name="Content-Section"/>
1718
+ </element>
1719
+ </define>
1720
+ <define name="definitions">
1721
+ <element name="definitions">
1722
+ <optional>
1723
+ <attribute name="id">
1724
+ <data type="ID"/>
1725
+ </attribute>
1726
+ </optional>
1727
+ <optional>
1728
+ <attribute name="language"/>
1729
+ </optional>
1730
+ <optional>
1731
+ <attribute name="script"/>
1732
+ </optional>
1733
+ <optional>
1734
+ <attribute name="type"/>
1735
+ </optional>
1736
+ <optional>
1737
+ <attribute name="obligation">
1738
+ <choice>
1739
+ <value>normative</value>
1740
+ <value>informative</value>
1741
+ </choice>
1742
+ </attribute>
1743
+ </optional>
1744
+ <optional>
1745
+ <ref name="section-title"/>
1746
+ </optional>
1747
+ <oneOrMore>
1748
+ <zeroOrMore>
1749
+ <ref name="BasicBlock"/>
1750
+ </zeroOrMore>
1751
+ <ref name="dl"/>
1752
+ </oneOrMore>
1753
+ </element>
1754
+ </define>
1755
+ <define name="content">
1756
+ <element name="clause">
1757
+ <ref name="Content-Section"/>
1758
+ </element>
1759
+ </define>
1760
+ <define name="abstract">
1761
+ <element name="abstract">
1762
+ <ref name="Content-Section"/>
1763
+ </element>
1764
+ </define>
1765
+ <define name="acknowledgements">
1766
+ <element name="acknowledgements">
1767
+ <ref name="Content-Section"/>
1768
+ </element>
1769
+ </define>
1770
+ <define name="content-subsection">
1771
+ <element name="clause">
1772
+ <ref name="Content-Section"/>
1773
+ </element>
1774
+ </define>
1775
+ <define name="Content-Section">
1776
+ <optional>
1777
+ <attribute name="id">
1778
+ <data type="ID"/>
1779
+ </attribute>
1780
+ </optional>
1781
+ <optional>
1782
+ <attribute name="language"/>
1783
+ </optional>
1784
+ <optional>
1785
+ <attribute name="script"/>
1786
+ </optional>
1787
+ <optional>
1788
+ <attribute name="inline-header">
1789
+ <data type="boolean"/>
1790
+ </attribute>
1791
+ </optional>
1792
+ <optional>
1793
+ <attribute name="obligation">
1794
+ <choice>
1795
+ <value>normative</value>
1796
+ <value>informative</value>
1797
+ </choice>
1798
+ </attribute>
1799
+ </optional>
1800
+ <optional>
1801
+ <attribute name="number"/>
1802
+ </optional>
1803
+ <optional>
1804
+ <attribute name="type"/>
1805
+ </optional>
1806
+ <optional>
1807
+ <ref name="section-title"/>
1808
+ </optional>
1809
+ <group>
1810
+ <zeroOrMore>
1811
+ <ref name="BasicBlock"/>
1812
+ </zeroOrMore>
1813
+ <zeroOrMore>
1814
+ <ref name="content-subsection"/>
1815
+ </zeroOrMore>
1816
+ </group>
1817
+ </define>
1818
+ <define name="clause">
1819
+ <element name="clause">
1820
+ <ref name="Clause-Section"/>
1821
+ </element>
1822
+ </define>
1823
+ <define name="Clause-Section">
1824
+ <optional>
1825
+ <attribute name="id">
1826
+ <data type="ID"/>
1827
+ </attribute>
1828
+ </optional>
1829
+ <optional>
1830
+ <attribute name="language"/>
1831
+ </optional>
1832
+ <optional>
1833
+ <attribute name="script"/>
1834
+ </optional>
1835
+ <optional>
1836
+ <attribute name="inline-header">
1837
+ <data type="boolean"/>
1838
+ </attribute>
1839
+ </optional>
1840
+ <optional>
1841
+ <attribute name="obligation">
1842
+ <choice>
1843
+ <value>normative</value>
1844
+ <value>informative</value>
1845
+ </choice>
1846
+ </attribute>
1847
+ </optional>
1848
+ <optional>
1849
+ <attribute name="type"/>
1850
+ </optional>
1851
+ <optional>
1852
+ <attribute name="number"/>
1853
+ </optional>
1854
+ <optional>
1855
+ <ref name="section-title"/>
1856
+ </optional>
1857
+ <choice>
1858
+ <choice>
1859
+ <oneOrMore>
1860
+ <ref name="BasicBlock"/>
1861
+ </oneOrMore>
1862
+ <ref name="amend"/>
1863
+ </choice>
1864
+ <oneOrMore>
1865
+ <choice>
1866
+ <ref name="clause-subsection"/>
1867
+ <ref name="terms"/>
1868
+ <ref name="definitions"/>
1869
+ <ref name="floating-title"/>
1870
+ </choice>
1871
+ </oneOrMore>
1872
+ </choice>
1873
+ </define>
1874
+ <define name="Annex-Section">
1875
+ <optional>
1876
+ <attribute name="id">
1877
+ <data type="ID"/>
1878
+ </attribute>
1879
+ </optional>
1880
+ <optional>
1881
+ <attribute name="language"/>
1882
+ </optional>
1883
+ <optional>
1884
+ <attribute name="script"/>
1885
+ </optional>
1886
+ <optional>
1887
+ <attribute name="inline-header">
1888
+ <data type="boolean"/>
1889
+ </attribute>
1890
+ </optional>
1891
+ <optional>
1892
+ <attribute name="obligation">
1893
+ <choice>
1894
+ <value>normative</value>
1895
+ <value>informative</value>
1896
+ </choice>
1897
+ </attribute>
1898
+ </optional>
1899
+ <optional>
1900
+ <ref name="section-title"/>
1901
+ </optional>
1902
+ <group>
1903
+ <zeroOrMore>
1904
+ <ref name="BasicBlock"/>
1905
+ </zeroOrMore>
1906
+ <zeroOrMore>
1907
+ <choice>
1908
+ <ref name="annex-subsection"/>
1909
+ <ref name="terms"/>
1910
+ <ref name="definitions"/>
1911
+ <ref name="references"/>
1912
+ <ref name="floating-title"/>
1913
+ </choice>
1914
+ </zeroOrMore>
1915
+ </group>
1916
+ </define>
1917
+ <define name="clause-subsection">
1918
+ <element name="clause">
1919
+ <ref name="Clause-Section"/>
1920
+ </element>
1921
+ </define>
1922
+ <define name="annex-subsection">
1923
+ <element name="clause">
1924
+ <ref name="Annex-Section"/>
1925
+ </element>
1926
+ </define>
1927
+ <define name="annex">
1928
+ <element name="annex">
1929
+ <ref name="Annex-Section"/>
1930
+ </element>
1931
+ </define>
1932
+ <define name="terms">
1933
+ <element name="terms">
1934
+ <optional>
1935
+ <attribute name="id">
1936
+ <data type="ID"/>
1937
+ </attribute>
1938
+ </optional>
1939
+ <optional>
1940
+ <attribute name="language"/>
1941
+ </optional>
1942
+ <optional>
1943
+ <attribute name="script"/>
1944
+ </optional>
1945
+ <optional>
1946
+ <attribute name="type"/>
1947
+ </optional>
1948
+ <optional>
1949
+ <attribute name="number"/>
1950
+ </optional>
1951
+ <optional>
1952
+ <attribute name="obligation">
1953
+ <choice>
1954
+ <value>normative</value>
1955
+ <value>informative</value>
1956
+ </choice>
1957
+ </attribute>
1958
+ </optional>
1959
+ <optional>
1960
+ <ref name="section-title"/>
1961
+ </optional>
1962
+ <zeroOrMore>
1963
+ <ref name="BasicBlock"/>
1964
+ </zeroOrMore>
1965
+ <choice>
1966
+ <oneOrMore>
1967
+ <ref name="term"/>
1968
+ </oneOrMore>
1969
+ <group>
1970
+ <zeroOrMore>
1971
+ <ref name="terms"/>
1972
+ </zeroOrMore>
1973
+ <optional>
1974
+ <ref name="definitions"/>
1975
+ </optional>
1976
+ </group>
1977
+ </choice>
1978
+ </element>
1979
+ </define>
1980
+ <define name="term">
1981
+ <element name="term">
1982
+ <optional>
1983
+ <attribute name="id">
1984
+ <data type="ID"/>
1985
+ </attribute>
1986
+ </optional>
1987
+ <optional>
1988
+ <attribute name="language"/>
1989
+ </optional>
1990
+ <optional>
1991
+ <attribute name="script"/>
1992
+ </optional>
1993
+ <optional>
1994
+ <attribute name="tag"/>
1995
+ </optional>
1996
+ <optional>
1997
+ <attribute name="multilingual-rendering">
1998
+ <ref name="MultilingualRenderingType"/>
1999
+ </attribute>
2000
+ </optional>
2001
+ <oneOrMore>
2002
+ <ref name="preferred"/>
2003
+ </oneOrMore>
2004
+ <zeroOrMore>
2005
+ <ref name="admitted"/>
2006
+ </zeroOrMore>
2007
+ <zeroOrMore>
2008
+ <ref name="deprecates"/>
2009
+ </zeroOrMore>
2010
+ <zeroOrMore>
2011
+ <ref name="related"/>
2012
+ </zeroOrMore>
2013
+ <optional>
2014
+ <ref name="termdomain"/>
2015
+ </optional>
2016
+ <optional>
2017
+ <ref name="termsubject"/>
2018
+ </optional>
2019
+ <oneOrMore>
2020
+ <ref name="termdefinition"/>
2021
+ </oneOrMore>
2022
+ <zeroOrMore>
2023
+ <ref name="termnote"/>
2024
+ </zeroOrMore>
2025
+ <zeroOrMore>
2026
+ <ref name="termexample"/>
2027
+ </zeroOrMore>
2028
+ <zeroOrMore>
2029
+ <ref name="termsource"/>
2030
+ </zeroOrMore>
2031
+ </element>
2032
+ </define>
2033
+ <define name="preferred">
2034
+ <element name="preferred">
2035
+ <ref name="Designation"/>
2036
+ </element>
2037
+ </define>
2038
+ <define name="admitted">
2039
+ <element name="admitted">
2040
+ <ref name="Designation"/>
2041
+ </element>
2042
+ </define>
2043
+ <define name="related">
2044
+ <element name="related">
2045
+ <attribute name="type">
2046
+ <ref name="RelatedTermType"/>
2047
+ </attribute>
2048
+ <element name="preferred">
2049
+ <ref name="Designation"/>
2050
+ </element>
2051
+ <choice>
2052
+ <ref name="eref"/>
2053
+ <ref name="xref"/>
2054
+ <ref name="termref"/>
2055
+ </choice>
2056
+ </element>
2057
+ </define>
2058
+ <define name="RelatedTermType">
2059
+ <choice>
2060
+ <value>deprecates</value>
2061
+ <value>supersedes</value>
2062
+ <value>narrower</value>
2063
+ <value>broader</value>
2064
+ <value>equivalent</value>
2065
+ <value>compare</value>
2066
+ <value>contrast</value>
2067
+ <value>see</value>
2068
+ <value>seealso</value>
2069
+ </choice>
2070
+ </define>
2071
+ <define name="deprecates">
2072
+ <element name="deprecates">
2073
+ <ref name="Designation"/>
2074
+ </element>
2075
+ </define>
2076
+ <define name="Designation">
2077
+ <optional>
2078
+ <attribute name="absent">
2079
+ <data type="boolean"/>
2080
+ </attribute>
2081
+ </optional>
2082
+ <optional>
2083
+ <attribute name="geographic-area"/>
2084
+ </optional>
2085
+ <choice>
2086
+ <ref name="expression_designation"/>
2087
+ <ref name="letter_symbol_designation"/>
2088
+ <ref name="graphical_symbol_designation"/>
2089
+ </choice>
2090
+ <optional>
2091
+ <ref name="fieldofapplication"/>
2092
+ </optional>
2093
+ <optional>
2094
+ <ref name="usageinfo"/>
2095
+ </optional>
2096
+ <zeroOrMore>
2097
+ <ref name="termsource"/>
2098
+ </zeroOrMore>
2099
+ </define>
2100
+ <define name="fieldofapplication">
2101
+ <element name="field-of-application">
2102
+ <oneOrMore>
2103
+ <ref name="PureTextElement"/>
2104
+ </oneOrMore>
2105
+ </element>
2106
+ </define>
2107
+ <define name="usageinfo">
2108
+ <element name="usage-info">
2109
+ <oneOrMore>
2110
+ <ref name="PureTextElement"/>
2111
+ </oneOrMore>
2112
+ </element>
2113
+ </define>
2114
+ <define name="letter_symbol_designation">
2115
+ <element name="letter-symbol">
2116
+ <optional>
2117
+ <attribute name="isInternational">
2118
+ <data type="boolean"/>
2119
+ </attribute>
2120
+ </optional>
2121
+ <element name="name">
2122
+ <oneOrMore>
2123
+ <choice>
2124
+ <ref name="PureTextElement"/>
2125
+ <ref name="stem"/>
2126
+ </choice>
2127
+ </oneOrMore>
2128
+ </element>
2129
+ </element>
2130
+ </define>
2131
+ <define name="graphical_symbol_designation">
2132
+ <element name="graphical-symbol">
2133
+ <optional>
2134
+ <attribute name="isInternational">
2135
+ <data type="boolean"/>
2136
+ </attribute>
2137
+ </optional>
2138
+ <ref name="figure"/>
2139
+ </element>
2140
+ </define>
2141
+ <define name="expression_designation">
2142
+ <element name="expression">
2143
+ <optional>
2144
+ <attribute name="language">
2145
+ <a:documentation>ISO-639</a:documentation>
2146
+ </attribute>
2147
+ </optional>
2148
+ <optional>
2149
+ <attribute name="script">
2150
+ <a:documentation>ISO-15924</a:documentation>
2151
+ </attribute>
2152
+ </optional>
2153
+ <optional>
2154
+ <attribute name="type">
2155
+ <ref name="ExpressionDesignationType"/>
2156
+ </attribute>
2157
+ </optional>
2158
+ <optional>
2159
+ <attribute name="isInternational">
2160
+ <data type="boolean"/>
2161
+ </attribute>
2162
+ </optional>
2163
+ <element name="name">
2164
+ <zeroOrMore>
2165
+ <choice>
2166
+ <ref name="PureTextElement"/>
2167
+ <ref name="stem"/>
2168
+ <ref name="index"/>
2169
+ </choice>
2170
+ </zeroOrMore>
2171
+ </element>
2172
+ <optional>
2173
+ <element name="abbreviation-type">
2174
+ <ref name="AbbreviationType"/>
2175
+ </element>
2176
+ </optional>
2177
+ <optional>
2178
+ <element name="pronunciation">
2179
+ <ref name="LocalizedString"/>
2180
+ </element>
2181
+ </optional>
2182
+ <optional>
2183
+ <element name="grammar">
2184
+ <ref name="Grammar"/>
2185
+ </element>
2186
+ </optional>
2187
+ </element>
2188
+ </define>
2189
+ <define name="ExpressionDesignationType">
2190
+ <choice>
2191
+ <value>prefix</value>
2192
+ <value>suffix</value>
2193
+ <value>abbreviation</value>
2194
+ <value>full</value>
2195
+ </choice>
2196
+ </define>
2197
+ <define name="AbbreviationType">
2198
+ <choice>
2199
+ <value>truncation</value>
2200
+ <value>acronym</value>
2201
+ <value>initialism</value>
2202
+ </choice>
2203
+ </define>
2204
+ <define name="Grammar">
2205
+ <zeroOrMore>
2206
+ <element name="gender">
2207
+ <ref name="GrammarGender"/>
2208
+ </element>
2209
+ </zeroOrMore>
2210
+ <zeroOrMore>
2211
+ <element name="number">
2212
+ <ref name="GrammarNumber"/>
2213
+ </element>
2214
+ </zeroOrMore>
2215
+ <optional>
2216
+ <element name="isPreposition">
2217
+ <data type="boolean"/>
2218
+ </element>
2219
+ </optional>
2220
+ <optional>
2221
+ <element name="isParticiple">
2222
+ <data type="boolean"/>
2223
+ </element>
2224
+ </optional>
2225
+ <optional>
2226
+ <element name="isAdjective">
2227
+ <data type="boolean"/>
2228
+ </element>
2229
+ </optional>
2230
+ <optional>
2231
+ <element name="isVerb">
2232
+ <data type="boolean"/>
2233
+ </element>
2234
+ </optional>
2235
+ <optional>
2236
+ <element name="isAdverb">
2237
+ <data type="boolean"/>
2238
+ </element>
2239
+ </optional>
2240
+ <optional>
2241
+ <element name="isNoun">
2242
+ <data type="boolean"/>
2243
+ </element>
2244
+ </optional>
2245
+ <zeroOrMore>
2246
+ <element name="grammar-value">
2247
+ <text/>
2248
+ </element>
2249
+ </zeroOrMore>
2250
+ </define>
2251
+ <define name="GrammarGender">
2252
+ <choice>
2253
+ <value>masculine</value>
2254
+ <value>feminine</value>
2255
+ <value>neuter</value>
2256
+ <value>common</value>
2257
+ </choice>
2258
+ </define>
2259
+ <define name="GrammarNumber">
2260
+ <choice>
2261
+ <value>singular</value>
2262
+ <value>dual</value>
2263
+ <value>plural</value>
2264
+ </choice>
2265
+ </define>
2266
+ <define name="termdomain">
2267
+ <element name="domain">
2268
+ <oneOrMore>
2269
+ <ref name="TextElement"/>
2270
+ </oneOrMore>
2271
+ </element>
2272
+ </define>
2273
+ <define name="termsubject">
2274
+ <element name="subject">
2275
+ <oneOrMore>
2276
+ <ref name="TextElement"/>
2277
+ </oneOrMore>
2278
+ </element>
2279
+ </define>
2280
+ <define name="termdefinition">
2281
+ <element name="definition">
2282
+ <choice>
2283
+ <ref name="verbaldefinition"/>
2284
+ <ref name="nonverbalrep"/>
2285
+ <group>
2286
+ <ref name="verbaldefinition"/>
2287
+ <ref name="nonverbalrep"/>
2288
+ </group>
2289
+ </choice>
2290
+ </element>
2291
+ </define>
2292
+ <define name="verbaldefinition">
2293
+ <element name="verbal-definition">
2294
+ <oneOrMore>
2295
+ <choice>
2296
+ <ref name="paragraph"/>
2297
+ <ref name="dl"/>
2298
+ <ref name="ol"/>
2299
+ <ref name="ul"/>
2300
+ <ref name="table"/>
2301
+ <ref name="figure"/>
2302
+ <ref name="formula"/>
2303
+ </choice>
2304
+ </oneOrMore>
2305
+ <zeroOrMore>
2306
+ <ref name="termsource"/>
2307
+ </zeroOrMore>
2308
+ </element>
2309
+ </define>
2310
+ <define name="nonverbalrep">
2311
+ <element name="non-verbal-representation">
2312
+ <oneOrMore>
2313
+ <choice>
2314
+ <ref name="table"/>
2315
+ <ref name="figure"/>
2316
+ <ref name="formula"/>
2317
+ </choice>
2318
+ </oneOrMore>
2319
+ <zeroOrMore>
2320
+ <ref name="termsource"/>
2321
+ </zeroOrMore>
2322
+ </element>
2323
+ </define>
2324
+ <define name="termnote">
2325
+ <element name="termnote">
2326
+ <attribute name="id">
2327
+ <data type="ID"/>
2328
+ </attribute>
2329
+ <optional>
2330
+ <attribute name="unnumbered">
2331
+ <data type="boolean"/>
2332
+ </attribute>
2333
+ </optional>
2334
+ <optional>
2335
+ <attribute name="number"/>
2336
+ </optional>
2337
+ <optional>
2338
+ <attribute name="subsequence"/>
2339
+ </optional>
2340
+ <optional>
2341
+ <attribute name="keep-with-next">
2342
+ <data type="boolean"/>
2343
+ </attribute>
2344
+ </optional>
2345
+ <optional>
2346
+ <attribute name="keep-lines-together">
2347
+ <data type="boolean"/>
2348
+ </attribute>
2349
+ </optional>
2350
+ <optional>
2351
+ <attribute name="tag"/>
2352
+ </optional>
2353
+ <optional>
2354
+ <attribute name="multilingual-rendering">
2355
+ <ref name="MultilingualRenderingType"/>
2356
+ </attribute>
2357
+ </optional>
2358
+ <oneOrMore>
2359
+ <choice>
2360
+ <ref name="paragraph"/>
2361
+ <ref name="ul"/>
2362
+ <ref name="ol"/>
2363
+ <ref name="dl"/>
2364
+ <ref name="formula"/>
2365
+ </choice>
2366
+ </oneOrMore>
2367
+ </element>
2368
+ </define>
2369
+ <define name="termexample">
2370
+ <element name="termexample">
2371
+ <attribute name="id">
2372
+ <data type="ID"/>
2373
+ </attribute>
2374
+ <optional>
2375
+ <attribute name="keep-with-next">
2376
+ <data type="boolean"/>
2377
+ </attribute>
2378
+ </optional>
2379
+ <optional>
2380
+ <attribute name="keep-lines-together">
2381
+ <data type="boolean"/>
2382
+ </attribute>
2383
+ </optional>
2384
+ <optional>
2385
+ <attribute name="tag"/>
2386
+ </optional>
2387
+ <optional>
2388
+ <attribute name="multilingual-rendering">
2389
+ <ref name="MultilingualRenderingType"/>
2390
+ </attribute>
2391
+ </optional>
2392
+ <oneOrMore>
2393
+ <choice>
2394
+ <ref name="formula"/>
2395
+ <ref name="ul"/>
2396
+ <ref name="ol"/>
2397
+ <ref name="dl"/>
2398
+ <ref name="quote"/>
2399
+ <ref name="sourcecode"/>
2400
+ <ref name="paragraph"/>
2401
+ <ref name="figure"/>
2402
+ </choice>
2403
+ </oneOrMore>
2404
+ </element>
2405
+ </define>
2406
+ <define name="termsource">
2407
+ <element name="termsource">
2408
+ <attribute name="status">
2409
+ <choice>
2410
+ <value>identical</value>
2411
+ <value>modified</value>
2412
+ </choice>
2413
+ </attribute>
2414
+ <attribute name="type">
2415
+ <choice>
2416
+ <value>authoritative</value>
2417
+ <value>lineage</value>
2418
+ </choice>
2419
+ </attribute>
2420
+ <ref name="origin"/>
2421
+ <optional>
2422
+ <ref name="modification"/>
2423
+ </optional>
2424
+ </element>
2425
+ </define>
2426
+ <define name="origin">
2427
+ <element name="origin">
2428
+ <choice>
2429
+ <ref name="erefType"/>
2430
+ <ref name="termref"/>
2431
+ </choice>
2432
+ </element>
2433
+ </define>
2434
+ <define name="modification">
2435
+ <element name="modification">
2436
+ <ref name="paragraph"/>
2437
+ </element>
2438
+ </define>
2439
+ <define name="termref">
2440
+ <element name="termref">
2441
+ <attribute name="base"/>
2442
+ <attribute name="target"/>
2443
+ <optional>
2444
+ <text/>
2445
+ </optional>
2446
+ </element>
2447
+ </define>
2448
+ <define name="structuredidentifier">
2449
+ <element name="structuredidentifier">
2450
+ <optional>
2451
+ <attribute name="type"/>
2452
+ </optional>
2453
+ <oneOrMore>
2454
+ <element name="agency">
2455
+ <text/>
2456
+ </element>
2457
+ </oneOrMore>
2458
+ <optional>
2459
+ <element name="class">
2460
+ <text/>
2461
+ </element>
2462
+ </optional>
2463
+ <element name="docnumber">
2464
+ <text/>
2465
+ </element>
2466
+ <optional>
2467
+ <element name="partnumber">
2468
+ <text/>
2469
+ </element>
2470
+ </optional>
2471
+ <optional>
2472
+ <element name="edition">
2473
+ <text/>
2474
+ </element>
2475
+ </optional>
2476
+ <optional>
2477
+ <element name="version">
2478
+ <text/>
2479
+ </element>
2480
+ </optional>
2481
+ <optional>
2482
+ <element name="supplementtype">
2483
+ <text/>
2484
+ </element>
2485
+ </optional>
2486
+ <optional>
2487
+ <element name="supplementnumber">
2488
+ <text/>
2489
+ </element>
2490
+ </optional>
2491
+ <optional>
2492
+ <element name="language">
2493
+ <text/>
2494
+ </element>
2495
+ </optional>
2496
+ <optional>
2497
+ <element name="year">
2498
+ <text/>
2499
+ </element>
2500
+ </optional>
2501
+ </element>
2502
+ </define>
2503
+ <define name="term-clause">
2504
+ <element name="clause">
2505
+ <optional>
2506
+ <attribute name="id">
2507
+ <data type="ID"/>
2508
+ </attribute>
2509
+ </optional>
2510
+ <optional>
2511
+ <attribute name="language"/>
2512
+ </optional>
2513
+ <optional>
2514
+ <attribute name="script"/>
2515
+ </optional>
2516
+ <optional>
2517
+ <attribute name="inline-header">
2518
+ <data type="boolean"/>
2519
+ </attribute>
2520
+ </optional>
2521
+ <optional>
2522
+ <attribute name="obligation">
2523
+ <choice>
2524
+ <value>normative</value>
2525
+ <value>informative</value>
2526
+ </choice>
2527
+ </attribute>
2528
+ </optional>
2529
+ <optional>
2530
+ <ref name="section-title"/>
2531
+ </optional>
2532
+ <zeroOrMore>
2533
+ <ref name="BasicBlock"/>
2534
+ </zeroOrMore>
2535
+ <zeroOrMore>
2536
+ <choice>
2537
+ <ref name="term-clause"/>
2538
+ <ref name="terms"/>
2539
+ <ref name="definitions"/>
2540
+ </choice>
2541
+ </zeroOrMore>
2542
+ </element>
2543
+ </define>
2544
+ <define name="termdocsource">
2545
+ <element name="termdocsource">
2546
+ <ref name="CitationType"/>
2547
+ </element>
2548
+ </define>
2549
+ <define name="amend">
2550
+ <element name="amend">
2551
+ <optional>
2552
+ <attribute name="id">
2553
+ <data type="ID"/>
2554
+ </attribute>
2555
+ </optional>
2556
+ <attribute name="change">
2557
+ <choice>
2558
+ <value>add</value>
2559
+ <value>modify</value>
2560
+ <value>delete</value>
2561
+ <value>replace</value>
2562
+ </choice>
2563
+ </attribute>
2564
+ <optional>
2565
+ <attribute name="path"/>
2566
+ </optional>
2567
+ <optional>
2568
+ <attribute name="path_end"/>
2569
+ </optional>
2570
+ <optional>
2571
+ <attribute name="title"/>
2572
+ </optional>
2573
+ <optional>
2574
+ <attribute name="tag"/>
2575
+ </optional>
2576
+ <optional>
2577
+ <attribute name="multilingual-rendering">
2578
+ <ref name="MultilingualRenderingType"/>
2579
+ </attribute>
2580
+ </optional>
2581
+ <optional>
2582
+ <element name="location">
2583
+ <zeroOrMore>
2584
+ <ref name="locality"/>
2585
+ </zeroOrMore>
2586
+ </element>
2587
+ </optional>
2588
+ <zeroOrMore>
2589
+ <ref name="autonumber"/>
2590
+ </zeroOrMore>
2591
+ <optional>
2592
+ <element name="description">
2593
+ <zeroOrMore>
2594
+ <ref name="BasicBlock"/>
2595
+ </zeroOrMore>
2596
+ </element>
2597
+ </optional>
2598
+ <optional>
2599
+ <element name="newcontent">
2600
+ <optional>
2601
+ <attribute name="id">
2602
+ <data type="ID"/>
2603
+ </attribute>
2604
+ </optional>
2605
+ <zeroOrMore>
2606
+ <ref name="BasicBlock"/>
2607
+ </zeroOrMore>
2608
+ </element>
2609
+ </optional>
2610
+ <optional>
2611
+ <element name="description">
2612
+ <zeroOrMore>
2613
+ <ref name="BasicBlock"/>
2614
+ </zeroOrMore>
2615
+ </element>
2616
+ </optional>
2617
+ </element>
2618
+ </define>
2619
+ <define name="autonumber">
2620
+ <element name="autonumber">
2621
+ <attribute name="type">
2622
+ <choice>
2623
+ <value>requirement</value>
2624
+ <value>recommendation</value>
2625
+ <value>permission</value>
2626
+ <value>table</value>
2627
+ <value>figure</value>
2628
+ <value>admonition</value>
2629
+ <value>formula</value>
2630
+ <value>sourcecode</value>
2631
+ <value>example</value>
2632
+ <value>note</value>
2633
+ </choice>
2634
+ </attribute>
2635
+ <text/>
2636
+ </element>
2637
+ </define>
2638
+ <define name="imagemap">
2639
+ <element name="imagemap">
2640
+ <optional>
2641
+ <attribute name="tag"/>
2642
+ </optional>
2643
+ <optional>
2644
+ <attribute name="multilingual-rendering">
2645
+ <ref name="MultilingualRenderingType"/>
2646
+ </attribute>
2647
+ </optional>
2648
+ <ref name="figure"/>
2649
+ <zeroOrMore>
2650
+ <element name="area">
2651
+ <attribute name="type">
2652
+ <choice>
2653
+ <value>rect</value>
2654
+ <value>circle</value>
2655
+ <value>ellipse</value>
2656
+ <value>poly</value>
2657
+ </choice>
2658
+ </attribute>
2659
+ <choice>
2660
+ <ref name="xref"/>
2661
+ <ref name="hyperlink"/>
2662
+ <ref name="eref"/>
2663
+ </choice>
2664
+ <oneOrMore>
2665
+ <element name="coords">
2666
+ <attribute name="x">
2667
+ <data type="float"/>
2668
+ </attribute>
2669
+ <attribute name="y">
2670
+ <data type="float"/>
2671
+ </attribute>
2672
+ </element>
2673
+ </oneOrMore>
2674
+ <optional>
2675
+ <element name="radius">
2676
+ <attribute name="x">
2677
+ <data type="float"/>
2678
+ </attribute>
2679
+ <optional>
2680
+ <attribute name="y">
2681
+ <data type="float"/>
2682
+ </attribute>
2683
+ </optional>
2684
+ </element>
2685
+ </optional>
2686
+ </element>
2687
+ </zeroOrMore>
2688
+ </element>
2689
+ </define>
2690
+ <define name="svgmap">
2691
+ <element name="svgmap">
2692
+ <optional>
2693
+ <attribute name="tag"/>
2694
+ </optional>
2695
+ <optional>
2696
+ <attribute name="multilingual-rendering">
2697
+ <ref name="MultilingualRenderingType"/>
2698
+ </attribute>
2699
+ </optional>
2700
+ <ref name="figure"/>
2701
+ <zeroOrMore>
2702
+ <element name="target">
2703
+ <attribute name="href">
2704
+ <data type="anyURI"/>
2705
+ </attribute>
2706
+ <choice>
2707
+ <ref name="xref"/>
2708
+ <ref name="hyperlink"/>
2709
+ <ref name="eref"/>
2710
+ </choice>
2711
+ </element>
2712
+ </zeroOrMore>
2713
+ </element>
2714
+ </define>
2715
+ <define name="ul_li">
2716
+ <element name="li">
2717
+ <optional>
2718
+ <attribute name="id">
2719
+ <data type="ID"/>
2720
+ </attribute>
2721
+ </optional>
2722
+ <optional>
2723
+ <attribute name="uncheckedcheckbox">
2724
+ <data type="boolean"/>
2725
+ </attribute>
2726
+ </optional>
2727
+ <optional>
2728
+ <attribute name="checkedcheckbox">
2729
+ <data type="boolean"/>
2730
+ </attribute>
2731
+ </optional>
2732
+ <oneOrMore>
2733
+ <ref name="BasicBlock"/>
2734
+ </oneOrMore>
2735
+ </element>
2736
+ </define>
2737
+ <define name="floating-title">
2738
+ <element name="floating-title">
2739
+ <attribute name="id">
2740
+ <data type="ID"/>
2741
+ </attribute>
2742
+ <attribute name="depth">
2743
+ <data type="int"/>
2744
+ </attribute>
2745
+ <zeroOrMore>
2746
+ <ref name="TextElement"/>
2747
+ </zeroOrMore>
2748
+ </element>
2749
+ </define>
2750
+ <define name="XrefBody">
2751
+ <zeroOrMore>
2752
+ <ref name="XrefTarget"/>
2753
+ </zeroOrMore>
2754
+ <oneOrMore>
2755
+ <ref name="PureTextElement"/>
2756
+ </oneOrMore>
2757
+ </define>
2758
+ <define name="XrefTarget">
2759
+ <element name="location">
2760
+ <attribute name="target">
2761
+ <data type="string">
2762
+ <param name="pattern">\i\c*|\c+#\c+</param>
2763
+ </data>
2764
+ </attribute>
2765
+ <attribute name="connective">
2766
+ <choice>
2767
+ <value>and</value>
2768
+ <value>or</value>
2769
+ <value>from</value>
2770
+ <value>to</value>
2771
+ <value/>
2772
+ </choice>
2773
+ </attribute>
2774
+ </element>
2775
+ </define>
2776
+ </grammar>