metanorma-generic 2.7.1 → 2.7.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -17,200 +17,107 @@
17
17
  these elements; we just want one namespace for any child grammars
18
18
  of this.
19
19
  -->
20
- <!-- VERSION v1.3.3 -->
20
+ <!-- VERSION v1.4.0 -->
21
21
  <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">
22
22
  <include href="reqt.rng"/>
23
23
  <include href="basicdoc.rng">
24
24
  <define name="amend">
25
+ <a:documentation>Block expressing a machine-readable change in a document</a:documentation>
25
26
  <element name="amend">
26
27
  <ref name="BlockAttributes"/>
27
28
  <ref name="AmendType"/>
28
29
  <zeroOrMore>
29
- <ref name="autonumber"/>
30
+ <ref name="autonumber">
31
+ <a:documentation>Specification of how blocks of a given class should be autonumbered within an AmendBlock newContent element</a:documentation>
32
+ </ref>
30
33
  </zeroOrMore>
31
34
  </element>
32
35
  </define>
33
- <define name="AdmonitionAttr">
34
- <attribute name="type">
35
- <ref name="AdmonitionType"/>
36
- </attribute>
37
- <optional>
38
- <attribute name="class"/>
39
- </optional>
40
- <optional>
41
- <attribute name="uri">
42
- <data type="anyURI"/>
43
- </attribute>
44
- </optional>
45
- <optional>
46
- <attribute name="coverpage">
47
- <data type="boolean"/>
48
- </attribute>
49
- </optional>
50
- <optional>
51
- <attribute name="notag">
52
- <data type="boolean"/>
53
- </attribute>
54
- </optional>
36
+ <define name="index-primary">
37
+ <element name="primary">
38
+ <oneOrMore>
39
+ <choice>
40
+ <ref name="PureTextElement"/>
41
+ <ref name="stem"/>
42
+ </choice>
43
+ </oneOrMore>
44
+ </element>
55
45
  </define>
56
- <define name="AdmonitionType">
57
- <choice>
58
- <value>warning</value>
59
- <value>note</value>
60
- <value>tip</value>
61
- <value>important</value>
62
- <value>caution</value>
63
- <value>statement</value>
64
- <value>editorial</value>
65
- <value>box</value>
66
- </choice>
46
+ <define name="index-secondary">
47
+ <element name="secondary">
48
+ <oneOrMore>
49
+ <choice>
50
+ <ref name="PureTextElement"/>
51
+ <ref name="stem"/>
52
+ </choice>
53
+ </oneOrMore>
54
+ </element>
67
55
  </define>
68
- <define name="index">
69
- <element name="index">
70
- <optional>
71
- <attribute name="to">
72
- <data type="IDREF"/>
73
- </attribute>
74
- </optional>
75
- <element name="primary">
76
- <oneOrMore>
77
- <choice>
78
- <ref name="PureTextElement"/>
79
- <ref name="stem"/>
80
- </choice>
81
- </oneOrMore>
82
- </element>
83
- <optional>
84
- <element name="secondary">
85
- <oneOrMore>
86
- <choice>
87
- <ref name="PureTextElement"/>
88
- <ref name="stem"/>
89
- </choice>
90
- </oneOrMore>
91
- </element>
92
- </optional>
93
- <optional>
94
- <element name="tertiary">
95
- <oneOrMore>
96
- <choice>
97
- <ref name="PureTextElement"/>
98
- <ref name="stem"/>
99
- </choice>
100
- </oneOrMore>
101
- </element>
102
- </optional>
56
+ <define name="index-tertiary">
57
+ <element name="tertiary">
58
+ <oneOrMore>
59
+ <choice>
60
+ <ref name="PureTextElement"/>
61
+ <ref name="stem"/>
62
+ </choice>
63
+ </oneOrMore>
103
64
  </element>
104
65
  </define>
105
66
  <define name="section-title">
67
+ <a:documentation>Title(s) of a clause</a:documentation>
106
68
  <element name="title">
69
+ <a:documentation>Title proper for a clause</a:documentation>
107
70
  <zeroOrMore>
108
71
  <ref name="TextElement"/>
109
72
  </zeroOrMore>
110
73
  </element>
111
74
  <zeroOrMore>
112
75
  <element name="variant-title">
76
+ <a:documentation>Alternate title for a clause</a:documentation>
113
77
  <ref name="TypedTitleString"/>
114
78
  </element>
115
79
  </zeroOrMore>
116
80
  </define>
117
- <define name="hyperlink">
118
- <element name="link">
119
- <attribute name="target">
120
- <data type="anyURI"/>
121
- </attribute>
122
- <optional>
123
- <attribute name="type">
124
- <ref name="ReferenceFormat"/>
125
- </attribute>
126
- </optional>
127
- <optional>
128
- <attribute name="alt"/>
129
- </optional>
130
- <optional>
131
- <attribute name="update-type">
132
- <data type="boolean"/>
133
- </attribute>
134
- </optional>
135
- <optional>
136
- <attribute name="style"/>
137
- </optional>
138
- <oneOrMore>
139
- <ref name="PureTextElement"/>
140
- </oneOrMore>
141
- </element>
142
- </define>
143
- <define name="xref">
144
- <element name="xref">
145
- <ref name="XrefAttributes"/>
146
- <ref name="XrefBody"/>
147
- </element>
148
- </define>
149
- <define name="erefType">
150
- <optional>
151
- <attribute name="normative">
152
- <data type="boolean"/>
153
- </attribute>
154
- </optional>
155
- <attribute name="citeas"/>
156
- <optional>
157
- <attribute name="type">
158
- <ref name="ReferenceFormat"/>
159
- </attribute>
160
- </optional>
161
- <optional>
162
- <attribute name="alt"/>
163
- </optional>
164
- <optional>
165
- <attribute name="case">
166
- <choice>
167
- <value>capital</value>
168
- <value>lowercase</value>
169
- </choice>
170
- </attribute>
171
- </optional>
172
- <optional>
173
- <attribute name="droploc">
174
- <data type="boolean"/>
175
- </attribute>
176
- </optional>
177
- <optional>
178
- <attribute name="style"/>
179
- </optional>
180
- <ref name="CitationType"/>
181
- <oneOrMore>
182
- <ref name="PureTextElement"/>
183
- </oneOrMore>
184
- </define>
185
- <define name="UlAttr">
186
- <ref name="BlockAttributes"/>
187
- </define>
188
81
  <define name="UlBody">
189
82
  <optional>
190
- <ref name="tname"/>
83
+ <ref name="tname">
84
+ <a:documentation>Caption of list</a:documentation>
85
+ </ref>
191
86
  </optional>
192
87
  <oneOrMore>
193
- <ref name="ul_li"/>
88
+ <ref name="ul_li">
89
+ <a:documentation>List items</a:documentation>
90
+ </ref>
194
91
  </oneOrMore>
195
92
  <zeroOrMore>
196
- <ref name="note"/>
93
+ <ref name="note">
94
+ <a:documentation>Notes whose scope is the current block</a:documentation>
95
+ </ref>
197
96
  </zeroOrMore>
198
97
  </define>
199
98
  <define name="OlBody">
200
99
  <optional>
201
- <ref name="tname"/>
100
+ <ref name="tname">
101
+ <a:documentation>Caption of list</a:documentation>
102
+ </ref>
202
103
  </optional>
203
104
  <oneOrMore>
204
- <ref name="li"/>
105
+ <ref name="li">
106
+ <a:documentation>List items</a:documentation>
107
+ </ref>
205
108
  </oneOrMore>
206
109
  <zeroOrMore>
207
- <ref name="note"/>
110
+ <ref name="note">
111
+ <a:documentation>Notes whose scope is the current block</a:documentation>
112
+ </ref>
208
113
  </zeroOrMore>
209
114
  </define>
210
- <define name="OlAttr">
115
+ <define name="OlAttributes">
116
+ <a:documentation>NOTE: `start` attribute is not included by default, because of problems it raises with DOC output</a:documentation>
211
117
  <ref name="BlockAttributes"/>
212
118
  <optional>
213
119
  <attribute name="type">
120
+ <a:documentation>Type of numbering to be applied to the list items</a:documentation>
214
121
  <choice>
215
122
  <value>roman</value>
216
123
  <value>alphabet</value>
@@ -221,54 +128,63 @@
221
128
  </attribute>
222
129
  </optional>
223
130
  </define>
224
- <define name="DlAttr">
131
+ <define name="DlAttributes">
225
132
  <ref name="BlockAttributes"/>
226
133
  <optional>
227
134
  <attribute name="key">
135
+ <a:documentation>This definition list is the key of a figure or formula</a:documentation>
228
136
  <data type="boolean"/>
229
137
  </attribute>
230
138
  </optional>
231
139
  </define>
232
140
  <define name="DlBody">
233
141
  <optional>
234
- <ref name="tname"/>
142
+ <ref name="tname">
143
+ <a:documentation>Caption of the list</a:documentation>
144
+ </ref>
235
145
  </optional>
236
146
  <oneOrMore>
237
- <ref name="dt"/>
238
- <ref name="dd"/>
147
+ <group>
148
+ <a:documentation>Entry-Definition pair used to constitute a definition list</a:documentation>
149
+ <ref name="dt">
150
+ <a:documentation>Entry being defined in the definition</a:documentation>
151
+ </ref>
152
+ <ref name="dd">
153
+ <a:documentation>Definition of the entry</a:documentation>
154
+ </ref>
155
+ </group>
239
156
  </oneOrMore>
240
157
  <zeroOrMore>
241
- <ref name="note"/>
158
+ <ref name="note">
159
+ <a:documentation>Notes whose scope is the current block</a:documentation>
160
+ </ref>
242
161
  </zeroOrMore>
243
162
  </define>
244
163
  <define name="dt">
245
164
  <element name="dt">
246
- <ref name="OptionalId"/>
165
+ <ref name="OptionalId">
166
+ <a:documentation>Optional identifier for definition term (enabling crossreferencing of definitions)</a:documentation>
167
+ </ref>
247
168
  <zeroOrMore>
248
- <ref name="TextElement"/>
169
+ <ref name="TextElement">
170
+ <a:documentation>Entry being defined in the definition</a:documentation>
171
+ </ref>
249
172
  </zeroOrMore>
250
173
  </element>
251
174
  </define>
252
- <define name="ExampleAttr">
253
- <optional>
254
- <attribute name="unnumbered">
255
- <data type="boolean"/>
256
- </attribute>
257
- </optional>
258
- <optional>
259
- <attribute name="subsequence"/>
260
- </optional>
261
- <optional>
262
- <attribute name="number"/>
263
- </optional>
175
+ <define name="ExampleAttributes">
176
+ <ref name="NumberingAttributes"/>
264
177
  <ref name="BlockAttributes"/>
265
178
  </define>
266
179
  <define name="ExampleBody">
267
180
  <optional>
268
- <ref name="tname"/>
181
+ <ref name="tname">
182
+ <a:documentation>The caption of the example</a:documentation>
183
+ </ref>
269
184
  </optional>
270
185
  <oneOrMore>
271
186
  <choice>
187
+ <a:documentation>Content of the example</a:documentation>
272
188
  <ref name="formula"/>
273
189
  <ref name="ul"/>
274
190
  <ref name="ol"/>
@@ -280,201 +196,87 @@
280
196
  </choice>
281
197
  </oneOrMore>
282
198
  <zeroOrMore>
283
- <ref name="note"/>
199
+ <ref name="note">
200
+ <a:documentation>Notes whose scope is the current block</a:documentation>
201
+ </ref>
284
202
  </zeroOrMore>
285
203
  </define>
286
- <define name="TableAttr">
287
- <optional>
288
- <attribute name="unnumbered">
289
- <data type="boolean"/>
290
- </attribute>
291
- </optional>
292
- <optional>
293
- <attribute name="number"/>
294
- </optional>
295
- <optional>
296
- <attribute name="subsequence"/>
297
- </optional>
298
- <optional>
299
- <attribute name="alt"/>
300
- </optional>
301
- <optional>
302
- <attribute name="summary"/>
303
- </optional>
304
- <optional>
305
- <attribute name="uri">
306
- <data type="anyURI"/>
307
- </attribute>
308
- </optional>
309
- <optional>
310
- <attribute name="width"/>
311
- </optional>
312
- <ref name="BlockAttributes"/>
313
- </define>
314
204
  <define name="TableBody">
315
205
  <optional>
316
- <ref name="colgroup"/>
206
+ <ref name="colgroup">
207
+ <a:documentation>The widths of the columns in the table</a:documentation>
208
+ </ref>
317
209
  </optional>
318
210
  <optional>
319
- <ref name="tname"/>
211
+ <ref name="tname">
212
+ <a:documentation>Caption for the table</a:documentation>
213
+ </ref>
320
214
  </optional>
321
215
  <optional>
322
- <ref name="thead"/>
216
+ <ref name="thead">
217
+ <a:documentation>Table rows constituting the table header</a:documentation>
218
+ </ref>
323
219
  </optional>
324
- <ref name="tbody"/>
220
+ <ref name="tbody">
221
+ <a:documentation>Table rows constituting the table body</a:documentation>
222
+ </ref>
325
223
  <optional>
326
- <ref name="tfoot"/>
224
+ <ref name="tfoot">
225
+ <a:documentation>Table rows constituting the table footer</a:documentation>
226
+ </ref>
327
227
  </optional>
328
228
  <optional>
329
- <ref name="dl"/>
229
+ <ref name="dl">
230
+ <a:documentation>Definitions list defining any symbols used in the table</a:documentation>
231
+ </ref>
330
232
  </optional>
331
233
  <zeroOrMore>
332
- <ref name="table-note"/>
234
+ <ref name="table-note">
235
+ <a:documentation>Notes specific to this block</a:documentation>
236
+ </ref>
333
237
  </zeroOrMore>
334
- <zeroOrMore>
335
- <ref name="source"/>
336
- </zeroOrMore>
337
- </define>
338
- <define name="FigureAttr">
339
- <optional>
340
- <attribute name="unnumbered">
341
- <data type="boolean"/>
342
- </attribute>
343
- </optional>
344
- <optional>
345
- <attribute name="number"/>
346
- </optional>
347
- <optional>
348
- <attribute name="subsequence"/>
349
- </optional>
350
- <optional>
351
- <attribute name="class"/>
352
- </optional>
353
- <optional>
354
- <attribute name="width"/>
355
- </optional>
356
- <ref name="BlockAttributes"/>
357
- </define>
358
- <define name="FigureBody">
359
- <optional>
360
- <ref name="tname"/>
361
- </optional>
362
- <choice>
363
- <ref name="image"/>
364
- <ref name="video"/>
365
- <ref name="audio"/>
366
- <ref name="pre"/>
367
- <oneOrMore>
368
- <ref name="paragraph-with-footnote"/>
369
- </oneOrMore>
370
- <zeroOrMore>
371
- <ref name="figure"/>
372
- </zeroOrMore>
373
- </choice>
374
- <zeroOrMore>
375
- <ref name="fn"/>
376
- </zeroOrMore>
377
- <optional>
378
- <ref name="dl"/>
379
- </optional>
380
- <zeroOrMore>
381
- <ref name="note"/>
382
- </zeroOrMore>
383
- <zeroOrMore>
384
- <ref name="source"/>
385
- </zeroOrMore>
386
- </define>
387
- <define name="source">
388
- <element name="source">
389
- <attribute name="status">
390
- <ref name="SourceStatusType"/>
391
- </attribute>
392
- <ref name="origin"/>
393
- <optional>
394
- <ref name="modification"/>
395
- </optional>
396
- </element>
397
- </define>
398
- <define name="SourceAttr">
399
- <optional>
400
- <attribute name="unnumbered">
401
- <data type="boolean"/>
402
- </attribute>
403
- </optional>
404
- <optional>
405
- <attribute name="number"/>
406
- </optional>
407
- <optional>
408
- <attribute name="subsequence"/>
409
- </optional>
410
- <optional>
411
- <attribute name="lang"/>
412
- </optional>
413
- <ref name="BlockAttributes"/>
414
- <optional>
415
- <attribute name="linenums">
416
- <data type="boolean"/>
417
- </attribute>
418
- </optional>
238
+ <ref name="TermSource">
239
+ <a:documentation>A source for the table</a:documentation>
240
+ </ref>
419
241
  </define>
