relaton-gb 0.6.8 → 0.7.0

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