relaton-ietf 0.6.10 → 0.7.0

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