420
242
  <define name="SourceBody">
421
243
  <optional>
422
- <ref name="tname"/>
244
+ <ref name="tname">
245
+ <a:documentation>The caption of the block</a:documentation>
246
+ </ref>
423
247
  </optional>
424
248
  <oneOrMore>
425
249
  <choice>
426
- <text/>
427
- <ref name="callout"/>
428
- <ref name="xref"/>
429
- <ref name="eref"/>
250
+ <text>
251
+ <a:documentation>The computer code or other such text presented in the block, as a single unformatted string.
252
+ (The string should be treated as pre-formatted text, with whitespace treated as significant)</a:documentation>
253
+ </text>
254
+ <ref name="callout">
255
+ <a:documentation>Zero or more cross-references; these are intended to be embedded within the content string, and link to annotations</a:documentation>
256
+ </ref>
257
+ <ref name="xref">
258
+ <a:documentation>Hyperlink of code segment to another part of the document</a:documentation>
259
+ </ref>
260
+ <ref name="eref">
261
+ <a:documentation>Hyperlink of code segment to external bibliographic resource</a:documentation>
262
+ </ref>
430
263
  </choice>
431
264
  </oneOrMore>
432
265
  <zeroOrMore>
433
- <ref name="annotation"/>
266
+ <ref name="annotation">
267
+ <a:documentation>Annotations to the source code; each annotation consists of zero or more paragraphs,
268
+ and is intended to be referenced by a callout within the source code</a:documentation>
269
+ </ref>
434
270
  </zeroOrMore>
435
271
  <zeroOrMore>
436
- <ref name="note"/>
272
+ <ref name="note">
273
+ <a:documentation>Notes whose scope is the current block</a:documentation>
274
+ </ref>
437
275
  </zeroOrMore>
276
+ <ref name="TermSource">
277
+ <a:documentation>A source for the block</a:documentation>
278
+ </ref>
438
279
  </define>
439
- <define name="FormulaAttr">
440
- <optional>
441
- <attribute name="unnumbered">
442
- <data type="boolean"/>
443
- </attribute>
444
- </optional>
445
- <optional>
446
- <attribute name="number"/>
447
- </optional>
448
- <optional>
449
- <attribute name="subsequence"/>
450
- </optional>
451
- <optional>
452
- <attribute name="inequality">
453
- <data type="boolean"/>
454
- </attribute>
455
- </optional>
456
- <ref name="BlockAttributes"/>
457
- </define>
458
- <define name="ParagraphAttrs">
459
- <optional>
460
- <attribute name="align">
461
- <ref name="Alignments"/>
462
- </attribute>
463
- </optional>
464
- <optional>
465
- <attribute name="type"/>
466
- </optional>
467
- <ref name="BlockAttributes"/>
468
- </define>
469
- <define name="QuoteAttr">
470
- <optional>
471
- <attribute name="alignment">
472
- <ref name="Alignments"/>
473
- </attribute>
474
- </optional>
475
- <ref name="BlockAttributes"/>
476
- </define>
477
- <!-- TitleType = text -->
478
280
  <define name="sections">
479
281
  <element name="sections">
480
282
  <oneOrMore>
@@ -489,68 +291,39 @@
489
291
  </element>
490
292
  </define>
491
293
  <define name="references">
294
+ <a:documentation>Bibliography clause. It is used to collate references within the document, where
295
+ there could be one or more of such sections within a document. For example, some standardization documents differentiate
296
+ normative or informative references, some split references into sections organized by concept relevance.</a:documentation>
492
297
  <element name="references">
493
- <optional>
494
- <attribute name="id">
495
- <data type="ID"/>
496
- </attribute>
497
- </optional>
498
- <optional>
499
- <attribute name="obligation">
500
- <choice>
501
- <value>normative</value>
502
- <value>informative</value>
503
- </choice>
504
- </attribute>
505
- </optional>
506
- <attribute name="normative">
507
- <data type="boolean"/>
508
- </attribute>
298
+ <ref name="OptionalId"/>
299
+ <ref name="ReferencesAttributes"/>
509
300
  <optional>
510
301
  <ref name="section-title"/>
511
302
  </optional>
512
303
  <zeroOrMore>
513
- <ref name="BasicBlock"/>
304
+ <ref name="BasicBlock">
305
+ <a:documentation>Prefatory text</a:documentation>
306
+ </ref>
514
307
  </zeroOrMore>
515
308
  <zeroOrMore>
516
- <ref name="doc_bibitem"/>
309
+ <ref name="doc_bibitem">
310
+ <a:documentation>Bibliographic item cited in the document</a:documentation>
311
+ </ref>
517
312
  <zeroOrMore>
518
- <ref name="note"/>
313
+ <ref name="note">
314
+ <a:documentation>Annotation of the bibliographic item</a:documentation>
315
+ </ref>
519
316
  </zeroOrMore>
520
317
  </zeroOrMore>
521
318
  <zeroOrMore>
522
- <ref name="references"/>
319
+ <ref name="references">
320
+ <a:documentation>Recursive references section</a:documentation>
321
+ </ref>
523
322
  </zeroOrMore>
524
323
  </element>
525
324
  </define>
526
- <define name="NoteAttr">
527
- <optional>
528
- <attribute name="unnumbered">
529
- <data type="boolean"/>
530
- </attribute>
531
- </optional>
532
- <optional>
533
- <attribute name="number"/>
534
- </optional>
535
- <optional>
536
- <attribute name="subsequence"/>
537
- </optional>
538
- <optional>
539
- <attribute name="type"/>
540
- </optional>
541
- <optional>
542
- <attribute name="coverpage">
543
- <data type="boolean"/>
544
- </attribute>
545
- </optional>
546
- <optional>
547
- <attribute name="notag">
548
- <data type="boolean"/>
549
- </attribute>
550
- </optional>
551
- <ref name="BlockAttributes"/>
552
- </define>
553
325
  <define name="NoteBody">
326
+ <a:documentation>Content of note</a:documentation>
554
327
  <oneOrMore>
555
328
  <choice>
556
329
  <ref name="paragraph"/>
@@ -564,29 +337,16 @@
564
337
  </oneOrMore>
565
338
  </define>
566
339
  <define name="Basic-Section">
340
+ <a:documentation>Group of blocks within text, which is a leaf node in the hierarchical organisation of text (does not contain any sections of its own)</a:documentation>
341
+ <ref name="Basic-Section-Attributes"/>
567
342
  <optional>
568
- <attribute name="id">
569
- <data type="ID"/>
570
- </attribute>
571
- </optional>
572
- <optional>
573
- <attribute name="language"/>
574
- </optional>
575
- <optional>
576
- <attribute name="script"/>
577
- </optional>
578
- <optional>
579
- <attribute name="obligation">
580
- <choice>
581
- <value>normative</value>
582
- <value>informative</value>
583
- </choice>
584
- </attribute>
585
- </optional>
586
- <optional>
587
- <ref name="section-title"/>
343
+ <ref name="section-title">
344
+ <a:documentation>Title of the section</a:documentation>
345
+ </ref>
588
346
  </optional>
589
347
  <oneOrMore>
348
+ <a:documentation>Blocks, containing the textual content of the section
349
+ (but excluding subsections, which are only present in Hierarchical Sections)</a:documentation>
590
350
  <ref name="BasicBlock"/>
591
351
  </oneOrMore>
592
352
  </define>
@@ -615,12 +375,14 @@
615
375
  <choice>
616
376
  <zeroOrMore>
617
377
  <choice>
378
+ <a:documentation>Table cell is a block</a:documentation>
618
379
  <ref name="TextElement"/>
619
380
  <ref name="fn"/>
620
381
  </choice>
621
382
  </zeroOrMore>
622
383
  <oneOrMore>
623
384
  <choice>
385
+ <a:documentation>Table cell contains a block</a:documentation>
624
386
  <ref name="paragraph-with-footnote"/>
625
387
  <ref name="dl"/>
626
388
  <ref name="ul"/>
@@ -634,140 +396,28 @@
634
396
  <choice>
635
397
  <zeroOrMore>
636
398
  <choice>
399
+ <a:documentation>Table cell is a block</a:documentation>
637
400
  <ref name="TextElement"/>
638
401
  <ref name="fn"/>
639
402
  </choice>
640
403
  </zeroOrMore>
641
404
  <oneOrMore>
642
- <ref name="paragraph-with-footnote"/>
405
+ <ref name="paragraph-with-footnote">
406
+ <a:documentation>Table cell contains a block</a:documentation>
407
+ </ref>
643
408
  </oneOrMore>
644
409
  </choice>
645
410
  </define>
646
411
  <define name="table-note">
647
412
  <element name="note">
648
- <optional>
649
- <attribute name="id">
650
- <data type="ID"/>
651
- </attribute>
652
- </optional>
653
- <ref name="paragraph"/>
654
- </element>
655
- </define>
656
- <define name="stem">
657
- <element name="stem">
658
- <attribute name="type">
659
- <choice>
660
- <value>MathML</value>
661
- <value>AsciiMath</value>
662
- <value>LatexMath</value>
663
- </choice>
664
- </attribute>
665
- <optional>
666
- <attribute name="number-format"/>
667
- </optional>
668
- <attribute name="block">
669
- <data type="boolean"/>
670
- </attribute>
413
+ <ref name="OptionalId"/>
671
414
  <oneOrMore>
672
- <choice>
673
- <text/>
674
- <ref name="AnyElement"/>
675
- </choice>
415
+ <ref name="paragraph"/>
676
416
  </oneOrMore>
677
417
  </element>
678
418
  </define>
679
- <define name="em">
680
- <element name="em">
681
- <zeroOrMore>
682
- <choice>
683
- <ref name="PureTextElement"/>
684
- <ref name="stem"/>
685
- <ref name="index"/>
686
- <ref name="index-xref"/>
687
- <ref name="eref"/>
688
- <ref name="erefstack"/>
689
- <ref name="xref"/>
690
- <ref name="hyperlink"/>
691
- </choice>
692
- </zeroOrMore>
693
- </element>
694
- </define>
695
- <define name="strong">
696
- <element name="strong">
697
- <zeroOrMore>
698
- <choice>
699
- <ref name="PureTextElement"/>
700
- <ref name="stem"/>
701
- <ref name="index"/>
702
- <ref name="index-xref"/>
703
- <ref name="eref"/>
704
- <ref name="erefstack"/>
705
- <ref name="xref"/>
706
- <ref name="hyperlink"/>
707
- </choice>
708
- </zeroOrMore>
709
- </element>
710
- </define>
711
- <define name="tt">
712
- <element name="tt">
713
- <zeroOrMore>
714
- <choice>
715
- <ref name="PureTextElement"/>
716
- <ref name="index"/>
717
- <ref name="index-xref"/>
718
- <ref name="eref"/>
719
- <ref name="erefstack"/>
720
- <ref name="xref"/>
721
- <ref name="hyperlink"/>
722
- </choice>
723
- </zeroOrMore>
724
- </element>
725
- </define>
726
- <define name="keyword">
727
- <element name="keyword">
728
- <zeroOrMore>
729
- <choice>
730
- <ref name="PureTextElement"/>
731
- <ref name="index"/>
732
- <ref name="index-xref"/>
733
- </choice>
734
- </zeroOrMore>
735
- </element>
736
- </define>
737
- <define name="strike">
738
- <element name="strike">
739
- <zeroOrMore>
740
- <choice>
741
- <ref name="PureTextElement"/>
742
- <ref name="index"/>
743
- <ref name="index-xref"/>
744
- </choice>
745
- </zeroOrMore>
746
- </element>
747
- </define>
748
- <define name="underline">
749
- <element name="underline">
750
- <zeroOrMore>
751
- <choice>
752
- <ref name="PureTextElement"/>
753
- <ref name="index"/>
754
- <ref name="index-xref"/>
755
- </choice>
756
- </zeroOrMore>
757
- </element>
758
- </define>
759
- <define name="smallcap">
760
- <element name="smallcap">
761
- <zeroOrMore>
762
- <choice>
763
- <ref name="PureTextElement"/>
764
- <ref name="index"/>
765
- <ref name="index-xref"/>
766
- </choice>
767
- </zeroOrMore>
768
- </element>
769
- </define>
770
419
  <define name="sub">
