relaton-iso-bib 0.3.12 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,1030 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
3
+ <include href="biblio.rng" />
4
+ <start>
5
+ <ref name="document"/>
6
+ </start>
7
+ <!-- </include> -->
8
+ <define name="document">
9
+ <element name="document">
10
+ <optional>
11
+ <attribute name="identifier"/>
12
+ </optional>
13
+ <ref name="bibdata"/>
14
+ <ref name="sections"/>
15
+ <zeroOrMore>
16
+ <ref name="references"/>
17
+ </zeroOrMore>
18
+ </element>
19
+ </define>
20
+ <define name="bibdata">
21
+ <element name="bibdata">
22
+ <ref name="BibData"/>
23
+ </element>
24
+ </define>
25
+ <define name="sections">
26
+ <element name="sections">
27
+ <oneOrMore>
28
+ <ref name="section"/>
29
+ </oneOrMore>
30
+ </element>
31
+ </define>
32
+ <define name="section">
33
+ <element name="section">
34
+ <ref name="Basic-Section"/>
35
+ <zeroOrMore>
36
+ <ref name="section"/>
37
+ </zeroOrMore>
38
+ </element>
39
+ </define>
40
+ <define name="Basic-Section">
41
+ <optional>
42
+ <attribute name="id">
43
+ <data type="ID"/>
44
+ </attribute>
45
+ </optional>
46
+ <optional>
47
+ <attribute name="language"/>
48
+ </optional>
49
+ <optional>
50
+ <attribute name="script"/>
51
+ </optional>
52
+ <optional>
53
+ <ref name="section-title"/>
54
+ </optional>
55
+ <optional>
56
+ <ref name="BasicBlock"/>
57
+ </optional>
58
+ <zeroOrMore>
59
+ <ref name="note"/>
60
+ </zeroOrMore>
61
+ </define>
62
+ <define name="references">
63
+ <element name="references">
64
+ <optional>
65
+ <attribute name="id">
66
+ <data type="ID"/>
67
+ </attribute>
68
+ </optional>
69
+ <optional>
70
+ <ref name="section-title"/>
71
+ </optional>
72
+ <zeroOrMore>
73
+ <ref name="BasicBlock"/>
74
+ </zeroOrMore>
75
+ <zeroOrMore>
76
+ <ref name="bibitem"/>
77
+ </zeroOrMore>
78
+ </element>
79
+ </define>
80
+ <define name="section-title">
81
+ <element name="title">
82
+ <zeroOrMore>
83
+ <ref name="TextElement"/>
84
+ </zeroOrMore>
85
+ </element>
86
+ </define>
87
+ <define name="BasicBlock">
88
+ <choice>
89
+ <ref name="paragraph-with-footnote"/>
90
+ <ref name="table"/>
91
+ <ref name="formula"/>
92
+ <ref name="admonition"/>
93
+ <ref name="ol"/>
94
+ <ref name="ul"/>
95
+ <ref name="dl"/>
96
+ <ref name="figure"/>
97
+ <ref name="quote"/>
98
+ <ref name="sourcecode"/>
99
+ <ref name="example"/>
100
+ <ref name="review"/>
101
+ <ref name="pre"/>
102
+ </choice>
103
+ </define>
104
+ <define name="paragraph">
105
+ <element name="p">
106
+ <ref name="ParagraphType"/>
107
+ </element>
108
+ </define>
109
+ <define name="Alignments">
110
+ <choice>
111
+ <value>left</value>
112
+ <value>right</value>
113
+ <value>center</value>
114
+ <value>justified</value>
115
+ </choice>
116
+ </define>
117
+ <define name="ParagraphType">
118
+ <attribute name="id">
119
+ <data type="ID"/>
120
+ </attribute>
121
+ <optional>
122
+ <attribute name="align">
123
+ <ref name="Alignments"/>
124
+ </attribute>
125
+ </optional>
126
+ <zeroOrMore>
127
+ <ref name="TextElement"/>
128
+ </zeroOrMore>
129
+ <zeroOrMore>
130
+ <ref name="note"/>
131
+ </zeroOrMore>
132
+ </define>
133
+ <define name="paragraph-with-footnote">
134
+ <element name="p">
135
+ <attribute name="id">
136
+ <data type="ID"/>
137
+ </attribute>
138
+ <optional>
139
+ <attribute name="align">
140
+ <ref name="Alignments"/>
141
+ </attribute>
142
+ </optional>
143
+ <zeroOrMore>
144
+ <choice>
145
+ <ref name="TextElement"/>
146
+ <ref name="fn"/>
147
+ </choice>
148
+ </zeroOrMore>
149
+ <zeroOrMore>
150
+ <ref name="note"/>
151
+ </zeroOrMore>
152
+ </element>
153
+ </define>
154
+ <define name="note">
155
+ <element name="note">
156
+ <attribute name="id">
157
+ <data type="ID"/>
158
+ </attribute>
159
+ <oneOrMore>
160
+ <ref name="paragraph"/>
161
+ </oneOrMore>
162
+ </element>
163
+ </define>
164
+ <define name="review">
165
+ <element name="review">
166
+ <attribute name="id">
167
+ <data type="ID"/>
168
+ </attribute>
169
+ <attribute name="reviewer"/>
170
+ <optional>
171
+ <attribute name="date">
172
+ <data type="dateTime"/>
173
+ </attribute>
174
+ </optional>
175
+ <attribute name="from">
176
+ <data type="IDREF"/>
177
+ </attribute>
178
+ <optional>
179
+ <attribute name="to">
180
+ <data type="IDREF"/>
181
+ </attribute>
182
+ </optional>
183
+ <oneOrMore>
184
+ <ref name="paragraph"/>
185
+ </oneOrMore>
186
+ </element>
187
+ </define>
188
+ <define name="formula">
189
+ <element name="formula">
190
+ <attribute name="id">
191
+ <data type="ID"/>
192
+ </attribute>
193
+ <optional>
194
+ <attribute name="unnumbered">
195
+ <data type="boolean"/>
196
+ </attribute>
197
+ </optional>
198
+ <optional>
199
+ <attribute name="subsequence"/>
200
+ </optional>
201
+ <optional>
202
+ <attribute name="inequality">
203
+ <data type="boolean"/>
204
+ </attribute>
205
+ </optional>
206
+ <ref name="stem"/>
207
+ <optional>
208
+ <ref name="dl"/>
209
+ </optional>
210
+ <zeroOrMore>
211
+ <ref name="note"/>
212
+ </zeroOrMore>
213
+ </element>
214
+ </define>
215
+ <define name="quote">
216
+ <element name="quote">
217
+ <attribute name="id">
218
+ <data type="ID"/>
219
+ </attribute>
220
+ <optional>
221
+ <attribute name="alignment">
222
+ <ref name="Alignments"/>
223
+ </attribute>
224
+ </optional>
225
+ <optional>
226
+ <ref name="quote-source"/>
227
+ </optional>
228
+ <optional>
229
+ <ref name="quote-author"/>
230
+ </optional>
231
+ <oneOrMore>
232
+ <ref name="paragraph-with-footnote"/>
233
+ </oneOrMore>
234
+ <zeroOrMore>
235
+ <ref name="note"/>
236
+ </zeroOrMore>
237
+ </element>
238
+ </define>
239
+ <define name="quote-source">
240
+ <element name="source">
241
+ <ref name="erefType"/>
242
+ </element>
243
+ </define>
244
+ <define name="quote-author">
245
+ <element name="author">
246
+ <text/>
247
+ </element>
248
+ </define>
249
+ <define name="sourcecode">
250
+ <element name="sourcecode">
251
+ <attribute name="id">
252
+ <data type="ID"/>
253
+ </attribute>
254
+ <optional>
255
+ <attribute name="unnumbered">
256
+ <data type="boolean"/>
257
+ </attribute>
258
+ </optional>
259
+ <optional>
260
+ <attribute name="subsequence"/>
261
+ </optional>
262
+ <optional>
263
+ <attribute name="lang"/>
264
+ </optional>
265
+ <optional>
266
+ <ref name="tname"/>
267
+ </optional>
268
+ <oneOrMore>
269
+ <choice>
270
+ <text/>
271
+ <ref name="callout"/>
272
+ </choice>
273
+ </oneOrMore>
274
+ <zeroOrMore>
275
+ <ref name="annotation"/>
276
+ </zeroOrMore>
277
+ <zeroOrMore>
278
+ <ref name="note"/>
279
+ </zeroOrMore>
280
+ </element>
281
+ </define>
282
+ <define name="pre">
283
+ <element name="pre">
284
+ <attribute name="id">
285
+ <data type="ID"/>
286
+ </attribute>
287
+ <optional>
288
+ <ref name="tname"/>
289
+ </optional>
290
+ <text/>
291
+ <zeroOrMore>
292
+ <ref name="note"/>
293
+ </zeroOrMore>
294
+ </element>
295
+ </define>
296
+ <define name="table">
297
+ <element name="table">
298
+ <attribute name="id">
299
+ <data type="ID"/>
300
+ </attribute>
301
+ <optional>
302
+ <attribute name="unnumbered">
303
+ <data type="boolean"/>
304
+ </attribute>
305
+ </optional>
306
+ <optional>
307
+ <attribute name="subsequence"/>
308
+ </optional>
309
+ <optional>
310
+ <attribute name="alt"/>
311
+ </optional>
312
+ <optional>
313
+ <attribute name="summary"/>
314
+ </optional>
315
+ <optional>
316
+ <attribute name="uri">
317
+ <data type="anyURI"/>
318
+ </attribute>
319
+ </optional>
320
+ <optional>
321
+ <ref name="tname"/>
322
+ </optional>
323
+ <optional>
324
+ <ref name="thead"/>
325
+ </optional>
326
+ <ref name="tbody"/>
327
+ <optional>
328
+ <ref name="tfoot"/>
329
+ </optional>
330
+ <zeroOrMore>
331
+ <ref name="table-note"/>
332
+ </zeroOrMore>
333
+ <optional>
334
+ <ref name="dl"/>
335
+ </optional>
336
+ </element>
337
+ </define>
338
+ <define name="tname">
339
+ <element name="name">
340
+ <oneOrMore>
341
+ <ref name="PureTextElement"/>
342
+ </oneOrMore>
343
+ </element>
344
+ </define>
345
+ <define name="thead">
346
+ <element name="thead">
347
+ <ref name="tr"/>
348
+ </element>
349
+ </define>
350
+ <define name="tfoot">
351
+ <element name="tfoot">
352
+ <ref name="tr"/>
353
+ </element>
354
+ </define>
355
+ <define name="tbody">
356
+ <element name="tbody">
357
+ <oneOrMore>
358
+ <ref name="tr"/>
359
+ </oneOrMore>
360
+ </element>
361
+ </define>
362
+ <define name="table-note">
363
+ <element name="note">
364
+ <ref name="paragraph"/>
365
+ </element>
366
+ </define>
367
+ <define name="tr">
368
+ <element name="tr">
369
+ <oneOrMore>
370
+ <choice>
371
+ <ref name="td"/>
372
+ <ref name="th"/>
373
+ </choice>
374
+ </oneOrMore>
375
+ </element>
376
+ </define>
377
+ <define name="td">
378
+ <element name="td">
379
+ <optional>
380
+ <attribute name="colspan"/>
381
+ </optional>
382
+ <optional>
383
+ <attribute name="rowspan"/>
384
+ </optional>
385
+ <optional>
386
+ <attribute name="align">
387
+ <choice>
388
+ <value>left</value>
389
+ <value>right</value>
390
+ <value>center</value>
391
+ </choice>
392
+ </attribute>
393
+ </optional>
394
+ <choice>
395
+ <zeroOrMore>
396
+ <ref name="TextElement"/>
397
+ </zeroOrMore>
398
+ <oneOrMore>
399
+ <ref name="paragraph-with-footnote"/>
400
+ </oneOrMore>
401
+ </choice>
402
+ </element>
403
+ </define>
404
+ <define name="th">
405
+ <element name="th">
406
+ <optional>
407
+ <attribute name="colspan"/>
408
+ </optional>
409
+ <optional>
410
+ <attribute name="rowspan"/>
411
+ </optional>
412
+ <optional>
413
+ <attribute name="align">
414
+ <choice>
415
+ <value>left</value>
416
+ <value>right</value>
417
+ <value>center</value>
418
+ </choice>
419
+ </attribute>
420
+ </optional>
421
+ <choice>
422
+ <zeroOrMore>
423
+ <ref name="TextElement"/>
424
+ </zeroOrMore>
425
+ <oneOrMore>
426
+ <ref name="paragraph-with-footnote"/>
427
+ </oneOrMore>
428
+ </choice>
429
+ </element>
430
+ </define>
431
+ <define name="example">
432
+ <element name="example">
433
+ <attribute name="id">
434
+ <data type="ID"/>
435
+ </attribute>
436
+ <optional>
437
+ <attribute name="unnumbered">
438
+ <data type="boolean"/>
439
+ </attribute>
440
+ </optional>
441
+ <optional>
442
+ <attribute name="subsequence"/>
443
+ </optional>
444
+ <optional>
445
+ <ref name="tname"/>
446
+ </optional>
447
+ <oneOrMore>
448
+ <choice>
449
+ <ref name="formula"/>
450
+ <ref name="ul"/>
451
+ <ref name="ol"/>
452
+ <ref name="dl"/>
453
+ <ref name="quote"/>
454
+ <ref name="sourcecode"/>
455
+ <ref name="paragraph-with-footnote"/>
456
+ </choice>
457
+ </oneOrMore>
458
+ <zeroOrMore>
459
+ <ref name="note"/>
460
+ </zeroOrMore>
461
+ </element>
462
+ </define>
463
+ <define name="admonition">
464
+ <element name="admonition">
465
+ <attribute name="type">
466
+ <ref name="AdmonitionType"/>
467
+ </attribute>
468
+ <optional>
469
+ <attribute name="class"/>
470
+ </optional>
471
+ <attribute name="id">
472
+ <data type="ID"/>
473
+ </attribute>
474
+ <optional>
475
+ <attribute name="uri">
476
+ <data type="anyURI"/>
477
+ </attribute>
478
+ </optional>
479
+ <optional>
480
+ <ref name="tname"/>
481
+ </optional>
482
+ <zeroOrMore>
483
+ <ref name="paragraph-with-footnote"/>
484
+ </zeroOrMore>
485
+ <zeroOrMore>
486
+ <ref name="note"/>
487
+ </zeroOrMore>
488
+ </element>
489
+ </define>
490
+ <define name="AdmonitionType">
491
+ <choice>
492
+ <value>warning</value>
493
+ <value>note</value>
494
+ <value>tip</value>
495
+ <value>important</value>
496
+ <value>caution</value>
497
+ <value>statement</value>
498
+ </choice>
499
+ </define>
500
+ <define name="figure">
501
+ <element name="figure">
502
+ <attribute name="id">
503
+ <data type="ID"/>
504
+ </attribute>
505
+ <optional>
506
+ <attribute name="unnumbered">
507
+ <data type="boolean"/>
508
+ </attribute>
509
+ </optional>
510
+ <optional>
511
+ <attribute name="subsequence"/>
512
+ </optional>
513
+ <optional>
514
+ <attribute name="class"/>
515
+ </optional>
516
+ <optional>
517
+ <ref name="source"/>
518
+ </optional>
519
+ <optional>
520
+ <ref name="tname"/>
521
+ </optional>
522
+ <choice>
523
+ <ref name="image"/>
524
+ <ref name="video"/>
525
+ <ref name="audio"/>
526
+ <ref name="pre"/>
527
+ <oneOrMore>
528
+ <ref name="paragraph-with-footnote"/>
529
+ </oneOrMore>
530
+ <zeroOrMore>
531
+ <ref name="figure"/>
532
+ </zeroOrMore>
533
+ </choice>
534
+ <zeroOrMore>
535
+ <ref name="fn"/>
536
+ </zeroOrMore>
537
+ <optional>
538
+ <ref name="dl"/>
539
+ </optional>
540
+ <zeroOrMore>
541
+ <ref name="note"/>
542
+ </zeroOrMore>
543
+ </element>
544
+ </define>
545
+ <define name="TextElement">
546
+ <choice>
547
+ <text/>
548
+ <ref name="em"/>
549
+ <ref name="eref"/>
550
+ <ref name="strong"/>
551
+ <ref name="stem"/>
552
+ <ref name="sub"/>
553
+ <ref name="sup"/>
554
+ <ref name="tt"/>
555
+ <ref name="underline"/>
556
+ <ref name="keyword"/>
557
+ <ref name="ruby"/>
558
+ <ref name="strike"/>
559
+ <ref name="smallcap"/>
560
+ <ref name="xref"/>
561
+ <ref name="br"/>
562
+ <ref name="hyperlink"/>
563
+ <ref name="hr"/>
564
+ <ref name="pagebreak"/>
565
+ <ref name="bookmark"/>
566
+ <ref name="image"/>
567
+ </choice>
568
+ </define>
569
+ <define name="PureTextElement">
570
+ <choice>
571
+ <text/>
572
+ <ref name="em"/>
573
+ <ref name="strong"/>
574
+ <ref name="sub"/>
575
+ <ref name="sup"/>
576
+ <ref name="tt"/>
577
+ <ref name="underline"/>
578
+ <ref name="strike"/>
579
+ <ref name="smallcap"/>
580
+ <ref name="br"/>
581
+ </choice>
582
+ </define>
583
+ <define name="source">
584
+ <element name="source">
585
+ <ref name="TypedUri"/>
586
+ </element>
587
+ </define>
588
+ <define name="em">
589
+ <element name="em">
590
+ <zeroOrMore>
591
+ <ref name="PureTextElement"/>
592
+ </zeroOrMore>
593
+ </element>
594
+ </define>
595
+ <define name="strong">
596
+ <element name="strong">
597
+ <zeroOrMore>
598
+ <ref name="PureTextElement"/>
599
+ </zeroOrMore>
600
+ </element>
601
+ </define>
602
+ <define name="tt">
603
+ <element name="tt">
604
+ <zeroOrMore>
605
+ <ref name="PureTextElement"/>
606
+ </zeroOrMore>
607
+ </element>
608
+ </define>
609
+ <define name="keyword">
610
+ <element name="keyword">
611
+ <zeroOrMore>
612
+ <ref name="PureTextElement"/>
613
+ </zeroOrMore>
614
+ </element>
615
+ </define>
616
+ <define name="sub">
617
+ <element name="sub">
618
+ <zeroOrMore>
619
+ <ref name="PureTextElement"/>
620
+ </zeroOrMore>
621
+ </element>
622
+ </define>
623
+ <define name="sup">
624
+ <element name="sup">
625
+ <zeroOrMore>
626
+ <ref name="PureTextElement"/>
627
+ </zeroOrMore>
628
+ </element>
629
+ </define>
630
+ <define name="strike">
631
+ <element name="strike">
632
+ <zeroOrMore>
633
+ <ref name="PureTextElement"/>
634
+ </zeroOrMore>
635
+ </element>
636
+ </define>
637
+ <define name="underline">
638
+ <element name="underline">
639
+ <zeroOrMore>
640
+ <ref name="PureTextElement"/>
641
+ </zeroOrMore>
642
+ </element>
643
+ </define>
644
+ <define name="smallcap">
645
+ <element name="smallcap">
646
+ <zeroOrMore>
647
+ <ref name="PureTextElement"/>
648
+ </zeroOrMore>
649
+ </element>
650
+ </define>
651
+ <define name="ruby">
652
+ <element name="ruby">
653
+ <zeroOrMore>
654
+ <choice>
655
+ <ref name="PureTextElement"/>
656
+ <ref name="rp"/>
657
+ <ref name="rt"/>
658
+ </choice>
659
+ </zeroOrMore>
660
+ </element>
661
+ </define>
662
+ <define name="rp">
663
+ <element name="rp">
664
+ <zeroOrMore>
665
+ <ref name="PureTextElement"/>
666
+ </zeroOrMore>
667
+ </element>
668
+ </define>
669
+ <define name="rt">
670
+ <element name="rt">
671
+ <zeroOrMore>
672
+ <ref name="PureTextElement"/>
673
+ </zeroOrMore>
674
+ </element>
675
+ </define>
676
+ <define name="br">
677
+ <element name="br">
678
+ <empty/>
679
+ </element>
680
+ </define>
681
+ <define name="hr">
682
+ <element name="hr">
683
+ <empty/>
684
+ </element>
685
+ </define>
686
+ <define name="pagebreak">
687
+ <element name="pagebreak">
688
+ <empty/>
689
+ </element>
690
+ </define>
691
+ <!-- bare ID element, used for referencing arbitrary spans of text -->
692
+ <define name="bookmark">
693
+ <element name="bookmark">
694
+ <attribute name="id">
695
+ <data type="ID"/>
696
+ </attribute>
697
+ <empty/>
698
+ </element>
699
+ </define>
700
+ <define name="ReferenceFormat">
701
+ <choice>
702
+ <value>external</value>
703
+ <value>inline</value>
704
+ <value>footnote</value>
705
+ <value>callout</value>
706
+ </choice>
707
+ </define>
708
+ <define name="eref">
709
+ <element name="eref">
710
+ <ref name="erefType"/>
711
+ </element>
712
+ </define>
713
+ <define name="erefType">
714
+ <optional>
715
+ <attribute name="normative">
716
+ <data type="boolean"/>
717
+ </attribute>
718
+ </optional>
719
+ <attribute name="citeas"/>
720
+ <attribute name="type">
721
+ <ref name="ReferenceFormat"/>
722
+ </attribute>
723
+ <optional>
724
+ <attribute name="alt"/>
725
+ </optional>
726
+ <ref name="CitationType"/>
727
+ <text/>
728
+ </define>
729
+ <define name="hyperlink">
730
+ <element name="link">
731
+ <attribute name="target">
732
+ <data type="anyURI"/>
733
+ </attribute>
734
+ <attribute name="type">
735
+ <ref name="ReferenceFormat"/>
736
+ </attribute>
737
+ <optional>
738
+ <attribute name="alt"/>
739
+ </optional>
740
+ <text/>
741
+ </element>
742
+ </define>
743
+ <define name="xref">
744
+ <element name="xref">
745
+ <attribute name="target">
746
+ <data type="IDREF"/>
747
+ </attribute>
748
+ <attribute name="type">
749
+ <ref name="ReferenceFormat"/>
750
+ </attribute>
751
+ <optional>
752
+ <attribute name="alt"/>
753
+ </optional>
754
+ <text/>
755
+ </element>
756
+ </define>
757
+ <define name="fn">
758
+ <element name="fn">
759
+ <attribute name="reference"/>
760
+ <oneOrMore>
761
+ <ref name="paragraph"/>
762
+ </oneOrMore>
763
+ </element>
764
+ </define>
765
+ <!--
766
+ This is xref with fixed @type="footnote", and @target built in as paragraph+
767
+ @reference replaces ReferenceElement/text
768
+ so <fn reference="2"><p>This is a footnote</p></fn>
769
+ corresponds to
770
+ <eref type="footnote" target="fn2">2</xref> <p id="fn2">This is a footnote</p>
771
+ -->
772
+ <define name="callout">
773
+ <element name="callout">
774
+ <attribute name="target">
775
+ <data type="IDREF"/>
776
+ </attribute>
777
+ <text/>
778
+ </element>
779
+ </define>
780
+ <!--
781
+ This is xref with fixed @type="callout"; the target by convention is in an annotation in the same source code snippet
782
+ so <callout target="xyz">1</callout>
783
+ corresponds to <xref type="callout" target="xyz">1</xref>
784
+ -->
785
+ <define name="image">
786
+ <element name="image">
787
+ <attribute name="id">
788
+ <data type="ID"/>
789
+ </attribute>
790
+ <attribute name="src">
791
+ <data type="anyURI"/>
792
+ </attribute>
793
+ <attribute name="mimetype"/>
794
+ <optional>
795
+ <attribute name="filename"/>
796
+ </optional>
797
+ <optional>
798
+ <attribute name="width">
799
+ <choice>
800
+ <data type="int"/>
801
+ <value>auto</value>
802
+ </choice>
803
+ </attribute>
804
+ </optional>
805
+ <optional>
806
+ <attribute name="height">
807
+ <choice>
808
+ <data type="int"/>
809
+ <value>auto</value>
810
+ </choice>
811
+ </attribute>
812
+ </optional>
813
+ <optional>
814
+ <attribute name="alt"/>
815
+ </optional>
816
+ <optional>
817
+ <attribute name="title"/>
818
+ </optional>
819
+ <optional>
820
+ <attribute name="longdesc">
821
+ <data type="anyURI"/>
822
+ </attribute>
823
+ </optional>
824
+ </element>
825
+ </define>
826
+ <define name="video">
827
+ <element name="video">
828
+ <attribute name="id">
829
+ <data type="ID"/>
830
+ </attribute>
831
+ <attribute name="src">
832
+ <data type="anyURI"/>
833
+ </attribute>
834
+ <attribute name="mimetype"/>
835
+ <optional>
836
+ <attribute name="filename"/>
837
+ </optional>
838
+ <optional>
839
+ <attribute name="width">
840
+ <choice>
841
+ <data type="int"/>
842
+ <value>auto</value>
843
+ </choice>
844
+ </attribute>
845
+ </optional>
846
+ <optional>
847
+ <attribute name="height">
848
+ <choice>
849
+ <data type="int"/>
850
+ <value>auto</value>
851
+ </choice>
852
+ </attribute>
853
+ </optional>
854
+ <optional>
855
+ <attribute name="alt"/>
856
+ </optional>
857
+ <optional>
858
+ <attribute name="title"/>
859
+ </optional>
860
+ <optional>
861
+ <attribute name="longdesc">
862
+ <data type="anyURI"/>
863
+ </attribute>
864
+ </optional>
865
+ <zeroOrMore>
866
+ <ref name="altsource"/>
867
+ </zeroOrMore>
868
+ </element>
869
+ </define>
870
+ <define name="audio">
871
+ <element name="audio">
872
+ <attribute name="id">
873
+ <data type="ID"/>
874
+ </attribute>
875
+ <attribute name="src">
876
+ <data type="anyURI"/>
877
+ </attribute>
878
+ <attribute name="mimetype"/>
879
+ <optional>
880
+ <attribute name="filename"/>
881
+ </optional>
882
+ <optional>
883
+ <attribute name="alt"/>
884
+ </optional>
885
+ <optional>
886
+ <attribute name="title"/>
887
+ </optional>
888
+ <optional>
889
+ <attribute name="longdesc">
890
+ <data type="anyURI"/>
891
+ </attribute>
892
+ </optional>
893
+ <zeroOrMore>
894
+ <ref name="altsource"/>
895
+ </zeroOrMore>
896
+ </element>
897
+ </define>
898
+ <define name="altsource">
899
+ <element name="altsource">
900
+ <attribute name="src">
901
+ <data type="anyURI"/>
902
+ </attribute>
903
+ <attribute name="mimetype"/>
904
+ <optional>
905
+ <attribute name="filename"/>
906
+ </optional>
907
+ </element>
908
+ </define>
909
+ <define name="stem">
910
+ <element name="stem">
911
+ <attribute name="type">
912
+ <choice>
913
+ <value>MathML</value>
914
+ <value>AsciiMath</value>
915
+ </choice>
916
+ </attribute>
917
+ <oneOrMore>
918
+ <choice>
919
+ <text/>
920
+ <ref name="AnyElement"/>
921
+ </choice>
922
+ </oneOrMore>
923
+ </element>
924
+ </define>
925
+ <define name="annotation">
926
+ <element name="annotation">
927
+ <attribute name="id">
928
+ <data type="ID"/>
929
+ </attribute>
930
+ <ref name="paragraph"/>
931
+ </element>
932
+ </define>
933
+ <define name="ul">
934
+ <element name="ul">
935
+ <attribute name="id">
936
+ <data type="ID"/>
937
+ </attribute>
938
+ <oneOrMore>
939
+ <ref name="li"/>
940
+ </oneOrMore>
941
+ <zeroOrMore>
942
+ <ref name="note"/>
943
+ </zeroOrMore>
944
+ </element>
945
+ </define>
946
+ <define name="li">
947
+ <element name="li">
948
+ <optional>
949
+ <attribute name="id">
950
+ <data type="ID"/>
951
+ </attribute>
952
+ </optional>
953
+ <oneOrMore>
954
+ <ref name="paragraph-with-footnote"/>
955
+ </oneOrMore>
956
+ </element>
957
+ </define>
958
+ <define name="ol">
959
+ <element name="ol">
960
+ <attribute name="id">
961
+ <data type="ID"/>
962
+ </attribute>
963
+ <attribute name="type">
964
+ <choice>
965
+ <value>roman</value>
966
+ <value>alphabet</value>
967
+ <value>arabic</value>
968
+ <value>roman_upper</value>
969
+ <value>alphabet_upper</value>
970
+ </choice>
971
+ </attribute>
972
+ <oneOrMore>
973
+ <ref name="li"/>
974
+ </oneOrMore>
975
+ <zeroOrMore>
976
+ <ref name="note"/>
977
+ </zeroOrMore>
978
+ </element>
979
+ </define>
980
+ <define name="dl">
981
+ <element name="dl">
982
+ <attribute name="id">
983
+ <data type="ID"/>
984
+ </attribute>
985
+ <oneOrMore>
986
+ <ref name="dt"/>
987
+ <ref name="dd"/>
988
+ </oneOrMore>
989
+ <zeroOrMore>
990
+ <ref name="note"/>
991
+ </zeroOrMore>
992
+ </element>
993
+ </define>
994
+ <define name="dt">
995
+ <element name="dt">
996
+ <zeroOrMore>
997
+ <ref name="TextElement"/>
998
+ </zeroOrMore>
999
+ </element>
1000
+ </define>
1001
+ <define name="dd">
1002
+ <element name="dd">
1003
+ <zeroOrMore>
1004
+ <ref name="paragraph-with-footnote"/>
1005
+ </zeroOrMore>
1006
+ </element>
1007
+ </define>
1008
+ <define name="ext">
1009
+ <element name="ext">
1010
+ <ref name="BibDataExtensionType"/>
1011
+ </element>
1012
+ </define>
1013
+ <define name="BibDataExtensionType">
1014
+ <ref name="doctype"/>
1015
+ </define>
1016
+ <define name="doctype">
1017
+ <element name="doctype">
1018
+ <ref name="DocumentType"/>
1019
+ </element>
1020
+ </define>
1021
+ <define name="DocumentType">
1022
+ <value>document</value>
1023
+ </define>
1024
+ <define name="BibData">
1025
+ <ref name="BibliographicItem"/>
1026
+ <optional>
1027
+ <ref name="ext"/>
1028
+ </optional>
1029
+ </define>
1030
+ </grammar>