420
+ <a:documentation>Subscript text. Corresponds to HTML `sub</a:documentation>
771
421
  <element name="sub">
772
422
  <zeroOrMore>
773
423
  <choice>
@@ -778,6 +428,7 @@
778
428
  </element>
779
429
  </define>
780
430
  <define name="sup">
431
+ <a:documentation>Superscript text. Corresponds to HTML `sup`</a:documentation>
781
432
  <element name="sup">
782
433
  <zeroOrMore>
783
434
  <choice>
@@ -788,9 +439,12 @@
788
439
  </element>
789
440
  </define>
790
441
  <define name="pagebreak">
442
+ <a:documentation>Page break. Only applicable in paged layouts (e.g. PDF, Word), and not flow layouts (e.g. HTML)</a:documentation>
791
443
  <element name="pagebreak">
792
444
  <optional>
793
445
  <attribute name="orientation">
446
+ <a:documentation>Orientation of pages in a section of text in paged media following this page break, applicable until the next page break that
447
+ gives an explicit page orientation</a:documentation>
794
448
  <choice>
795
449
  <value>landscape</value>
796
450
  <value>portrait</value>
@@ -799,20 +453,218 @@
799
453
  </optional>
800
454
  </element>
801
455
  </define>
456
+ <define name="XrefBody">
457
+ <zeroOrMore>
458
+ <ref name="XrefTarget">
459
+ <a:documentation>Description of location in a reference, which can be combined with other locations in a single citation</a:documentation>
460
+ </ref>
461
+ </zeroOrMore>
462
+ <zeroOrMore>
463
+ <ref name="PureTextElement">
464
+ <a:documentation>The textual content of the element. The `text` is what we wish to show the link as (e.g., the "content" of `&lt;xx&gt;my link text&lt;/xx&gt;`)</a:documentation>
465
+ </ref>
466
+ </zeroOrMore>
467
+ </define>
802
468
  </include>
803
469
  <!-- end overrides -->
470
+ <define name="NumberingAttributes" combine="interleave">
471
+ <optional>
472
+ <attribute name="number">
473
+ <a:documentation>Override the numbering of this block in numbering</a:documentation>
474
+ </attribute>
475
+ </optional>
476
+ </define>
477
+ <define name="AdmonitionAttributes" combine="interleave">
478
+ <optional>
479
+ <attribute name="coverpage">
480
+ <a:documentation>Display the admonition on the document cover page</a:documentation>
481
+ <data type="boolean"/>
482
+ </attribute>
483
+ </optional>
484
+ <optional>
485
+ <attribute name="notag">
486
+ <a:documentation>Do not insert text labelling the type of admonition in rendering</a:documentation>
487
+ <data type="boolean"/>
488
+ </attribute>
489
+ </optional>
490
+ </define>
491
+ <define name="AdmonitionType" combine="choice">
492
+ <choice>
493
+ <value>statement</value>
494
+ <a:documentation>Intended for typographically separate statements in mathematics, such as propositions, proofs, or theorems. Statement conflates all of these for rendering, while Proposition, Proof, Theorem etc. can be treated as distinct classes</a:documentation>
495
+ <value>editorial</value>
496
+ <a:documentation>Annotation by document editors, intended for all readers of the document and not just its authors</a:documentation>
497
+ <value>box</value>
498
+ <a:documentation>Box annotation, intended as standalone sidebar element which can be referenced from within the document</a:documentation>
499
+ </choice>
500
+ </define>
501
+ <define name="HyperlinkAttributes" combine="interleave">
502
+ <optional>
503
+ <attribute name="update-type">
504
+ <a:documentation>Update link file suffix to match rendered file output (HTML &gt; HTML, PDF &gt; PDF)</a:documentation>
505
+ <data type="boolean"/>
506
+ </attribute>
507
+ </optional>
508
+ <optional>
509
+ <attribute name="style">
510
+ <a:documentation>Style of hyperlink rendering</a:documentation>
511
+ </attribute>
512
+ </optional>
513
+ </define>
514
+ <define name="erefAttributes" combine="interleave">
515
+ <optional>
516
+ <attribute name="case">
517
+ <a:documentation>Casing of the autogenerated label of the cross-reference (typically the name of the class of element referenced):
518
+ titlecase, or lowercase</a:documentation>
519
+ <choice>
520
+ <value>capital</value>
521
+ <value>lowercase</value>
522
+ </choice>
523
+ </attribute>
524
+ </optional>
525
+ <optional>
526
+ <attribute name="droploc">
527
+ <a:documentation>Do not include the autogenerated label of the cross-reference in rendering</a:documentation>
528
+ <data type="boolean"/>
529
+ </attribute>
530
+ </optional>
531
+ <optional>
532
+ <attribute name="style">
533
+ <a:documentation>Style of how a citation is to be rendered</a:documentation>
534
+ </attribute>
535
+ </optional>
536
+ </define>
537
+ <define name="UlAttributes" combine="interleave">
538
+ <ref name="BlockAttributes"/>
539
+ </define>
540
+ <define name="TableAttributes" combine="interleave">
541
+ <optional>
542
+ <attribute name="width">
543
+ <a:documentation>Width of the table block in rendering</a:documentation>
544
+ </attribute>
545
+ </optional>
546
+ <ref name="BlockAttributes"/>
547
+ </define>
548
+ <define name="FigureAttributes" combine="interleave">
549
+ <optional>
550
+ <attribute name="width">
551
+ <a:documentation>Width of the figure block in rendering</a:documentation>
552
+ </attribute>
553
+ </optional>
554
+ <ref name="BlockAttributes"/>
555
+ </define>
556
+ <define name="SourceAttributes" combine="interleave">
557
+ <ref name="BlockAttributes"/>
558
+ <optional>
559
+ <attribute name="linenums">
560
+ <a:documentation>Render the sourcecode block with line numbering. Default value is false</a:documentation>
561
+ <data type="boolean"/>
562
+ </attribute>
563
+ </optional>
564
+ </define>
565
+ <define name="FormulaAttributes" combine="interleave">
566
+ <ref name="BlockAttributes"/>
567
+ </define>
568
+ <define name="ParagraphAttributes" combine="interleave">
569
+ <optional>
570
+ <attribute name="type">
571
+ <a:documentation>Semantic classification of paragraph</a:documentation>
572
+ </attribute>
573
+ </optional>
574
+ <ref name="BlockAttributes"/>
575
+ </define>
576
+ <define name="QuoteAttributes" combine="interleave">
577
+ <ref name="BlockAttributes"/>
578
+ </define>
579
+ <define name="NoteAttributes" combine="interleave">
580
+ <optional>
581
+ <attribute name="type">
582
+ <a:documentation>Semantic classification of note</a:documentation>
583
+ </attribute>
584
+ </optional>
585
+ <optional>
586
+ <attribute name="coverpage">
587
+ <a:documentation>Display the note on the document cover page</a:documentation>
588
+ <data type="boolean"/>
589
+ </attribute>
590
+ </optional>
591
+ <optional>
592
+ <attribute name="notag">
593
+ <a:documentation>Do not insert text labelling the note as a note in rendering</a:documentation>
594
+ <data type="boolean"/>
595
+ </attribute>
596
+ </optional>
597
+ <ref name="BlockAttributes"/>
598
+ </define>
599
+ <define name="StemAttributes" combine="interleave">
600
+ <optional>
601
+ <attribute name="number-format">
602
+ <a:documentation>Numeric formatting directives to apply to mathematically formatted text</a:documentation>
603
+ </attribute>
604
+ </optional>
605
+ <attribute name="block">
606
+ <a:documentation>Whether to treat the expression as a block or as an inline element, for display purposes</a:documentation>
607
+ <data type="boolean"/>
608
+ </attribute>
609
+ </define>
610
+ <define name="XrefAttributes" combine="interleave">
611
+ <optional>
612
+ <attribute name="to">
613
+ <a:documentation>If the cross-reference is to a range of text defined as a span between two identified elements,
614
+ provide the identifier of the end element of the span</a:documentation>
615
+ <data type="string">
616
+ <param name="pattern">\i\c*|\c+#\c+</param>
617
+ </data>
618
+ </attribute>
619
+ </optional>
620
+ <optional>
621
+ <attribute name="case">
622
+ <a:documentation>Casing of the autogenerated label of the cross-reference (typically the name of the class of element referenced):
623
+ titlecase, or lowercase</a:documentation>
624
+ <choice>
625
+ <value>capital</value>
626
+ <value>lowercase</value>
627
+ </choice>
628
+ </attribute>
629
+ </optional>
630
+ <optional>
631
+ <attribute name="droploc">
632
+ <a:documentation>Do not include the autogenerated label of the cross-reference in rendering</a:documentation>
633
+ <data type="boolean"/>
634
+ </attribute>
635
+ </optional>
636
+ <optional>
637
+ <attribute name="style">
638
+ <a:documentation>Style of cross-reference rendering (title vs numbering)</a:documentation>
639
+ <ref name="XrefStyleType"/>
640
+ </attribute>
641
+ </optional>
642
+ <optional>
643
+ <attribute name="label">
644
+ <a:documentation>Substitute the expected label of the item being cross-referenced with a custom label (e.g. "subclause" instead of "clause")</a:documentation>
645
+ </attribute>
646
+ </optional>
647
+ </define>
648
+ <define name="ObligationType">
649
+ <a:documentation>The force of a clause in a standard document: whether it has normative or informative effect</a:documentation>
650
+ <choice>
651
+ <value>normative</value>
652
+ <value>informative</value>
653
+ </choice>
654
+ </define>
804
655
  <define name="doc_bibitem">
656
+ <a:documentation>Standardisation document representation of bibliographic entry</a:documentation>
805
657
  <element name="bibitem">
806
- <attribute name="id">
807
- <data type="ID"/>
808
- </attribute>
658
+ <ref name="RequiredId"/>
809
659
  <optional>
810
660
  <attribute name="hidden">
661
+ <a:documentation>Suppress from dislay in rendered document</a:documentation>
811
662
  <data type="boolean"/>
812
663
  </attribute>
813
664
  </optional>
814
665
  <optional>
815
666
  <attribute name="suppress_identifier">
667
+ <a:documentation>Suppress document identifier from item rendering</a:documentation>
816
668
  <data type="boolean"/>
817
669
  </attribute>
818
670
  </optional>
@@ -821,6 +673,7 @@
821
673
  </define>
822
674
  <define name="image" combine="choice">
823
675
  <element name="svg">
676
+ <a:documentation>Add svg mark up to image</a:documentation>
824
677
  <oneOrMore>
825
678
  <choice>
826
679
  <text/>
@@ -833,16 +686,22 @@
833
686
  <ref name="columnbreak"/>
834
687
  </define>
835
688
  <define name="columnbreak">
689
+ <a:documentation>Indication of a break in text rendered as columns</a:documentation>
836
690
  <element name="columnbreak">
837
691
  <empty/>
838
692
  </element>
839
693
  </define>
840
694
  <define name="MultilingualRenderingType">
695
+ <a:documentation>How a block element may be rendered in a multilingual document, with a column for each language</a:documentation>
841
696
  <choice>
842
697
  <value>common</value>
698
+ <a:documentation>Block is shared across all languages</a:documentation>
843
699
  <value>all-columns</value>
700
+ <a:documentation>Block spans all columns of text, and versions in different languages are displayed consecutively</a:documentation>
844
701
  <value>parallel</value>
702
+ <a:documentation>Block is to be aligned to the block occupying the same position in the document hierarchy</a:documentation>
845
703
  <value>tag</value>
704
+ <a:documentation>Block is to be aligned to all blocks sharing the same `tag` attribute as this block</a:documentation>
846
705
  </choice>
847
706
  </define>
848
707
  <define name="colgroup">
@@ -854,11 +713,14 @@
854
713
  </define>
855
714
  <define name="col">
856
715
  <element name="col">
857
- <attribute name="width"/>
716
+ <attribute name="width">
717
+ <a:documentation>The width of an individual table column</a:documentation>
718
+ </attribute>
858
719
  </element>
859
720
  </define>
860
721
  <define name="BibItemType" combine="choice">
861
722
  <value>internal</value>
723
+ <a:documentation>Internal reference (for Metanorma document collections)</a:documentation>
862
724
  </define>
863
725
  <define name="TextElement" combine="choice">
864
726
  <choice>
@@ -873,106 +735,120 @@
873
735
  <define name="PureTextElement" combine="choice">
874
736
  <ref name="passthrough_inline"/>
875
737
  </define>
738
+ <define name="NestedTextElement" combine="choice">
739
+ <ref name="erefstack"/>
740
+ </define>
876
741
  <define name="passthrough_inline">
742
+ <a:documentation>Inline text not to be processed semantically, and left in the markup of a target rendering language (e.g. raw HTML)</a:documentation>
877
743
  <element name="passthrough">
878
744
  <optional>
879
- <attribute name="formats"/>
745
+ <attribute name="formats">
746
+ <a:documentation>List of the target formats for which the markup is intended, comma-delimited</a:documentation>
747
+ </attribute>
880
748
  </optional>
881
- <text/>
749
+ <oneOrMore>
750
+ <choice>
751
+ <a:documentation>Markup specific to a target rendering language</a:documentation>
752
+ <text/>
753
+ <ref name="AnyElement"/>
754
+ </choice>
755
+ </oneOrMore>
882
756
  </element>
883
757
  </define>
884
758
  <define name="add">
759
+ <a:documentation>Indication of text added through editorial intervention</a:documentation>
885
760
  <element name="add">
886
- <choice>
887
- <ref name="PureTextElement"/>
888
- <ref name="eref"/>
889
- <ref name="erefstack"/>
890
- <ref name="stem"/>
891
- <ref name="keyword"/>
892
- <ref name="xref"/>
893
- <ref name="hyperlink"/>
894
- <ref name="index"/>
895
- <ref name="index-xref"/>
896
- </choice>
761
+ <zeroOrMore>
762
+ <ref name="NestedTextElement"/>
763
+ </zeroOrMore>
897
764
  </element>
898
765
  </define>
899
766
  <define name="del">
767
+ <a:documentation>Indication of text deleted through editorial intervention</a:documentation>
900
768
  <element name="del">
901
- <choice>
902
- <ref name="PureTextElement"/>
903
- <ref name="eref"/>
904
- <ref name="erefstack"/>
905
- <ref name="stem"/>
906
- <ref name="keyword"/>
907
- <ref name="xref"/>
908
- <ref name="hyperlink"/>
909
- <ref name="index"/>
910
- <ref name="index-xref"/>
911
- </choice>
769
+ <zeroOrMore>
770
+ <ref name="NestedTextElement"/>
771
+ </zeroOrMore>
912
772
  </element>
913
773
  </define>
914
774
  <define name="span">
775
+ <a:documentation>Semantic or formatting markup for inline elements</a:documentation>
915
776
  <element name="span">
916
777
  <optional>
917
- <attribute name="class"/>
778
+ <attribute name="class">
779
+ <a:documentation>Class of the inline span, as semantic markup</a:documentation>
780
+ </attribute>
918
781
  </optional>
919
782
  <optional>
920
- <attribute name="style"/>
783
+ <attribute name="style">
784
+ <a:documentation>CSS style directive for the inline span. Is intended to be the same as HTML style attribute</a:documentation>
785
+ </attribute>
921
786
  </optional>
922
787
  <optional>
923
- <attribute name="custom-charset"/>
788
+ <attribute name="custom-charset">
789
+ <a:documentation>Character set that the contained text belongs to;
790
+ is used in particular to capture mutually agreed definitions of codepoints in Unicode Private Use Area</a:documentation>
791
+ </attribute>
924
792
  </optional>
925
793
  <oneOrMore>
926
- <ref name="TextElement"/>
794
+ <ref name="TextElement">
795
+ <a:documentation>Textual content of span</a:documentation>
796
+ </ref>
927
797
  </oneOrMore>
928
798
  </element>
929
799
  </define>
930
800
  <define name="date_inline">
801
+ <a:documentation>Localisable rendering of a date</a:documentation>
931
802
  <element name="date">
932
- <attribute name="value"/>
933
- <optional>
934
- <attribute name="format"/>
935
- </optional>
936
- <optional>
937
- <attribute name="language"/>
938
- </optional>
939
- <optional>
940
- <attribute name="script"/>
941
- </optional>
803
+ <ref name="LocalizedStringAttributes"/>
804
+ <attribute name="value">
805
+ <a:documentation>Date to be rendered, in ISO 8601 format</a:documentation>
806
+ <data type="dateTime"/>
807
+ </attribute>
942
808
  <optional>
943
- <attribute name="locale"/>
809
+ <attribute name="format">
810
+ <a:documentation>Format to be used to render date, as a strftime formatting string</a:documentation>
811
+ </attribute>
944
812
  </optional>
945
813
  </element>
946
814
  </define>
947
815
  <define name="concept">
816
+ <a:documentation>Formally defined concept used in a standardisation document, aligned to a definition.
817
+ That concept may be defined as a term within the current document, or it may be defined externally</a:documentation>
948
818
  <element name="concept">
949
819
  <optional>
950
820
  <attribute name="bold">
821
+ <a:documentation>Render the term in the concept in boldface</a:documentation>
951
822
  <data type="boolean"/>
952
823
  </attribute>
953
824
  </optional>
954
825
  <optional>
955
826
  <attribute name="ital">
827
+ <a:documentation>Render the term in the concept in italics</a:documentation>
956
828
  <data type="boolean"/>
957
829
  </attribute>
958
830
  </optional>
959
831
  <optional>
960
832
  <attribute name="ref">
833
+ <a:documentation>Render a reference to a definition for the concept, e.g. "widgets (3.1)"</a:documentation>
961
834
  <data type="boolean"/>
962
835
  </attribute>
963
836
  </optional>
964
837
  <optional>
965
838
  <attribute name="linkmention">
839
+ <a:documentation>Hyperlink the mention of the term to the definition for the concept</a:documentation>
966
840
  <data type="boolean"/>
967
841
  </attribute>
968
842
  </optional>
969
843
  <optional>
970
844
  <attribute name="linkref">
845
+ <a:documentation>Hyperlink the reference for the term to the definition for the concept</a:documentation>
971
846
  <data type="boolean"/>
972
847
  </attribute>
973
848
  </optional>
974
849
  <optional>
975
850
  <element name="refterm">
851
+ <a:documentation>The canonical name of the concept being defined</a:documentation>
976
852
  <zeroOrMore>
977
853
  <choice>
978
854
  <ref name="PureTextElement"/>
@@ -985,6 +861,7 @@
985
861
  </optional>
986
862
  <optional>
987
863
  <element name="renderterm">
864
+ <a:documentation>The rendering to be used for the concept</a:documentation>
988
865
  <zeroOrMore>
989
866
  <choice>
990
867
  <ref name="PureTextElement"/>
@@ -996,10 +873,18 @@
996
873
  </element>
997
874
  </optional>
998
875
  <choice>
999
- <ref name="eref"/>
1000
- <ref name="erefstack"/>
1001
- <ref name="xref"/>
1002
- <ref name="termref"/>
876
+ <ref name="eref">
877
+ <a:documentation>Link to a definition of the term in a bibliographic entry</a:documentation>
878
+ </ref>
879
+ <ref name="erefstack">
880
+ <a:documentation>Stack of links to a definition of the term in a bibliographic entry</a:documentation>
881
+ </ref>
882
+ <ref name="xref">
883
+ <a:documentation>Link to a definition of the term in an element of the current document</a:documentation>
884
+ </ref>
885
+ <ref name="termref">
886
+ <a:documentation>Link to a definition of the term in a termbase</a:documentation>
887
+ </ref>
1003
888
  </choice>
1004
889
  </element>
1005
890
  </define>
@@ -1016,102 +901,143 @@
1016
901
  </choice>
1017
902
  </define>
1018
903
  <define name="toc">
904
+ <a:documentation>Table of contents, represented as a list of crossreferences, each with textual content</a:documentation>
1019
905
  <element name="toc">
1020
- <ref name="ul"/>
906
+ <group>
907
+ <a:documentation>List of crossreferences</a:documentation>
908
+ <ref name="ul"/>
909
+ </group>
1021
910
  </element>
1022
911
  </define>
1023
912
  <define name="passthrough">
913
+ <a:documentation>Wrapper around raw markup to be transferred into one or more nominated output formats during processing</a:documentation>
1024
914
  <element name="passthrough">
1025
915
  <optional>
1026
- <attribute name="formats"/>
916
+ <attribute name="formats">
917
+ <a:documentation>Format of markup to be transferred, comma-delimited</a:documentation>
918
+ </attribute>
1027
919
  </optional>
1028
- <text/>
920
+ <oneOrMore>
921
+ <choice>
922
+ <a:documentation>Markup to be transferred</a:documentation>
923
+ <text/>
924
+ <ref name="AnyElement"/>
925
+ </choice>
926
+ </oneOrMore>
1029
927
  </element>
1030
928
  </define>
1031
929
  <define name="inputform">
930
+ <a:documentation>Input form, for use under HTML</a:documentation>
1032
931
  <element name="form">
1033
- <attribute name="id">
1034
- <data type="ID"/>
932
+ <ref name="RequiredId"/>
933
+ <attribute name="name">
934
+ <a:documentation>Name of the input form block</a:documentation>
935
+ </attribute>
936
+ <attribute name="action">
937
+ <a:documentation>Action to be taken on submission of the input form</a:documentation>
1035
938
  </attribute>
1036
- <attribute name="name"/>
1037
- <attribute name="action"/>
1038
939
  <optional>
1039
- <attribute name="class"/>
940
+ <attribute name="class">
941
+ <a:documentation>Class of input form</a:documentation>
942
+ </attribute>
1040
943
  </optional>
1041
944
  <ref name="BlockAttributes"/>
1042
945
  <zeroOrMore>
946
+ <!-- Input form contents -->
1043
947
  <choice>
1044
948
  <ref name="TextElement"/>
1045
949
  <ref name="FormInput"/>
950
+ <ref name="formlabel"/>
1046
951
  </choice>
1047
952
  </zeroOrMore>
1048
953
  </element>
1049
954
  </define>
1050
955
  <define name="FormInput">
956
+ <a:documentation>Input element for forms, associated with name/value pair to be submitted</a:documentation>
1051
957
  <choice>
1052
958
  <ref name="input"/>
1053
- <ref name="formlabel"/>
1054
959
  <ref name="select"/>
1055
960
  <ref name="textarea"/>
1056
961
  </choice>
1057
962
  </define>
963
+ <define name="FormInputAttributes">
964
+ <optional>
965
+ <attribute name="name">
966
+ <a:documentation>Name of value of input element to be submitted</a:documentation>
967
+ </attribute>
968
+ </optional>
969
+ <optional>
970
+ <attribute name="value">
971
+ <a:documentation>Preset or default of value of input element to be submitted</a:documentation>
972
+ </attribute>
973
+ </optional>
974
+ </define>
1058
975
  <define name="InputType">
976
+ <a:documentation>Type of simple Input element</a:documentation>
1059
977
  <choice>
1060
978
  <value>button</value>
979
+ <a:documentation>Input element is a button</a:documentation>
1061
980
  <value>checkbox</value>
981
+ <a:documentation>Input element is a checkbox</a:documentation>
1062
982
  <value>date</value>
983
+ <a:documentation>Input element contains date</a:documentation>
1063
984
  <value>file</value>
985
+ <a:documentation>Input element selects file for upload</a:documentation>
1064
986
  <value>password</value>
987
+ <a:documentation>Input element is a password field</a:documentation>
1065
988
  <value>radio</value>
989
+ <a:documentation>Input element is a radio button</a:documentation>
1066
990
  <value>submit</value>
991
+ <a:documentation>Input element is a submit button</a:documentation>
1067
992
  <value>text</value>
993
+ <a:documentation>Input element contains text</a:documentation>
1068
994
  </choice>
1069
995
  </define>
1070
996
  <define name="input">
997
+ <a:documentation>Input involving simple text</a:documentation>
1071
998
  <element name="input">
1072
999
  <attribute name="type">
1000
+ <a:documentation>Type of input element</a:documentation>
1073
1001
  <ref name="InputType"/>
1074
1002
  </attribute>
1075
1003
  <optional>
1076
1004
  <attribute name="checked">
1005
+ <a:documentation>Input element is checkbox, and has checked value</a:documentation>
1077
1006
  <data type="boolean"/>
1078
1007
  </attribute>
1079
1008
  </optional>
1080
1009
  <optional>
1081
1010
  <attribute name="disabled">
1011
+ <a:documentation>Input element is disabled</a:documentation>
1082
1012
  <data type="boolean"/>
1083
1013
  </attribute>
1084
1014
  </optional>
1085
1015
  <optional>
1086
1016
  <attribute name="readonly">
1017
+ <a:documentation>Input element is read-only</a:documentation>
1087
1018
  <data type="boolean"/>
1088
1019
  </attribute>
1089
1020
  </optional>
1090
1021
  <optional>
1091
1022
  <attribute name="maxlength">
1023
+ <a:documentation>Maximum length of input in characters, for character input</a:documentation>
1092
1024
  <data type="int"/>
1093
1025
  </attribute>
1094
1026
  </optional>
1095
1027
  <optional>
1096
1028
  <attribute name="minlength">
1029
+ <a:documentation>Minimum length of input in characters, for character input</a:documentation>
1097
1030
  <data type="int"/>
1098
1031
  </attribute>
1099
1032
  </optional>
1100
- <optional>
1101
- <attribute name="name"/>
1102
- </optional>
1103
- <optional>
1104
- <attribute name="value"/>
1105
- </optional>
1106
- <optional>
1107
- <attribute name="id">
1108
- <data type="ID"/>
1109
- </attribute>
1110
- </optional>
1033
+ <ref name="FormInputAttributes"/>
1034
+ <ref name="OptionalId"/>
1111
1035
  </element>
1112
1036
  </define>
1113
1037
  <define name="formlabel">
1038
+ <a:documentation>Label associated with form input element</a:documentation>
1114
1039
  <element name="label">
1040
+ <!-- Identifier of form input element that this element is a label of -->
1115
1041
  <attribute name="for">
1116
1042
  <data type="IDREF"/>
1117
1043
  </attribute>
@@ -1121,79 +1047,78 @@
1121
1047
  </element>
1122
1048
  </define>
1123
1049
  <define name="select">
1050
+ <a:documentation>Input allowing the selection of a value from a list of values. The value attribute is used instead of a selected
1051
+ attribute on a component option</a:documentation>
1124
1052
  <element name="select">
1125
- <optional>
1126
- <attribute name="name"/>
1127
- </optional>
1128
- <optional>
1129
- <attribute name="value"/>
1130
- </optional>
1131
- <optional>
1132
- <attribute name="id">
1133
- <data type="ID"/>
1134
- </attribute>
1135
- </optional>
1053
+ <ref name="FormInputAttributes"/>
1054
+ <ref name="OptionalId"/>
1136
1055
  <optional>
1137
1056
  <attribute name="disabled">
1057
+ <a:documentation>Input is disabled</a:documentation>
1138
1058
  <data type="boolean"/>
1139
1059
  </attribute>
1140
1060
  </optional>
1141
1061
  <optional>
1142
1062
  <attribute name="multiple">
1063
+ <a:documentation>Input can return multiple option values</a:documentation>
1143
1064
  <data type="boolean"/>
1144
1065
  </attribute>
1145
1066
  </optional>
1146
1067
  <optional>
1147
1068
  <attribute name="size">
1069
+ <a:documentation>Suggested number of options to display</a:documentation>
1148
1070
  <data type="int"/>
1149
1071
  </attribute>
1150
1072
  </optional>
1151
1073
  <oneOrMore>
1152
- <ref name="option"/>
1074
+ <ref name="option">
1075
+ <a:documentation>Options to select from as value of the input</a:documentation>
1076
+ </ref>
1153
1077
  </oneOrMore>
1154
1078
  </element>
1155
1079
  </define>
1156
1080
  <define name="option">
1081
+ <a:documentation>Option of a Select input</a:documentation>
1157
1082
  <element name="option">
1158
1083
  <optional>
1159
1084
  <attribute name="disabled">
1085
+ <a:documentation>Option is disabled</a:documentation>
1160
1086
  <data type="boolean"/>
1161
1087
  </attribute>
1162
1088
  </optional>
1163
1089
  <optional>
1164
- <attribute name="value"/>
1090
+ <attribute name="value">
1091
+ <a:documentation>Value associated with this option</a:documentation>
1092
+ </attribute>
1165
1093
  </optional>
1166
1094
  <zeroOrMore>
1167
- <ref name="PureTextElement"/>
1095
+ <ref name="PureTextElement">
1096
+ <a:documentation>Display text associated with this option</a:documentation>
1097
+ </ref>
1168
1098
  </zeroOrMore>
1169
1099
  </element>
1170
1100
  </define>
1171
1101
  <define name="textarea">
1102
+ <a:documentation>Input involving extended text. The value attribute is used instead of text area content</a:documentation>
1172
1103
  <element name="textarea">
1173
- <optional>
1174
- <attribute name="name"/>
1175
- </optional>
1176
- <optional>
1177
- <attribute name="value"/>
1178
- </optional>
1179
- <optional>
1180
- <attribute name="id">
1181
- <data type="ID"/>
1182
- </attribute>
1183
- </optional>
1104
+ <ref name="FormInputAttributes"/>
1105
+ <ref name="OptionalId"/>
1184
1106
  <optional>
1185
1107
  <attribute name="rows">
1108
+ <a:documentation>Suggested number of rows for the input area</a:documentation>
1186
1109
  <data type="int"/>
1187
1110
  </attribute>
1188
1111
  </optional>
1189
1112
  <optional>
1190
1113
  <attribute name="cols">
1114
+ <a:documentation>Suggested number of columns for the input area</a:documentation>
1191
1115
  <data type="int"/>
1192
1116
  </attribute>
1193
1117
  </optional>
1194
1118
  </element>
1195
1119
  </define>
1196
1120
  <define name="bibliography">
1121
+ <a:documentation>Bibliographic references</a:documentation>
1197
1122
  <element name="bibliography">
1198
1123
  <oneOrMore>
1199
1124
  <choice>
@@ -1204,47 +1129,57 @@
1204
1129
  </element>
1205
1130
  </define>
1206
1131
  <define name="Section-Attributes">
1132
+ <ref name="Basic-Section-Attributes"/>
1207
1133
  <optional>
1208
- <attribute name="id">
1209
- <data type="ID"/>
1134
+ <attribute name="inline-header">
1135
+ <a:documentation>Render the section number and title (if present) inline with the first paragraph of the section</a:documentation>
1136
+ <data type="boolean"/>
1210
1137
  </attribute>
1211
1138
  </optional>
1212
1139
  <optional>
1213
- <attribute name="language"/>
1140
+ <attribute name="number">
1141
+ <a:documentation>Value of number to be used for numbering of section, overriding any autonumbering in rendering.
1142
+ The section number is still formed by appending this number to the hierarchical set of parent section numbers,
1143
+ e.g. a number "3a" under Clause 1 subclause 2 will be numbered as 1.2.3a</a:documentation>
1144
+ </attribute>
1214
1145
  </optional>
1215
1146
  <optional>
1216
- <attribute name="script"/>
1147
+ <attribute name="branch-number">
1148
+ <a:documentation>Value of number to be used for numbering of section, overriding any autonumbering in rendering,
1149
+ and the hierarchy of parent section numbers. This attribute is mutually exclusive with `number`.
1150
+ So under Clause 1 subclause 2, sub-subclause 3 is numbered as 1.2.3. If the following sub-subclause
1151
+ is given a branch-number "7.2.1.5", that will be the overall section number given, ignoring the parent section
1152
+ numbers</a:documentation>
1153
+ </attribute>
1217
1154
  </optional>
1218
1155
  <optional>
1219
- <attribute name="inline-header">
1156
+ <attribute name="unnumbered">
1157
+ <a:documentation>Do not apply numbering to this clause</a:documentation>
1220
1158
  <data type="boolean"/>
1221
1159
  </attribute>
1222
1160
  </optional>
1223
- <optional>
1224
- <attribute name="number"/>
1225
- </optional>
1226
- <optional>
1227
- <attribute name="branch-number"/>
1228
- </optional>
1161
+ </define>
1162
+ <define name="Basic-Section-Attributes" combine="interleave">
1229
1163
  <optional>
1230
1164
  <attribute name="obligation">
1231
- <choice>
1232
- <value>normative</value>
1233
- <value>informative</value>
1234
- </choice>
1165
+ <ref name="ObligationType"/>
1235
1166
  </attribute>
1236
1167
  </optional>
1237
1168
  </define>
1238
1169
  <define name="reference-clause">
1170
+ <a:documentation>References clause with recursive nesting</a:documentation>
1239
1171
  <element name="clause">
1240
1172
  <ref name="Section-Attributes"/>
1241
1173
  <optional>
1242
1174
  <ref name="section-title"/>
1243
1175
  </optional>
1244
1176
  <zeroOrMore>
1245
- <ref name="BasicBlock"/>
1177
+ <ref name="BasicBlock">
1178
+ <a:documentation>Prefatory text</a:documentation>
1179
+ </ref>
1246
1180
  </zeroOrMore>
1247
1181
  <choice>
1182
+ <a:documentation>Recursion of reference clauses</a:documentation>
1248
1183
  <oneOrMore>
1249
1184
  <ref name="reference-clause"/>
1250
1185
  </oneOrMore>
@@ -1255,9 +1190,16 @@
1255
1190
  </element>
1256
1191
  </define>
1257
1192
  <define name="Root-Attributes">
1258
- <attribute name="version"/>
1259
- <attribute name="schema-version"/>
1193
+ <a:documentation>Attributes on document root</a:documentation>
1194
+ <attribute name="version">
1195
+ <a:documentation>Version number of the gem used to generate this document</a:documentation>
1196
+ </attribute>
1197
+ <attribute name="schema-version">
1198
+ <a:documentation>Version number of the schema that this document is aligned to</a:documentation>
1199
+ </attribute>
1260
1200
  <attribute name="type">
1201
+ <a:documentation>Type of standards document representation. "Semantic" is the core representation of content.
1202
+ "Presentation" manipulates and enhances the representation for rendering needs.</a:documentation>
1261
1203
  <choice>
1262
1204
  <value>semantic</value>
1263
1205
  <value>presentation</value>
@@ -1265,34 +1207,54 @@
1265
1207
  </attribute>
1266
1208
  </define>
1267
1209
  <define name="standard-document">
1210
+ <a:documentation>Representation of a standardisation document</a:documentation>
1268
1211
  <element name="standard-document">
1269
1212
  <ref name="Root-Attributes"/>
1270
- <ref name="bibdata"/>
1213
+ <ref name="bibdata">
1214
+ <a:documentation>Bibliographic description of the document itself, expressed in the Relaton model</a:documentation>
1215
+ </ref>
1271
1216
  <optional>
1272
- <ref name="misccontainer"/>
1217
+ <ref name="misccontainer">
1218
+ <a:documentation>Extension point for extraneous elements that need to be added to standards document as data</a:documentation>
1219
+ </ref>
1273
1220
  </optional>
1274
1221
  <optional>
1275
- <ref name="boilerplate"/>
1222
+ <ref name="boilerplate">
1223
+ <a:documentation>Front matter that is repeated at the start of documents issued from an SDO, with content not specific to the document</a:documentation>
1224
+ </ref>
1276
1225
  </optional>
1277
1226
  <optional>
1278
- <ref name="preface"/>
1227
+ <ref name="preface">
1228
+ <a:documentation>Prefatory sections</a:documentation>
1229
+ </ref>
1279
1230
  </optional>
1280
- <ref name="sections"/>
1231
+ <ref name="sections">
1232
+ <a:documentation>Main body of document</a:documentation>
1233
+ </ref>
1281
1234
  <zeroOrMore>
1282
- <ref name="annex"/>
1235
+ <ref name="annex">
1236
+ <a:documentation>Annex sections</a:documentation>
1237
+ </ref>
1283
1238
  </zeroOrMore>
1284
1239
  <optional>
1285
- <ref name="bibliography"/>
1240
+ <ref name="bibliography">
1241
+ <a:documentation>Bibliographic sections</a:documentation>
1242
+ </ref>
1286
1243
  </optional>
1287
1244
  <zeroOrMore>
1288
- <ref name="indexsect"/>
1245
+ <ref name="indexsect">
1246
+ <a:documentation>Index of the document</a:documentation>
1247
+ </ref>
1289
1248
  </zeroOrMore>
1290
1249
  <optional>
1291
- <ref name="colophon"/>
1250
+ <ref name="colophon">
1251
+ <a:documentation>Colophon or postface material</a:documentation>
1252
+ </ref>
1292
1253
  </optional>
1293
1254
  </element>
1294
1255
  </define>
1295
1256
  <define name="misccontainer">
1257
+ <a:documentation>Elements added to metanorma-extension are open-ended, and constitute source data</a:documentation>
1296
1258
  <element name="metanorma-extension">
1297
1259
  <oneOrMore>
1298
1260
  <ref name="AnyElement"/>
@@ -1320,11 +1282,13 @@
1320
1282
  </element>
1321
1283
  </define>
1322
1284
  <define name="foreword">
1285
+ <a:documentation>Foreword of document</a:documentation>
1323
1286
  <element name="foreword">
1324
1287
  <ref name="Content-Section"/>
1325
1288
  </element>
1326
1289
  </define>
1327
1290
  <define name="introduction">
1291
+ <a:documentation>Introduction of document</a:documentation>
1328
1292
  <element name="introduction">
1329
1293
  <ref name="Content-Section"/>
1330
1294
  </element>
@@ -1335,18 +1299,27 @@
1335
1299
  </element>
1336
1300
  </define>
1337
1301
  <define name="boilerplate">
1302
+ <a:documentation>Content addressing legal and licensing concerns around the document, outside of the main flow of document content</a:documentation>
1338
1303
  <element name="boilerplate">
1339
1304
  <optional>
1340
- <ref name="copyright-statement"/>
1305
+ <ref name="copyright-statement">
1306
+ <a:documentation>Preset templated text provided by the standardization body, describing the copyright status of the document</a:documentation>
1307
+ </ref>
1341
1308
  </optional>
1342
1309
  <optional>
1343
- <ref name="license-statement"/>
1310
+ <ref name="license-statement">
1311
+ <a:documentation>Preset templated text provided by the standardization body, providing the licensing terms for the document content</a:documentation>
1312
+ </ref>
1344
1313
  </optional>
1345
1314
  <optional>
1346
- <ref name="legal-statement"/>
1315
+ <ref name="legal-statement">
1316
+ <a:documentation>Preset templated text provided by the standardization body, providing the legal constraints and considerations around use of the document</a:documentation>
1317
+ </ref>
1347
1318
  </optional>
1348
1319
  <optional>
1349
- <ref name="feedback-statement"/>
1320
+ <ref name="feedback-statement">
1321
+ <a:documentation>Preset templated text provided by the standardization body, providing information on where feedback on the document may be addressed to</a:documentation>
1322
+ </ref>
1350
1323
  </optional>
1351
1324
  </element>
1352
1325
  </define>
@@ -1371,37 +1344,36 @@
1371
1344
  </element>
1372
1345
  </define>
1373
1346
  <define name="definitions">
1347
+ <a:documentation>One or more definition lists, used to define symbols and abbreviations used in the remainder of the document.
1348
+ These can also be used as glossaries, with simple definitions, in contrast to the more elaborate definitions given in
1349
+ terms sections </a:documentation>
1374
1350
  <element name="definitions">
1351
+ <ref name="OptionalId"/>
1352
+ <ref name="LocalizedStringAttributes"/>
1375
1353
  <optional>
1376
- <attribute name="id">
1377
- <data type="ID"/>
1354
+ <attribute name="type">
1355
+ <a:documentation>Semantic class of clause</a:documentation>
1378
1356
  </attribute>
1379
1357
  </optional>
1380
- <optional>
1381
- <attribute name="language"/>
1382
- </optional>
1383
- <optional>
1384
- <attribute name="script"/>
1385
- </optional>
1386
- <optional>
1387
- <attribute name="type"/>
1388
- </optional>
1389
1358
  <optional>
1390
1359
  <attribute name="obligation">
1391
- <choice>
1392
- <value>normative</value>
1393
- <value>informative</value>
1394
- </choice>
1360
+ <ref name="ObligationType"/>
1395
1361
  </attribute>
1396
1362
  </optional>
1397
1363
  <optional>
1398
- <ref name="section-title"/>
1364
+ <ref name="section-title">
1365
+ <a:documentation>Title of section</a:documentation>
1366
+ </ref>
1399
1367
  </optional>
1400
1368
  <oneOrMore>
1401
1369
  <zeroOrMore>
1402
- <ref name="BasicBlock"/>
1370
+ <ref name="BasicBlock">
1371
+ <a:documentation>Prefatory material, may be specific to each definition list</a:documentation>
1372
+ </ref>
1403
1373
  </zeroOrMore>
1404
- <ref name="dl"/>
1374
+ <ref name="dl">
1375
+ <a:documentation>Definition list containing symbols and abbreviations</a:documentation>
1376
+ </ref>
1405
1377
  </oneOrMore>
1406
1378
  </element>
1407
1379
  </define>
@@ -1411,11 +1383,13 @@
1411
1383
  </element>
1412
1384
  </define>
1413
1385
  <define name="abstract">
1386
+ <a:documentation>Abstract of a document, presented as a clause</a:documentation>
1414
1387
  <element name="abstract">
1415
1388
  <ref name="Content-Section"/>
1416
1389
  </element>
1417
1390
  </define>
1418
1391
  <define name="acknowledgements">
1392
+ <a:documentation>Acknowledgements of a document, presented as a clause</a:documentation>
1419
1393
  <element name="acknowledgements">
1420
1394
  <ref name="Content-Section"/>
1421
1395
  </element>
@@ -1426,12 +1400,17 @@
1426
1400
  </element>
1427
1401
  </define>
1428
1402
  <define name="Content-Section">
1403
+ <a:documentation>Unnumbered clause with no semantic specialisation, used in preface of document</a:documentation>
1429
1404
  <ref name="Section-Attributes"/>
1430
1405
  <optional>
1431
- <attribute name="type"/>
1406
+ <attribute name="type">
1407
+ <a:documentation>Semantic class of clause</a:documentation>
1408
+ </attribute>
1432
1409
  </optional>
1433
1410
  <optional>
1434
- <ref name="section-title"/>
1411
+ <ref name="section-title">
1412
+ <a:documentation>Title of section</a:documentation>
1413
+ </ref>
1435
1414
  </optional>
1436
1415
  <group>
1437
1416
  <zeroOrMore>
@@ -1448,22 +1427,34 @@
1448
1427
  </element>
1449
1428
  </define>
1450
1429
  <define name="Clause-Section">
1430
+ <a:documentation>Strictly hierarchical clause: all textual content belongs in a strict clause hierarchy. such that no blocks of text
1431
+ are siblings to subclauses (hanging paragraphs)</a:documentation>
1451
1432
  <ref name="Section-Attributes"/>
1452
1433
  <optional>
1453
- <attribute name="type"/>
1434
+ <attribute name="type">
1435
+ <a:documentation>Semantic class of the clause, e.g. "scope"</a:documentation>
1436
+ </attribute>
1454
1437
  </optional>
1455
1438
  <optional>
1456
- <ref name="section-title"/>
1439
+ <ref name="section-title">
1440
+ <a:documentation>Title of section</a:documentation>
1441
+ </ref>
1457
1442
  </optional>
1458
1443
  <choice>
1459
1444
  <choice>
1460
1445
  <oneOrMore>
1461
- <ref name="BasicBlock"/>
1446
+ <ref name="BasicBlock">
1447
+ <a:documentation>Block content, mutually exclusive with subclauses</a:documentation>
1448
+ </ref>
1462
1449
  </oneOrMore>
1463
- <ref name="amend"/>
1450
+ <ref name="amend">
1451
+ <a:documentation>Specification of machine-readable change outlined in this section,
1452
+ used in document amendments</a:documentation>
1453
+ </ref>
1464
1454
  </choice>
1465
1455
  <oneOrMore>
1466
1456
  <choice>
1457
+ <a:documentation>Subclauses, can include terms and definitions</a:documentation>
1467
1458
  <ref name="clause-subsection"/>
1468
1459
  <ref name="terms"/>
1469
1460
  <ref name="definitions"/>
@@ -1473,48 +1464,38 @@
1473
1464
  </choice>
1474
1465
  </define>
1475
1466
  <define name="Annex-Section">
1476
- <ref name="Annex-Section-Attr"/>
1467
+ <a:documentation>Clause constituting an annex or appendix</a:documentation>
1468
+ <ref name="Annex-Section-Attributes"/>
1477
1469
  <ref name="Annex-Section-Body"/>
1478
1470
  </define>
1479
- <define name="Annex-Section-Attr">
1480
- <optional>
1481
- <attribute name="id">
1482
- <data type="ID"/>
1483
- </attribute>
1484
- </optional>
1485
- <optional>
1486
- <attribute name="language"/>
1487
- </optional>
1488
- <optional>
1489
- <attribute name="script"/>
1490
- </optional>
1471
+ <define name="Annex-Section-Attributes">
1472
+ <ref name="Basic-Section-Attributes"/>
1491
1473
  <optional>
1492
1474
  <attribute name="inline-header">
1475
+ <a:documentation>Render the section number and title (if present) inline with the first paragraph of the section</a:documentation>
1493
1476
  <data type="boolean"/>
1494
1477
  </attribute>
1495
1478
  </optional>
1496
1479
  <optional>
1497
- <attribute name="obligation">
1498
- <choice>
1499
- <value>normative</value>
1500
- <value>informative</value>
1501
- </choice>
1480
+ <attribute name="type">
1481
+ <a:documentation>Semantic class of clause</a:documentation>
1502
1482
  </attribute>
1503
1483
  </optional>
1504
- <optional>
1505
- <attribute name="type"/>
1506
- </optional>
1507
1484
  </define>
1508
1485
  <define name="Annex-Section-Body">
1509
1486
  <optional>
1510
- <ref name="section-title"/>
1487
+ <ref name="section-title">
1488
+ <a:documentation>Title of clause</a:documentation>
1489
+ </ref>
1511
1490
  </optional>
1512
1491
  <group>
1513
1492
  <zeroOrMore>
1493
+ <a:documentation>Hanging paragraphs: Annexes permit top-level blocks that are not part of a subsection</a:documentation>
1514
1494
  <ref name="BasicBlock"/>
1515
1495
  </zeroOrMore>
1516
1496
  <zeroOrMore>
1517
1497
  <choice>
1498
+ <a:documentation>Subclauses of the annex: these can include terms, definitions, and references</a:documentation>
1518
1499
  <ref name="annex-subsection"/>
1519
1500
  <ref name="terms"/>
1520
1501
  <ref name="definitions"/>
@@ -1540,16 +1521,23 @@
1540
1521
  </element>
1541
1522
  </define>
1542
1523
  <define name="terms">
1524
+ <a:documentation>Terms sections give elaborated definitions of terms used in a standardization document</a:documentation>
1543
1525
  <element name="terms">
1544
1526
  <ref name="Section-Attributes"/>
1545
1527
  <optional>
1546
- <attribute name="type"/>
1528
+ <attribute name="type">
1529
+ <a:documentation>Semantic class of clause</a:documentation>
1530
+ </attribute>
1547
1531
  </optional>
1548
1532
  <optional>
1549
- <ref name="section-title"/>
1533
+ <ref name="section-title">
1534
+ <a:documentation>Title of clause</a:documentation>
1535
+ </ref>
1550
1536
  </optional>
1551
1537
  <zeroOrMore>
1552
- <ref name="BasicBlock"/>
1538
+ <ref name="BasicBlock">
1539
+ <a:documentation>Prefatory material</a:documentation>
1540
+ </ref>
1553
1541
  </zeroOrMore>
1554
1542
  <choice>
1555
1543
  <oneOrMore>
@@ -1570,49 +1558,60 @@
1570
1558
  </element>
1571
1559
  </define>
1572
1560
  <define name="term">
1561
+ <a:documentation>Terminology entry with its definition</a:documentation>
1573
1562
  <element name="term">
1574
- <optional>
1575
- <attribute name="id">
1576
- <data type="ID"/>
1577
- </attribute>
1578
- </optional>
1579
- <optional>
1580
- <attribute name="language"/>
1581
- </optional>
1582
- <optional>
1583
- <attribute name="script"/>
1584
- </optional>
1563
+ <ref name="OptionalId"/>
1564
+ <ref name="LocalizedStringAttributes"/>
1585
1565
  <ref name="BlockAttributes"/>
1586
1566
  <oneOrMore>
1587
- <ref name="preferred"/>
1567
+ <ref name="preferred">
1568
+ <a:documentation>One or more names under which the term being defined is canonically known</a:documentation>
1569
+ </ref>
1588
1570
  </oneOrMore>
1589
1571
  <zeroOrMore>
1590
- <ref name="admitted"/>
1572
+ <ref name="admitted">
1573
+ <a:documentation>Zero or more names which are acceptable synonyms for the term being defined</a:documentation>
1574
+ </ref>
1591
1575
  </zeroOrMore>
1592
1576
  <zeroOrMore>
1593
- <ref name="deprecates"/>
1577
+ <ref name="deprecates">
1578
+ <a:documentation>Zero or more names which are deprecated synonyms for the term being defined</a:documentation>
1579
+ </ref>
1594
1580
  </zeroOrMore>
1595
1581
  <zeroOrMore>
1596
- <ref name="related"/>
1582
+ <ref name="related">
1583
+ <a:documentation>Zero or more names which are related to the term being defined. </a:documentation>
1584
+ </ref>
1597
1585
  </zeroOrMore>
1598
1586
  <optional>
1599
- <ref name="termdomain"/>
1587
+ <ref name="termdomain">
1588
+ <a:documentation>An optional semantic domain for the term being defined,
1589
+ in case the term is ambiguous between several semantic domains</a:documentation>
1590
+ </ref>
1600
1591
  </optional>
1601
1592
  <optional>
1602
- <ref name="termsubject"/>
1593
+ <ref name="termsubject">
1594
+ <a:documentation>Subject of the term</a:documentation>
1595
+ </ref>
1603
1596
  </optional>
1604
1597
  <oneOrMore>
1605
- <ref name="termdefinition"/>
1598
+ <ref name="termdefinition">
1599
+ <a:documentation>The definition of the term applied in the current document</a:documentation>
1600
+ </ref>
1606
1601
  </oneOrMore>
1607
1602
  <zeroOrMore>
1608
- <ref name="termnote"/>
1609
- </zeroOrMore>
1610
- <zeroOrMore>
1611
- <ref name="termexample"/>
1603
+ <ref name="termnote">
1604
+ <a:documentation>Zero or more notes about the term</a:documentation>
1605
+ </ref>
1612
1606
  </zeroOrMore>
1613
1607
  <zeroOrMore>
1614
- <ref name="termsource"/>
1608
+ <ref name="termexample">
1609
+ <a:documentation>Zero or more examples of how the term is to be used</a:documentation>
1610
+ </ref>
1615
1611
  </zeroOrMore>
1612
+ <ref name="TermSource">
1613
+ <a:documentation>Bibliographic references for the managed term</a:documentation>
1614
+ </ref>
1616
1615
  </element>
1617
1616
  </define>
1618
1617
  <define name="preferred">
@@ -1626,32 +1625,53 @@
1626
1625
  </element>
1627
1626
  </define>
1628
1627
  <define name="related">
1628
+ <a:documentation>Term related to the current term</a:documentation>
1629
1629
  <element name="related">
1630
1630
  <attribute name="type">
1631
+ <a:documentation>Type of relation of term applicable</a:documentation>
1631
1632
  <ref name="RelatedTermType"/>
1632
1633
  </attribute>
1633
1634
  <element name="preferred">
1635
+ <a:documentation>Preferred designation of the term related to the current term</a:documentation>
1634
1636
  <ref name="Designation"/>
1635
1637
  </element>
1636
1638
  <choice>
1637
- <ref name="eref"/>
1638
- <ref name="erefstack"/>
1639
- <ref name="xref"/>
1640
- <ref name="termref"/>
1639
+ <ref name="eref">
1640
+ <a:documentation>Link to a definition of the term in a bibliographic entry</a:documentation>
1641
+ </ref>
1642
+ <ref name="erefstack">
1643
+ <a:documentation>Stack of links to a definition of the term in a bibliographic entry</a:documentation>
1644
+ </ref>
1645
+ <ref name="xref">
1646
+ <a:documentation>Link to a definition of the term in an element of the current document</a:documentation>
1647
+ </ref>
1648
+ <ref name="termref">
1649
+ <a:documentation>Link to a definition of the term in a termbase</a:documentation>
1650
+ </ref>
1641
1651
  </choice>
1642
1652
  </element>
1643
1653
  </define>
1644
1654
  <define name="RelatedTermType">
1655
+ <a:documentation>The relation of a term to the current term</a:documentation>
1645
1656
  <choice>
1646
1657
  <value>deprecates</value>
1658
+ <a:documentation>The current term deprecates the related term</a:documentation>
1647
1659
  <value>supersedes</value>
1660
+ <a:documentation>The current term supersedes the related term</a:documentation>
1648
1661
  <value>narrower</value>
1662
+ <a:documentation>The current term is narrower in denotation than the related term</a:documentation>
1649
1663
  <value>broader</value>
1664
+ <a:documentation>The current term is broader in denotation than the related term</a:documentation>
1650
1665
  <value>equivalent</value>
1666
+ <a:documentation>The current term is equivalent in denotation to the related term</a:documentation>
1651
1667
  <value>compare</value>
1668
+ <a:documentation>The current term may be compared to the related term</a:documentation>
1652
1669
  <value>contrast</value>
1670
+ <a:documentation>The current term is understood in contrast to the related term</a:documentation>
1653
1671
  <value>see</value>
1672
+ <a:documentation>For a better understanding of the current term, one should see the related term</a:documentation>
1654
1673
  <value>seealso</value>
1674
+ <a:documentation>For a better understanding of the current term, one should also see the related term</a:documentation>
1655
1675
  </choice>
1656
1676
  </define>
1657
1677
  <define name="deprecates">
@@ -1660,28 +1680,42 @@
1660
1680
  </element>
1661
1681
  </define>
1662
1682
  <define name="Designation">
1683
+ <a:documentation>A name under which a managed term is known</a:documentation>
1663
1684
  <optional>
1664
1685
  <attribute name="absent">
1686
+ <a:documentation>Indication that the term designation is missing</a:documentation>
1665
1687
  <data type="boolean"/>
1666
1688
  </attribute>
1667
1689
  </optional>
1668
1690
  <optional>
1669
- <attribute name="geographic-area"/>
1691
+ <attribute name="geographic-area">
1692
+ <a:documentation>The geographic area in which the managed term is known under this designation</a:documentation>
1693
+ </attribute>
1670
1694
  </optional>
1671
1695
  <choice>
1672
- <ref name="expression_designation"/>
1673
- <ref name="letter_symbol_designation"/>
1674
- <ref name="graphical_symbol_designation"/>
1696
+ <ref name="expression_designation">
1697
+ <a:documentation>Realisation of a designation as a linguistic form</a:documentation>
1698
+ </ref>
1699
+ <ref name="letter_symbol_designation">
1700
+ <a:documentation>Realisation of a designation as a letter or symbol</a:documentation>
1701
+ </ref>
1702
+ <ref name="graphical_symbol_designation">
1703
+ <a:documentation>Realisation of a designation as a graphical rendering</a:documentation>
1704
+ </ref>
1675
1705
  </choice>
1676
1706
  <optional>
1677
- <ref name="fieldofapplication"/>
1707
+ <ref name="fieldofapplication">
1708
+ <a:documentation>Information about what field/domain the designation is specifically applied to</a:documentation>
1709
+ </ref>
1678
1710
  </optional>
1679
1711
  <optional>
1680
- <ref name="usageinfo"/>
1712
+ <ref name="usageinfo">
1713
+ <a:documentation>Information about how the designation is to be used</a:documentation>
1714
+ </ref>
1681
1715
  </optional>
1682
- <zeroOrMore>
1683
- <ref name="termsource"/>
1684
- </zeroOrMore>
1716
+ <ref name="TermSource">
1717
+ <a:documentation>Bibliographic references for this designation of the managed term</a:documentation>
1718
+ </ref>
1685
1719
  </define>
1686
1720
  <define name="fieldofapplication">
1687
1721
  <element name="field-of-application">
@@ -1698,23 +1732,22 @@
1698
1732
  </element>
1699
1733
  </define>
1700
1734
  <define name="letter_symbol_designation">
1735
+ <a:documentation>Designation realised as a letter, symbol, formula, equation</a:documentation>
1701
1736
  <element name="letter-symbol">
1702
1737
  <optional>
1703
1738
  <attribute name="isInternational">
1739
+ <a:documentation>Whether the designation is the same across languages, or language-specific </a:documentation>
1704
1740
  <data type="boolean"/>
1705
1741
  </attribute>
1706
1742
  </optional>
1707
1743
  <optional>
1708
1744
  <attribute name="type">
1709
- <choice>
1710
- <value>letter</value>
1711
- <value>symbol</value>
1712
- <value>formula</value>
1713
- <value>equation</value>
1714
- </choice>
1745
+ <a:documentation>Type of symbolic designation</a:documentation>
1746
+ <ref name="LetterSymbolType"/>
1715
1747
  </attribute>
1716
1748
  </optional>
1717
1749
  <element name="name">
1750
+ <a:documentation>The symbolic form of the designation</a:documentation>
1718
1751
  <oneOrMore>
1719
1752
  <choice>
1720
1753
  <ref name="PureTextElement"/>
@@ -1724,139 +1757,183 @@
1724
1757
  </element>
1725
1758
  </element>
1726
1759
  </define>
1760
+ <define name="LetterSymbolType">
1761
+ <a:documentation>The type of a symbol-like designation</a:documentation>
1762
+ <choice>
1763
+ <value>letter</value>
1764
+ <a:documentation>A letter, possibly subscripted or superscripted, intended to denote some property that it abbreviates</a:documentation>
1765
+ <value>symbol</value>
1766
+ <a:documentation>A non-letter, intended to represent some property</a:documentation>
1767
+ <value>formula</value>
1768
+ <a:documentation>A mathematical formula</a:documentation>
1769
+ <value>equation</value>
1770
+ <a:documentation>A mathematical equation (or inequation)</a:documentation>
1771
+ </choice>
1772
+ </define>
1727
1773
  <define name="graphical_symbol_designation">
1774
+ <a:documentation>Designation realised as a graphical symbol</a:documentation>
1728
1775
  <element name="graphical-symbol">
1729
1776
  <optional>
1730
1777
  <attribute name="isInternational">
1778
+ <a:documentation>Whether the designation is the same across languages, or language-specific</a:documentation>
1731
1779
  <data type="boolean"/>
1732
1780
  </attribute>
1733
1781
  </optional>
1734
- <ref name="figure"/>
1782
+ <ref name="figure">
1783
+ <a:documentation>The graphical form of the designation</a:documentation>
1784
+ </ref>
1735
1785
  </element>
1736
1786
  </define>
1737
1787
  <define name="expression_designation">
1788
+ <a:documentation>A designation realised as a linguistic form</a:documentation>
1738
1789
  <element name="expression">
1739
- <optional>
1740
- <attribute name="language">
1741
- <a:documentation>ISO-639</a:documentation>
1742
- </attribute>
1743
- </optional>
1744
- <optional>
1745
- <attribute name="script">
1746
- <a:documentation>ISO-15924</a:documentation>
1747
- </attribute>
1748
- </optional>
1790
+ <ref name="LocalizedStringAttributes"/>
1749
1791
  <optional>
1750
1792
  <attribute name="type">
1793
+ <a:documentation>The type of linguistic form used as designation</a:documentation>
1751
1794
  <ref name="ExpressionDesignationType"/>
1752
1795
  </attribute>
1753
1796
  </optional>
1754
1797
  <optional>
1755
1798
  <attribute name="isInternational">
1799
+ <a:documentation>Whether the designation (typically an abbreviation) is the same across languages, or language-specific</a:documentation>
1756
1800
  <data type="boolean"/>
1757
1801
  </attribute>
1758
1802
  </optional>
1759
1803
  <element name="name">
1804
+ <a:documentation>The textual form of the designation</a:documentation>
1760
1805
  <zeroOrMore>
1761
1806
  <choice>
1762
1807
  <ref name="PureTextElement"/>
1763
1808
  <ref name="stem"/>
1764
1809
  <ref name="index"/>
1810
+ <ref name="index-xref"/>
1765
1811
  </choice>
1766
1812
  </zeroOrMore>
1767
1813
  </element>
1768
1814
  <optional>
1769
1815
  <element name="abbreviation-type">
1816
+ <a:documentation>Type of abbreviation that constitutes the designation, according to how it is formed</a:documentation>
1770
1817
  <ref name="AbbreviationType"/>
1771
1818
  </element>
1772
1819
  </optional>
1773
1820
  <optional>
1774
1821
  <element name="pronunciation">
1822
+ <a:documentation>A pronunciation guide to the designation</a:documentation>
1775
1823
  <ref name="LocalizedString"/>
1776
1824
  </element>
1777
1825
  </optional>
1778
1826
  <optional>
1779
1827
  <element name="grammar">
1828
+ <a:documentation>Grammatical information about the designation</a:documentation>
1780
1829
  <ref name="Grammar"/>
1781
1830
  </element>
1782
1831
  </optional>
1783
1832
  </element>
1784
1833
  </define>
1785
1834
  <define name="ExpressionDesignationType">
1835
+ <a:documentation>Type of linguistic form used as designation</a:documentation>
1786
1836
  <choice>
1787
1837
  <value>prefix</value>
1838
+ <a:documentation>The form is a prefix</a:documentation>
1788
1839
  <value>suffix</value>
1840
+ <a:documentation>The form is a suffix</a:documentation>
1789
1841
  <value>abbreviation</value>
1842
+ <a:documentation>The form is an abbreviation</a:documentation>
1790
1843
  <value>full</value>
1844
+ <a:documentation>The form is a self-standing linguistic expression</a:documentation>
1791
1845
  </choice>
1792
1846
  </define>
1793
1847
  <define name="AbbreviationType">
1848
+ <a:documentation>Type of abbreviation, according to how it is formed</a:documentation>
1794
1849
  <choice>
1795
1850
  <value>truncation</value>
1851
+ <a:documentation>Abbrevation formed by truncating constituent words</a:documentation>
1796
1852
  <value>acronym</value>
1853
+ <a:documentation>Abbrevation formed from the initials of its constituent words, and pronounced as a new word</a:documentation>
1797
1854
  <value>initialism</value>
1855
+ <a:documentation>Abbrevation formed from the initials of its constituent words, and pronounced as a sequence of letters</a:documentation>
1798
1856
  </choice>
1799
1857
  </define>
1800
1858
  <define name="Grammar">
1859
+ <a:documentation>Grammatical information about a designation</a:documentation>
1801
1860
  <zeroOrMore>
1802
1861
  <element name="gender">
1862
+ <a:documentation>The grammatical gender of the designation</a:documentation>
1803
1863
  <ref name="GrammarGender"/>
1804
1864
  </element>
1805
1865
  </zeroOrMore>
1806
1866
  <zeroOrMore>
1807
1867
  <element name="number">
1868
+ <a:documentation>The grammatical number of the designation</a:documentation>
1808
1869
  <ref name="GrammarNumber"/>
1809
1870
  </element>
1810
1871
  </zeroOrMore>
1811
1872
  <optional>
1812
1873
  <element name="isPreposition">
1874
+ <a:documentation>The designation is a preposition</a:documentation>
1813
1875
  <data type="boolean"/>
1814
1876
  </element>
1815
1877
  </optional>
1816
1878
  <optional>
1817
1879
  <element name="isParticiple">
1880
+ <a:documentation>The designation is a participle</a:documentation>
1818
1881
  <data type="boolean"/>
1819
1882
  </element>
1820
1883
  </optional>
1821
1884
  <optional>
1822
1885
  <element name="isAdjective">
1886
+ <a:documentation>The designation is an adjective</a:documentation>
1823
1887
  <data type="boolean"/>
1824
1888
  </element>
1825
1889
  </optional>
1826
1890
  <optional>
1827
1891
  <element name="isVerb">
1892
+ <a:documentation>The designation is a verb</a:documentation>
1828
1893
  <data type="boolean"/>
1829
1894
  </element>
1830
1895
  </optional>
1831
1896
  <optional>
1832
1897
  <element name="isAdverb">
1898
+ <a:documentation>The designation is an adverb</a:documentation>
1833
1899
  <data type="boolean"/>
1834
1900
  </element>
1835
1901
  </optional>
1836
1902
  <optional>
1837
1903
  <element name="isNoun">
1904
+ <a:documentation>The designation is a noun</a:documentation>
1838
1905
  <data type="boolean"/>
1839
1906
  </element>
1840
1907
  </optional>
1841
1908
  <zeroOrMore>
1842
1909
  <element name="grammar-value">
1910
+ <a:documentation>Miscellaneous grammatical information</a:documentation>
1843
1911
  <text/>
1844
1912
  </element>
1845
1913
  </zeroOrMore>
1846
1914
  </define>
1847
1915
  <define name="GrammarGender">
1916
+ <a:documentation>The grammatical gender of the designation</a:documentation>
1848
1917
  <choice>
1849
1918
  <value>masculine</value>
1919
+ <a:documentation>Masculine gender</a:documentation>
1850
1920
  <value>feminine</value>
1921
+ <a:documentation>Feminine gender</a:documentation>
1851
1922
  <value>neuter</value>
1923
+ <a:documentation>Neuter gender</a:documentation>
1852
1924
  <value>common</value>
1925
+ <a:documentation>Masculine + Feminine gender</a:documentation>
1853
1926
  </choice>
1854
1927
  </define>
1855
1928
  <define name="GrammarNumber">
1929
+ <a:documentation>The grammatical number of the designation</a:documentation>
1856
1930
  <choice>
1857
1931
  <value>singular</value>
1932
+ <a:documentation>Singular number</a:documentation>
1858
1933
  <value>dual</value>
1934
+ <a:documentation>Dual number</a:documentation>
1859
1935
  <value>plural</value>
1936
+ <a:documentation>Plural number</a:documentation>
1860
1937
  </choice>
1861
1938
  </define>
1862
1939
  <define name="termdomain">
@@ -1874,13 +1951,20 @@
1874
1951
  </element>
1875
1952
  </define>
1876
1953
  <define name="termdefinition">
1954
+ <a:documentation>The definition of a term applied in the current document</a:documentation>
1877
1955
  <element name="definition">
1878
1956
  <optional>
1879
- <attribute name="type"/>
1957
+ <attribute name="type">
1958
+ <a:documentation>Type of definition, used to differentiate it from other definitions of the same term if present</a:documentation>
1959
+ </attribute>
1880
1960
  </optional>
1881
1961
  <choice>
1882
- <ref name="verbaldefinition"/>
1883
- <ref name="nonverbalrep"/>
1962
+ <ref name="verbaldefinition">
1963
+ <a:documentation>The content of the definition of the term applied in the current document</a:documentation>
1964
+ </ref>
1965
+ <ref name="nonverbalrep">
1966
+ <a:documentation>Non-verbal representation of the term applied in the current document</a:documentation>
1967
+ </ref>
1884
1968
  <group>
1885
1969
  <ref name="verbaldefinition"/>
1886
1970
  <ref name="nonverbalrep"/>
@@ -1892,6 +1976,7 @@
1892
1976
  <element name="verbal-definition">
1893
1977
  <oneOrMore>
1894
1978
  <choice>
1979
+ <a:documentation>Content of the verbal representation of the term</a:documentation>
1895
1980
  <ref name="paragraph"/>
1896
1981
  <ref name="dl"/>
1897
1982
  <ref name="ol"/>
@@ -1901,44 +1986,35 @@
1901
1986
  <ref name="formula"/>
1902
1987
  </choice>
1903
1988
  </oneOrMore>
1904
- <zeroOrMore>
1905
- <ref name="termsource"/>
1906
- </zeroOrMore>
1989
+ <ref name="TermSource">
1990
+ <a:documentation>Bibliographic references for this designation of the managed term</a:documentation>
1991
+ </ref>
1907
1992
  </element>
1908
1993
  </define>
1909
1994
  <define name="nonverbalrep">
1995
+ <a:documentation>Non-verbal representation of the term</a:documentation>
1910
1996
  <element name="non-verbal-representation">
1911
1997
  <oneOrMore>
1912
1998
  <choice>
1999
+ <a:documentation>Content of the non-verbal representation of the term</a:documentation>
1913
2000
  <ref name="table"/>
1914
2001
  <ref name="figure"/>
1915
2002
  <ref name="formula"/>
1916
2003
  </choice>
1917
2004
  </oneOrMore>
1918
- <zeroOrMore>
1919
- <ref name="termsource"/>
1920
- </zeroOrMore>
2005
+ <ref name="TermSource">
2006
+ <a:documentation>Bibliographic references for this designation of the managed term</a:documentation>
2007
+ </ref>
1921
2008
  </element>
1922
2009
  </define>
1923
2010
  <define name="termnote">
1924
2011
  <element name="termnote">
1925
- <attribute name="id">
1926
- <data type="ID"/>
1927
- </attribute>
1928
- <optional>
1929
- <attribute name="unnumbered">
1930
- <data type="boolean"/>
1931
- </attribute>
1932
- </optional>
1933
- <optional>
1934
- <attribute name="number"/>
1935
- </optional>
1936
- <optional>
1937
- <attribute name="subsequence"/>
1938
- </optional>
2012
+ <ref name="RequiredId"/>
2013
+ <ref name="NumberingAttributes"/>
1939
2014
  <ref name="BlockAttributes"/>
1940
2015
  <oneOrMore>
1941
2016
  <choice>
2017
+ <a:documentation>Content of the term note</a:documentation>
1942
2018
  <ref name="paragraph"/>
1943
2019
  <ref name="ul"/>
1944
2020
  <ref name="ol"/>
@@ -1950,12 +2026,11 @@
1950
2026
  </define>
1951
2027
  <define name="termexample">
1952
2028
  <element name="termexample">
1953
- <attribute name="id">
1954
- <data type="ID"/>
1955
- </attribute>
2029
+ <ref name="RequiredId"/>
1956
2030
  <ref name="BlockAttributes"/>
1957
2031
  <oneOrMore>
1958
2032
  <choice>
2033
+ <a:documentation>Content of the term example</a:documentation>
1959
2034
  <ref name="formula"/>
1960
2035
  <ref name="ul"/>
1961
2036
  <ref name="ol"/>
@@ -1969,32 +2044,56 @@
1969
2044
  </element>
1970
2045
  </define>
1971
2046
  <define name="termsource">
2047
+ <a:documentation>The bibliographic source where a term is defined in the sense applicable in this standardisation document</a:documentation>
1972
2048
  <element name="termsource">
1973
2049
  <attribute name="status">
2050
+ <a:documentation>The status of the term as it is used in this document, relative to its definition in the original document</a:documentation>
1974
2051
  <ref name="SourceStatusType"/>
1975
2052
  </attribute>
1976
2053
  <attribute name="type">
1977
- <choice>
1978
- <value>authoritative</value>
1979
- <value>lineage</value>
1980
- </choice>
2054
+ <a:documentation>The type of the managed term in the present context</a:documentation>
2055
+ <ref name="SourceTypeType"/>
1981
2056
  </attribute>
1982
- <ref name="origin"/>
2057
+ <ref name="origin">
2058
+ <a:documentation>The original document and location where the term definition has been obtained from</a:documentation>
2059
+ </ref>
1983
2060
  <optional>
1984
- <ref name="modification"/>
2061
+ <ref name="modification">
2062
+ <a:documentation>Any changes that the definition of the term has undergone relative to the original document,
2063
+ in order to be applicable in this standardisation document</a:documentation>
2064
+ </ref>
1985
2065
  </optional>
1986
2066
  </element>
1987
2067
  </define>
1988
2068
  <define name="SourceStatusType">
2069
+ <a:documentation>The status of a term as it is used in this document, relative to its definition in the original document</a:documentation>
1989
2070
  <choice>
1990
2071
  <value>identical</value>
2072
+ <a:documentation>The managed term in the present context is identical to the term as found in the bibliographic source</a:documentation>
1991
2073
  <value>modified</value>
2074
+ <a:documentation>The managed term in the present context has been modified from the term as found in the bibliographic source</a:documentation>
1992
2075
  <value>adapted</value>
2076
+ <a:documentation>The managed term in the present context has been modified from the term as found in the bibliographic source, in order
2077
+ to better fit some local requirement, though still with the intent of retaining the original meaning as much as possible</a:documentation>
1993
2078
  <value>restyled</value>
2079
+ <a:documentation>The managed term in the present context has been restyled from the term as found in the bibliographic source</a:documentation>
1994
2080
  <value>context-added</value>
2081
+ <a:documentation>The managed term in the present context has had context added to it, relative to the term as found in the bibliographic source</a:documentation>
1995
2082
  <value>generalisation</value>
2083
+ <a:documentation>The managed term in the present context is a generalisation of the term as found in the bibliographic source</a:documentation>
1996
2084
  <value>specialisation</value>
2085
+ <a:documentation>The managed term in the present context is a specialisation of the term as found in the bibliographic source</a:documentation>
1997
2086
  <value>unspecified</value>
2087
+ <a:documentation>The managed term in the present context is in an unspecified relation to the term as found in the bibliographic source</a:documentation>
2088
+ </choice>
2089
+ </define>
2090
+ <define name="SourceTypeType">
2091
+ <a:documentation>The type of the managed term in the present context</a:documentation>
2092
+ <choice>
2093
+ <value>authoritative</value>
2094
+ <a:documentation>The managed term is authoritative in the present context</a:documentation>
2095
+ <value>lineage</value>
2096
+ <a:documentation>The managed term constitutes lineage in the present context</a:documentation>
1998
2097
  </choice>
1999
2098
  </define>
2000
2099
  <define name="origin">
@@ -2011,45 +2110,37 @@
2011
2110
  </element>
2012
2111
  </define>
2013
2112
  <define name="termref">
2113
+ <a:documentation>Cross-reference to a term defined within a termbase</a:documentation>
2014
2114
  <element name="termref">
2015
- <attribute name="base"/>
2016
- <attribute name="target"/>
2017
- <optional>
2018
- <text/>
2019
- </optional>
2115
+ <attribute name="base">
2116
+ <a:documentation>Identifier of the termbase</a:documentation>
2117
+ </attribute>
2118
+ <attribute name="target">
2119
+ <a:documentation>Identifier of the term within the termbase</a:documentation>
2120
+ </attribute>
2121
+ <zeroOrMore>
2122
+ <ref name="PureTextElement">
2123
+ <a:documentation>Text to display for the cross-reference to the term</a:documentation>
2124
+ </ref>
2125
+ </zeroOrMore>
2020
2126
  </element>
2021
2127
  </define>
2022
2128
  <define name="term-clause">
2023
2129
  <element name="clause">
2024
- <optional>
2025
- <attribute name="id">
2026
- <data type="ID"/>
2027
- </attribute>
2028
- </optional>
2029
- <optional>
2030
- <attribute name="language"/>
2031
- </optional>
2032
- <optional>
2033
- <attribute name="script"/>
2034
- </optional>
2130
+ <ref name="Basic-Section-Attributes"/>
2035
2131
  <optional>
2036
2132
  <attribute name="inline-header">
2133
+ <a:documentation>Render the section number and title (if present) inline with the first paragraph of the section</a:documentation>
2037
2134
  <data type="boolean"/>
2038
2135
  </attribute>
2039
2136
  </optional>
2040
- <optional>
2041
- <attribute name="obligation">
2042
- <choice>
2043
- <value>normative</value>
2044
- <value>informative</value>
2045
- </choice>
2046
- </attribute>
2047
- </optional>
2048
2137
  <optional>
2049
2138
  <ref name="section-title"/>
2050
2139
  </optional>
2051
2140
  <zeroOrMore>
2052
- <ref name="BasicBlock"/>
2141
+ <ref name="BasicBlock">
2142
+ <a:documentation>Prefatory text</a:documentation>
2143
+ </ref>
2053
2144
  </zeroOrMore>
2054
2145
  <zeroOrMore>
2055
2146
  <choice>
@@ -2066,8 +2157,10 @@
2066
2157
  </element>
2067
2158
  </define>
2068
2159
  <define name="autonumber">
2160
+ <a:documentation>Specification of how blocks of a given class should be autonumbered within an AmendBlock newContent element</a:documentation>
2069
2161
  <element name="autonumber">
2070
2162
  <attribute name="type">
2163
+ <a:documentation>The class of block to apply autonumbering to, within an AmendBlock newContent element</a:documentation>
2071
2164
  <choice>
2072
2165
  <value>requirement</value>
2073
2166
  <value>recommendation</value>
@@ -2081,88 +2174,119 @@
2081
2174
  <value>note</value>
2082
2175
  </choice>
2083
2176
  </attribute>
2084
- <text/>
2177
+ <text>
2178
+ <a:documentation>The starting value of numbering for the blocks with that class</a:documentation>
2179
+ </text>
2085
2180
  </element>
2086
2181
  </define>
2087
2182
  <define name="imagemap">
2183
+ <a:documentation>Wrapper around an image file, to specify an image map, with areas of an image being hyperlinked</a:documentation>
2088
2184
  <element name="imagemap">
2089
2185
  <ref name="BlockAttributes"/>
2090
- <ref name="figure"/>
2186
+ <ref name="figure">
2187
+ <a:documentation>the image to be hyperlinked</a:documentation>
2188
+ </ref>
2091
2189
  <zeroOrMore>
2092
- <element name="area">
2093
- <attribute name="type">
2094
- <choice>
2095
- <value>rect</value>
2096
- <value>circle</value>
2097
- <value>ellipse</value>
2098
- <value>poly</value>
2099
- </choice>
2190
+ <ref name="imagemaparea">
2191
+ <a:documentation>Specification of an area of an image to be hyperlinked, as part of an image map</a:documentation>
2192
+ </ref>
2193
+ </zeroOrMore>
2194
+ </element>
2195
+ </define>
2196
+ <define name="imagemaparea">
2197
+ <a:documentation>Specification of an area of an image to be hyperlinked, as part of an image map</a:documentation>
2198
+ <element name="area">
2199
+ <attribute name="type">
2200
+ <a:documentation>Type of an image map area of an image that is hyperlinked</a:documentation>
2201
+ <choice>
2202
+ <value>rect</value>
2203
+ <value>circle</value>
2204
+ <value>ellipse</value>
2205
+ <value>poly</value>
2206
+ </choice>
2207
+ </attribute>
2208
+ <choice>
2209
+ <a:documentation>Element that this image map area links to</a:documentation>
2210
+ <ref name="xref"/>
2211
+ <ref name="hyperlink"/>
2212
+ <ref name="eref"/>
2213
+ <ref name="erefstack"/>
2214
+ </choice>
2215
+ <oneOrMore>
2216
+ <element name="coords">
2217
+ <a:documentation>Polygon defined shape of the image map area</a:documentation>
2218
+ <attribute name="x">
2219
+ <a:documentation>X-coordinate of a coordinate point</a:documentation>
2220
+ <data type="float"/>
2221
+ </attribute>
2222
+ <attribute name="y">
2223
+ <a:documentation>Y-coordinate of a coordinate point</a:documentation>
2224
+ <data type="float"/>
2225
+ </attribute>
2226
+ </element>
2227
+ </oneOrMore>
2228
+ <optional>
2229
+ <element name="radius">
2230
+ <a:documentation>Radius-defined shape of the image map area</a:documentation>
2231
+ <attribute name="x">
2232
+ <a:documentation>X-coordinate of the center of a circle area within the image map</a:documentation>
2233
+ <data type="float"/>
2100
2234
  </attribute>
2101
- <choice>
2102
- <ref name="xref"/>
2103
- <ref name="hyperlink"/>
2104
- <ref name="eref"/>
2105
- <ref name="erefstack"/>
2106
- </choice>
2107
- <oneOrMore>
2108
- <element name="coords">
2109
- <attribute name="x">
2110
- <data type="float"/>
2111
- </attribute>
2112
- <attribute name="y">
2113
- <data type="float"/>
2114
- </attribute>
2115
- </element>
2116
- </oneOrMore>
2117
2235
  <optional>
2118
- <element name="radius">
2119
- <attribute name="x">
2120
- <data type="float"/>
2121
- </attribute>
2122
- <optional>
2123
- <attribute name="y">
2124
- <data type="float"/>
2125
- </attribute>
2126
- </optional>
2127
- </element>
2236
+ <attribute name="y">
2237
+ <a:documentation>Y-coordinate of the center of a circle area within the image map</a:documentation>
2238
+ <data type="float"/>
2239
+ </attribute>
2128
2240
  </optional>
2129
2241
  </element>
2130
- </zeroOrMore>
2242
+ </optional>
2131
2243
  </element>
2132
2244
  </define>
2133
2245
  <define name="svgmap">
2246
+ <a:documentation>Wrapper around an SVG file, to update its hyperlinks with potentially document-specific
2247
+ links, so that the SVG file can hyperlink to anchors within the document</a:documentation>
2134
2248
  <element name="svgmap">
2135
2249
  <ref name="BlockAttributes"/>
2136
- <ref name="figure"/>
2250
+ <ref name="figure">
2251
+ <a:documentation>The SVG file to be updated</a:documentation>
2252
+ </ref>
2137
2253
  <zeroOrMore>
2138
- <element name="target">
2139
- <attribute name="href">
2140
- <data type="anyURI"/>
2141
- </attribute>
2142
- <choice>
2143
- <ref name="xref"/>
2144
- <ref name="hyperlink"/>
2145
- <ref name="eref"/>
2146
- <ref name="erefstack"/>
2147
- </choice>
2148
- </element>
2254
+ <ref name="svg_target">
2255
+ <a:documentation>Specification of the cross-references to update the SVG file with</a:documentation>
2256
+ </ref>
2149
2257
  </zeroOrMore>
2150
2258
  </element>
2151
2259
  </define>
2260
+ <define name="svg_target">
2261
+ <a:documentation>Specification of (potentially document-specific) cross-references, to overwrite the
2262
+ links within an SVG file, so that the SVG file can hyperlink to anchors within the document</a:documentation>
2263
+ <element name="target">
2264
+ <attribute name="href">
2265
+ <a:documentation>The value of the `href` attribute in the SVG file to be overwritten</a:documentation>
2266
+ <data type="anyURI"/>
2267
+ </attribute>
2268
+ <choice>
2269
+ <a:documentation>The cross-reference or hyperlink, whose value is to overwrite the value of the `href` attribute in the SVG file</a:documentation>
2270
+ <ref name="xref"/>
2271
+ <ref name="hyperlink"/>
2272
+ <ref name="eref"/>
2273
+ <ref name="erefstack"/>
2274
+ </choice>
2275
+ </element>
2276
+ </define>
2152
2277
  <define name="ul_li">
2278
+ <a:documentation>Unorderd list item for standards documents</a:documentation>
2153
2279
  <element name="li">
2154
- <optional>
2155
- <attribute name="id">
2156
- <data type="ID"/>
2157
- </attribute>
2158
- </optional>
2280
+ <ref name="OptionalId"/>
2159
2281
  <optional>
2160
2282
  <attribute name="uncheckedcheckbox">
2283
+ <a:documentation>Include a checkbox for the list item</a:documentation>
2161
2284
  <data type="boolean"/>
2162
2285
  </attribute>
2163
2286
  </optional>
2164
2287
  <optional>
2165
2288
  <attribute name="checkedcheckbox">
2289
+ <a:documentation>Check the checkbox for the list item</a:documentation>
2166
2290
  <data type="boolean"/>
2167
2291
  </attribute>
2168
2292
  </optional>
@@ -2172,70 +2296,22 @@
2172
2296
  </element>
2173
2297
  </define>
2174
2298
  <define name="floating-title">
2299
+ <a:documentation>A floating title, outside of the clause hierarchy of the document</a:documentation>
2175
2300
  <element name="floating-title">
2176
- <attribute name="id">
2177
- <data type="ID"/>
2178
- </attribute>
2301
+ <ref name="RequiredId"/>
2179
2302
  <attribute name="depth">
2303
+ <a:documentation>The ostensive depth of the floating title in the clause hierarchy: which level heading it should be presented as</a:documentation>
2180
2304
  <data type="int"/>
2181
2305
  </attribute>
2182
2306
  <zeroOrMore>
2183
- <ref name="TextElement"/>
2307
+ <ref name="TextElement">
2308
+ <a:documentation>Textual content of the floating title</a:documentation>
2309
+ </ref>
2184
2310
  </zeroOrMore>
2185
2311
  </element>
2186
2312
  </define>
2187
- <define name="XrefAttributes">
2188
- <attribute name="target">
2189
- <data type="string">
2190
- <param name="pattern">\i\c*|\c+#\c+</param>
2191
- </data>
2192
- </attribute>
2193
- <optional>
2194
- <attribute name="to">
2195
- <data type="string">
2196
- <param name="pattern">\i\c*|\c+#\c+</param>
2197
- </data>
2198
- </attribute>
2199
- </optional>
2200
- <optional>
2201
- <attribute name="type">
2202
- <ref name="ReferenceFormat"/>
2203
- </attribute>
2204
- </optional>
2205
- <optional>
2206
- <attribute name="alt"/>
2207
- </optional>
2208
- <optional>
2209
- <attribute name="case">
2210
- <choice>
2211
- <value>capital</value>
2212
- <value>lowercase</value>
2213
- </choice>
2214
- </attribute>
2215
- </optional>
2216
- <optional>
2217
- <attribute name="droploc">
2218
- <data type="boolean"/>
2219
- </attribute>
2220
- </optional>
2221
- <optional>
2222
- <attribute name="style">
2223
- <ref name="XrefStyleType"/>
2224
- </attribute>
2225
- </optional>
2226
- <optional>
2227
- <attribute name="label"/>
2228
- </optional>
2229
- </define>
2230
- <define name="XrefBody">
2231
- <zeroOrMore>
2232
- <ref name="XrefTarget"/>
2233
- </zeroOrMore>
2234
- <oneOrMore>
2235
- <ref name="PureTextElement"/>
2236
- </oneOrMore>
2237
- </define>
2238
2313
  <define name="XrefConnectiveType">
2314
+ <a:documentation>Connective linking the current cross-reference target to its predecessor</a:documentation>
2239
2315
  <choice>
2240
2316
  <value>and</value>
2241
2317
  <value>or</value>
@@ -2245,38 +2321,52 @@
2245
2321
  </choice>
2246
2322
  </define>
2247
2323
  <define name="XrefTarget">
2324
+ <a:documentation>Description of location in a reference, which can be combined with other locations in a single citation</a:documentation>
2248
2325
  <element name="location">
2249
2326
  <attribute name="target">
2327
+ <a:documentation>Anchor within the document to point to</a:documentation>
2250
2328
  <data type="string">
2251
2329
  <param name="pattern">\i\c*|\c+#\c+</param>
2252
2330
  </data>
2253
2331
  </attribute>
2254
2332
  <attribute name="connective">
2333
+ <a:documentation>Connective linking this location to its predecessor. _from/to_ are presumed to nest more closely than _and_ or _or_</a:documentation>
2255
2334
  <ref name="XrefConnectiveType"/>
2256
2335
  </attribute>
2257
2336
  </element>
2258
2337
  </define>
2259
2338
  <define name="XrefStyleType">
2339
+ <a:documentation>Style of how a cross-reference is to be rendered</a:documentation>
2260
2340
  <choice>
2261
2341
  <value>basic</value>
2342
+ <a:documentation>Render cross-reference only through the title of the element (e.g. "The hunting of the snark"</a:documentation>
2262
2343
  <value>full</value>
2344
+ <a:documentation>Render cross-reference as a combination of title and the numbering and type of the element (e.g. Chapter 3, "The hunting of the snark")</a:documentation>
2263
2345
  <value>short</value>
2346
+ <a:documentation>Default style: render cross-reference only through the numbering and type of the element (e.g. Chapter 3)</a:documentation>
2264
2347
  <value>id</value>
2265
- <text/>
2348
+ <a:documentation>Render cross-reference as the anchor or identifier used to identify the target</a:documentation>
2349
+ <text>
2350
+ <a:documentation>Extension point: User-defined rendering style (e.g. "modspec" for cross-references compliant to the OGC Modspec model of cross-referencing requirements from other requirements, independent of how those requirements are cross-referenced within a standards document.)</a:documentation>
2351
+ </text>
2266
2352
  </choice>
2267
2353
  </define>
2268
2354
  <define name="erefTypeWithConnective">
2355
+ <a:documentation>Cross-reference to an bibliographic reference within a standardisatin document, with a connective</a:documentation>
2269
2356
  <optional>
2270
2357
  <attribute name="connective">
2358
+ <a:documentation>Connective linking this location to its predecessor. _from/to_ are presumed to nest more closely than _and_ or _or_</a:documentation>
2271
2359
  <ref name="XrefConnectiveType"/>
2272
2360
  </attribute>
2273
2361
  </optional>
2274
2362
  <ref name="erefType"/>
2275
2363
  </define>
2276
2364
  <define name="erefstack">
2365
+ <a:documentation>Set of cross-references to bibliographic references within a standardisation document, joined with connectives</a:documentation>
2277
2366
  <element name="erefstack">
2278
2367
  <oneOrMore>
2279
2368
  <element name="eref">
2369
+ <a:documentation>Cross-reference to a bibliographic reference</a:documentation>
2280
2370
  <ref name="erefTypeWithConnective"/>
2281
2371
  </element>
2282
2372
  </oneOrMore>
@@ -2285,25 +2375,51 @@
2285
2375
  <define name="BlockAttributes">
2286
2376
  <optional>
2287
2377
  <attribute name="keep-with-next">
2378
+ <a:documentation>Keep this block on the same page as the following block in paged media</a:documentation>
2288
2379
  <data type="boolean"/>
2289
2380
  </attribute>
2290
2381
  </optional>
2291
2382
  <optional>
2292
2383
  <attribute name="keep-lines-together">
2384
+ <a:documentation>Do not permit a page break between the lines of the block in paged media</a:documentation>
2293
2385
  <data type="boolean"/>
2294
2386
  </attribute>
2295
2387
  </optional>
2296
2388
  <optional>
2297
- <attribute name="tag"/>
2389
+ <attribute name="tag">
2390
+ <a:documentation>Non-unique identifier within document. Used to align two blocks in different languages in a multilingual document</a:documentation>
2391
+ </attribute>
2298
2392
  </optional>
2299
2393
  <optional>
2300
2394
  <attribute name="multilingual-rendering">
2395
+ <a:documentation>Specification of how a block element may be rendered in a multilingual document</a:documentation>
2301
2396
  <ref name="MultilingualRenderingType"/>
2302
2397
  </attribute>
2303
2398
  </optional>
2304
2399
  <optional>
2305
- <attribute name="columns"/>
2400
+ <attribute name="columns">
2401
+ <a:documentation>Set the columns display of the current block, overriding the display inherited from the document.
2402
+ For example, if the document is set to two-column, this attribute would be used to set the block
2403
+ to span across both columns</a:documentation>
2404
+ </attribute>
2405
+ </optional>
2406
+ </define>
2407
+ <define name="ReferencesAttributes">
2408
+ <optional>
2409
+ <attribute name="obligation">
2410
+ <ref name="ObligationType"/>
2411
+ </attribute>
2306
2412
  </optional>
2413
+ <attribute name="normative">
2414
+ <a:documentation>Whether this is a normative references section or informative (bibliography). Not the same as obligation:
2415
+ Normative References contents contain normative references, but as a clause in the document, they are informative.</a:documentation>
2416
+ <data type="boolean"/>
2417
+ </attribute>
2418
+ </define>
2419
+ <define name="TermSource">
2420
+ <zeroOrMore>
2421
+ <ref name="termsource"/>
2422
+ </zeroOrMore>
2307
2423
  </define>
2308
2424
  <start>
2309
2425
  <ref name="standard-document"/>