@likecoin/epubcheck-ts 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +339 -0
  3. package/dist/index.cjs +1904 -0
  4. package/dist/index.cjs.map +1 -0
  5. package/dist/index.d.cts +523 -0
  6. package/dist/index.d.ts +523 -0
  7. package/dist/index.js +1895 -0
  8. package/dist/index.js.map +1 -0
  9. package/package.json +69 -0
  10. package/schemas/applications.rng +429 -0
  11. package/schemas/aria.rng +3355 -0
  12. package/schemas/block.rng +488 -0
  13. package/schemas/common.rng +1076 -0
  14. package/schemas/container.rng +24 -0
  15. package/schemas/core-scripting.rng +950 -0
  16. package/schemas/data.rng +161 -0
  17. package/schemas/datatypes.rng +401 -0
  18. package/schemas/embed.rng +980 -0
  19. package/schemas/epub-mathml3-inc.rng +161 -0
  20. package/schemas/epub-nav-30.rnc +44 -0
  21. package/schemas/epub-nav-30.rng +19985 -0
  22. package/schemas/epub-nav-30.sch +87 -0
  23. package/schemas/epub-prefix-attr.rng +17 -0
  24. package/schemas/epub-shared-inc.rng +29 -0
  25. package/schemas/epub-ssml-attrs.rng +17 -0
  26. package/schemas/epub-svg-30.rnc +17 -0
  27. package/schemas/epub-svg-30.rng +19903 -0
  28. package/schemas/epub-svg-30.sch +7 -0
  29. package/schemas/epub-svg-forgiving-inc.rng +315 -0
  30. package/schemas/epub-switch.rng +121 -0
  31. package/schemas/epub-trigger.rng +90 -0
  32. package/schemas/epub-type-attr.rng +12 -0
  33. package/schemas/epub-xhtml-30.rnc +6 -0
  34. package/schemas/epub-xhtml-30.rng +19882 -0
  35. package/schemas/epub-xhtml-30.sch +409 -0
  36. package/schemas/epub-xhtml-inc.rng +151 -0
  37. package/schemas/epub-xhtml-integration.rng +565 -0
  38. package/schemas/epub-xhtml-svg-mathml.rng +17 -0
  39. package/schemas/form-datatypes.rng +54 -0
  40. package/schemas/mathml3-common.rng +336 -0
  41. package/schemas/mathml3-content.rng +1552 -0
  42. package/schemas/mathml3-inc.rng +30 -0
  43. package/schemas/mathml3-presentation.rng +2341 -0
  44. package/schemas/mathml3-strict-content.rng +205 -0
  45. package/schemas/media.rng +374 -0
  46. package/schemas/meta.rng +754 -0
  47. package/schemas/microdata.rng +192 -0
  48. package/schemas/ncx.rng +308 -0
  49. package/schemas/ocf-container-30.rnc +37 -0
  50. package/schemas/ocf-container-30.rng +568 -0
  51. package/schemas/opf.rng +15 -0
  52. package/schemas/opf20.rng +513 -0
  53. package/schemas/package-30.rnc +133 -0
  54. package/schemas/package-30.rng +1153 -0
  55. package/schemas/package-30.sch +444 -0
  56. package/schemas/phrase.rng +746 -0
  57. package/schemas/rdfa.rng +552 -0
  58. package/schemas/revision.rng +106 -0
  59. package/schemas/ruby.rng +141 -0
  60. package/schemas/sectional.rng +278 -0
  61. package/schemas/structural.rng +298 -0
  62. package/schemas/tables.rng +420 -0
  63. package/schemas/web-components.rng +184 -0
  64. package/schemas/web-forms.rng +975 -0
  65. package/schemas/web-forms2.rng +1236 -0
@@ -0,0 +1,754 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <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">
3
+ <!-- ##################################################################### -->
4
+ <define name="html.elem">
5
+ <a:documentation> RELAX NG Schema for HTML 5: Global Structure &amp; Metadata #</a:documentation>
6
+ <!-- ##################################################################### -->
7
+ <a:documentation>Root Element: &lt;html&gt;</a:documentation>
8
+ <element name="html">
9
+ <interleave>
10
+ <ref name="html.inner"/>
11
+ <ref name="html.attrs"/>
12
+ </interleave>
13
+ </element>
14
+ </define>
15
+ <define name="html.attrs">
16
+ <ref name="common.attrs"/>
17
+ </define>
18
+ <define name="html.inner">
19
+ <ref name="head.elem"/>
20
+ <ref name="body.elem"/>
21
+ </define>
22
+ <define name="head.elem">
23
+ <a:documentation>Metadata Container: &lt;head&gt;</a:documentation>
24
+ <element name="head">
25
+ <interleave>
26
+ <ref name="head.inner"/>
27
+ <ref name="head.attrs"/>
28
+ </interleave>
29
+ </element>
30
+ </define>
31
+ <define name="head.attrs">
32
+ <ref name="common.attrs"/>
33
+ <!-- & head.attrs.profile? -->
34
+ </define>
35
+ <!--
36
+ head.attrs.profile =
37
+ attribute profile {
38
+ common.data.uris #REVISIT should these be absolute (zero or more)
39
+ }
40
+ -->
41
+ <define name="head.inner">
42
+ <interleave>
43
+ <ref name="title.elem"/>
44
+ <optional>
45
+ <ref name="base.elem"/>
46
+ </optional>
47
+ <!-- REVISIT need a non-schema checker or Schematron -->
48
+ <ref name="common.inner.metadata"/>
49
+ </interleave>
50
+ <!-- Limit encoding decl position in Schematron -->
51
+ </define>
52
+ <!--
53
+ head.inner =
54
+ ( meta.elem.encoding?
55
+ , ( title.elem
56
+ & base.elem? # REVISIT need a non-schema checker or Schematron
57
+ & common.inner.metadata
58
+ )
59
+ )
60
+ -->
61
+ <define name="body.elem">
62
+ <a:documentation>Content Container: &lt;body&gt;</a:documentation>
63
+ <element name="body">
64
+ <interleave>
65
+ <ref name="body.inner"/>
66
+ <ref name="body.attrs"/>
67
+ </interleave>
68
+ </element>
69
+ </define>
70
+ <define name="body.attrs">
71
+ <interleave>
72
+ <ref name="common.attrs"/>
73
+ <optional>
74
+ <choice>
75
+ <ref name="common.attrs.aria.role.application"/>
76
+ <ref name="common.attrs.aria.landmark.document"/>
77
+ <ref name="common.attrs.aria.role.presentation"/>
78
+ <ref name="common.attrs.aria.implicit.document"/>
79
+ </choice>
80
+ </optional>
81
+ <optional>
82
+ <ref name="body.attrs.onafterprint"/>
83
+ </optional>
84
+ <optional>
85
+ <ref name="body.attrs.onbeforeprint"/>
86
+ </optional>
87
+ <optional>
88
+ <ref name="body.attrs.onbeforeunload"/>
89
+ </optional>
90
+ <optional>
91
+ <ref name="body.attrs.onhashchange"/>
92
+ </optional>
93
+ <optional>
94
+ <ref name="body.attrs.onlanguagechange"/>
95
+ </optional>
96
+ <optional>
97
+ <ref name="body.attrs.onmessage"/>
98
+ </optional>
99
+ <optional>
100
+ <ref name="body.attrs.onmessageerror"/>
101
+ </optional>
102
+ <optional>
103
+ <ref name="body.attrs.onoffline"/>
104
+ </optional>
105
+ <optional>
106
+ <ref name="body.attrs.ononline"/>
107
+ </optional>
108
+ <optional>
109
+ <ref name="body.attrs.onpagehide"/>
110
+ </optional>
111
+ <optional>
112
+ <ref name="body.attrs.onpageshow"/>
113
+ </optional>
114
+ <optional>
115
+ <ref name="body.attrs.onpopstate"/>
116
+ </optional>
117
+ <optional>
118
+ <ref name="body.attrs.onrejectionhandled"/>
119
+ </optional>
120
+ <optional>
121
+ <ref name="body.attrs.onstorage"/>
122
+ </optional>
123
+ <optional>
124
+ <ref name="body.attrs.onunhandledrejection"/>
125
+ </optional>
126
+ <optional>
127
+ <ref name="body.attrs.onunload"/>
128
+ </optional>
129
+ </interleave>
130
+ </define>
131
+ <define name="body.inner">
132
+ <ref name="common.inner.flow"/>
133
+ </define>
134
+ <define name="body.attrs.onafterprint">
135
+ <attribute name="onafterprint">
136
+ <ref name="common.data.functionbody"/>
137
+ </attribute>
138
+ </define>
139
+ <define name="body.attrs.onbeforeprint">
140
+ <attribute name="onbeforeprint">
141
+ <ref name="common.data.functionbody"/>
142
+ </attribute>
143
+ </define>
144
+ <define name="body.attrs.onbeforeunload">
145
+ <attribute name="onbeforeunload">
146
+ <ref name="common.data.functionbody"/>
147
+ </attribute>
148
+ </define>
149
+ <define name="body.attrs.onhashchange">
150
+ <attribute name="onhashchange">
151
+ <ref name="common.data.functionbody"/>
152
+ </attribute>
153
+ </define>
154
+ <define name="body.attrs.onlanguagechange">
155
+ <attribute name="onlanguagechange">
156
+ <ref name="common.data.functionbody"/>
157
+ </attribute>
158
+ </define>
159
+ <define name="body.attrs.onmessage">
160
+ <attribute name="onmessage">
161
+ <ref name="common.data.functionbody"/>
162
+ </attribute>
163
+ </define>
164
+ <define name="body.attrs.onmessageerror">
165
+ <attribute name="onmessageerror">
166
+ <ref name="common.data.functionbody"/>
167
+ </attribute>
168
+ </define>
169
+ <define name="body.attrs.onoffline">
170
+ <attribute name="onoffline">
171
+ <ref name="common.data.functionbody"/>
172
+ </attribute>
173
+ </define>
174
+ <define name="body.attrs.ononline">
175
+ <attribute name="ononline">
176
+ <ref name="common.data.functionbody"/>
177
+ </attribute>
178
+ </define>
179
+ <define name="body.attrs.onpagehide">
180
+ <attribute name="onpagehide">
181
+ <ref name="common.data.functionbody"/>
182
+ </attribute>
183
+ </define>
184
+ <define name="body.attrs.onpageshow">
185
+ <attribute name="onpageshow">
186
+ <ref name="common.data.functionbody"/>
187
+ </attribute>
188
+ </define>
189
+ <define name="body.attrs.onpopstate">
190
+ <attribute name="onpopstate">
191
+ <ref name="common.data.functionbody"/>
192
+ </attribute>
193
+ </define>
194
+ <define name="body.attrs.onrejectionhandled">
195
+ <attribute name="onrejectionhandled">
196
+ <ref name="common.data.functionbody"/>
197
+ </attribute>
198
+ </define>
199
+ <define name="body.attrs.onstorage">
200
+ <attribute name="onstorage">
201
+ <ref name="common.data.functionbody"/>
202
+ </attribute>
203
+ </define>
204
+ <define name="body.attrs.onunhandledrejection">
205
+ <attribute name="onunhandledrejection">
206
+ <ref name="common.data.functionbody"/>
207
+ </attribute>
208
+ </define>
209
+ <define name="body.attrs.onunload">
210
+ <attribute name="onunload">
211
+ <ref name="common.data.functionbody"/>
212
+ </attribute>
213
+ </define>
214
+ <define name="title.elem">
215
+ <a:documentation>Document Title: &lt;title&gt;</a:documentation>
216
+ <element name="title">
217
+ <interleave>
218
+ <ref name="title.inner"/>
219
+ <ref name="title.attrs"/>
220
+ </interleave>
221
+ </element>
222
+ </define>
223
+ <define name="title.attrs">
224
+ <ref name="common.attrs"/>
225
+ </define>
226
+ <define name="title.inner">
227
+ <text/>
228
+ </define>
229
+ <define name="base.elem">
230
+ <a:documentation>Base URI: &lt;base&gt;</a:documentation>
231
+ <element name="base">
232
+ <interleave>
233
+ <ref name="base.inner"/>
234
+ <ref name="base.attrs"/>
235
+ </interleave>
236
+ </element>
237
+ </define>
238
+ <define name="base.attrs">
239
+ <interleave>
240
+ <ref name="common.attrs.basic"/>
241
+ <ref name="common.attrs.i18n"/>
242
+ <ref name="common.attrs.present"/>
243
+ <ref name="common.attrs.other"/>
244
+ <choice>
245
+ <interleave>
246
+ <ref name="base.attrs.href"/>
247
+ <optional>
248
+ <ref name="base.attrs.target"/>
249
+ </optional>
250
+ </interleave>
251
+ <ref name="base.attrs.target"/>
252
+ </choice>
253
+ </interleave>
254
+ </define>
255
+ <define name="base.attrs.href">
256
+ <attribute name="href">
257
+ <ref name="common.data.uri"/>
258
+ </attribute>
259
+ </define>
260
+ <define name="base.attrs.target">
261
+ <attribute name="target">
262
+ <ref name="common.data.browsing-context-or-keyword"/>
263
+ </attribute>
264
+ </define>
265
+ <define name="base.inner">
266
+ <empty/>
267
+ </define>
268
+ <define name="link.elem">
269
+ <a:documentation>Global Relationships: &lt;link&gt;</a:documentation>
270
+ <element name="link">
271
+ <interleave>
272
+ <ref name="link.inner"/>
273
+ <ref name="link.attrs"/>
274
+ </interleave>
275
+ </element>
276
+ </define>
277
+ <define name="link.attrs">
278
+ <interleave>
279
+ <ref name="common.attrs.basic"/>
280
+ <ref name="common.attrs.i18n"/>
281
+ <ref name="common.attrs.present"/>
282
+ <ref name="common.attrs.other"/>
283
+ <ref name="link.attrs.rel"/>
284
+ <optional>
285
+ <ref name="link.attrs.href"/>
286
+ </optional>
287
+ <optional>
288
+ <ref name="link.attrs.as"/>
289
+ </optional>
290
+ <optional>
291
+ <ref name="link.attrs.integrity"/>
292
+ </optional>
293
+ <optional>
294
+ <ref name="shared-hyperlink.attrs.hreflang"/>
295
+ </optional>
296
+ <optional>
297
+ <ref name="shared-hyperlink.attrs.media"/>
298
+ </optional>
299
+ <optional>
300
+ <ref name="shared-hyperlink.attrs.type"/>
301
+ </optional>
302
+ <optional>
303
+ <ref name="referrerpolicy"/>
304
+ </optional>
305
+ <optional>
306
+ <ref name="link.attrs.sizes"/>
307
+ </optional>
308
+ <optional>
309
+ <ref name="link.attrs.color"/>
310
+ </optional>
311
+ <optional>
312
+ <ref name="link.attrs.disabled"/>
313
+ </optional>
314
+ <optional>
315
+ <ref name="link.attrs.scope"/>
316
+ </optional>
317
+ <optional>
318
+ <ref name="link.attrs.updateviacache"/>
319
+ </optional>
320
+ <optional>
321
+ <ref name="link.attrs.workertype"/>
322
+ </optional>
323
+ <optional>
324
+ <ref name="link.attrs.imagesrcset"/>
325
+ </optional>
326
+ <optional>
327
+ <ref name="link.attrs.imagesizes"/>
328
+ </optional>
329
+ <optional>
330
+ <ref name="common.attrs.fetchpriority"/>
331
+ </optional>
332
+ <optional>
333
+ <!-- link.attrs.title included in common.attrs -->
334
+ <ref name="embedded.content.attrs.crossorigin"/>
335
+ </optional>
336
+ <optional>
337
+ <ref name="common.attrs.blocking"/>
338
+ </optional>
339
+ <optional>
340
+ <ref name="common.attrs.aria.role.link"/>
341
+ </optional>
342
+ </interleave>
343
+ </define>
344
+ <define name="link.attrs.href">
345
+ <attribute name="href">
346
+ <ref name="common.data.uri.non-empty"/>
347
+ </attribute>
348
+ </define>
349
+ <define name="link.attrs.rel">
350
+ <attribute name="rel">
351
+ <data type="string" datatypeLibrary=""/>
352
+ </attribute>
353
+ </define>
354
+ <define name="link.attrs.as">
355
+ <attribute name="as">
356
+ <choice>
357
+ <value type="string" datatypeLibrary=""/>
358
+ <value type="string" datatypeLibrary="">audio</value>
359
+ <value type="string" datatypeLibrary="">audioworklet</value>
360
+ <value type="string" datatypeLibrary="">document</value>
361
+ <value type="string" datatypeLibrary="">embed</value>
362
+ <value type="string" datatypeLibrary="">fetch</value>
363
+ <value type="string" datatypeLibrary="">font</value>
364
+ <value type="string" datatypeLibrary="">image</value>
365
+ <value type="string" datatypeLibrary="">manifest</value>
366
+ <value type="string" datatypeLibrary="">object</value>
367
+ <value type="string" datatypeLibrary="">paintworklet</value>
368
+ <value type="string" datatypeLibrary="">report</value>
369
+ <value type="string" datatypeLibrary="">script</value>
370
+ <value type="string" datatypeLibrary="">serviceworker</value>
371
+ <value type="string" datatypeLibrary="">sharedworker</value>
372
+ <value type="string" datatypeLibrary="">style</value>
373
+ <value type="string" datatypeLibrary="">track</value>
374
+ <value type="string" datatypeLibrary="">video</value>
375
+ <value type="string" datatypeLibrary="">worker</value>
376
+ <value type="string" datatypeLibrary="">xslt</value>
377
+ </choice>
378
+ </attribute>
379
+ </define>
380
+ <define name="link.attrs.integrity">
381
+ <attribute name="integrity">
382
+ <ref name="common.data.integrity"/>
383
+ </attribute>
384
+ </define>
385
+ <define name="link.attrs.sizes">
386
+ <attribute name="sizes">
387
+ <choice>
388
+ <value>any</value>
389
+ <ref name="common.data.sizes"/>
390
+ </choice>
391
+ </attribute>
392
+ </define>
393
+ <define name="link.attrs.color">
394
+ <attribute name="color">
395
+ <ref name="common.data.color"/>
396
+ </attribute>
397
+ </define>
398
+ <define name="link.attrs.disabled">
399
+ <attribute name="disabled">
400
+ <choice>
401
+ <value>disabled</value>
402
+ <value/>
403
+ </choice>
404
+ </attribute>
405
+ </define>
406
+ <define name="link.attrs.scope">
407
+ <attribute name="scope">
408
+ <ref name="common.data.uri"/>
409
+ </attribute>
410
+ </define>
411
+ <define name="link.attrs.updateviacache">
412
+ <attribute name="updateviacache">
413
+ <choice>
414
+ <value type="string" datatypeLibrary="">imports</value>
415
+ <value type="string" datatypeLibrary="">all</value>
416
+ <value type="string" datatypeLibrary="">none</value>
417
+ </choice>
418
+ </attribute>
419
+ </define>
420
+ <define name="link.attrs.workertype">
421
+ <attribute name="workertype">
422
+ <choice>
423
+ <value type="string" datatypeLibrary="">classic</value>
424
+ <value type="string" datatypeLibrary="">module</value>
425
+ </choice>
426
+ </attribute>
427
+ </define>
428
+ <define name="link.attrs.imagesrcset">
429
+ <interleave>
430
+ <attribute name="imagesrcset">
431
+ <data type="string" datatypeLibrary=""/>
432
+ </attribute>
433
+ <ref name="v5only"/>
434
+ </interleave>
435
+ </define>
436
+ <define name="link.attrs.imagesizes">
437
+ <interleave>
438
+ <attribute name="imagesizes">
439
+ <ref name="common.data.source.size.list"/>
440
+ </attribute>
441
+ <ref name="v5only"/>
442
+ </interleave>
443
+ </define>
444
+ <define name="link.inner">
445
+ <empty/>
446
+ </define>
447
+ <define name="common.elem.metadata" combine="choice">
448
+ <ref name="link.elem"/>
449
+ </define>
450
+ <define name="common.elem.phrasing" combine="choice">
451
+ <ref name="link.elem"/>
452
+ </define>
453
+ <define name="common.elem.flow" combine="choice">
454
+ <ref name="link.elem"/>
455
+ </define>
456
+ <define name="style.elem">
457
+ <a:documentation>Global Style: &lt;style&gt;</a:documentation>
458
+ <element name="style">
459
+ <interleave>
460
+ <ref name="style.inner"/>
461
+ <ref name="style.attrs"/>
462
+ </interleave>
463
+ </element>
464
+ </define>
465
+ <define name="style.attrs">
466
+ <interleave>
467
+ <ref name="common.attrs"/>
468
+ <optional>
469
+ <ref name="style.attrs.type"/>
470
+ </optional>
471
+ <optional>
472
+ <ref name="style.attrs.media"/>
473
+ </optional>
474
+ <optional>
475
+ <ref name="common.attrs.blocking"/>
476
+ </optional>
477
+ </interleave>
478
+ <!-- style.attrs.title included in common.attrs -->
479
+ </define>
480
+ <define name="style.attrs.type">
481
+ <attribute name="type"/>
482
+ </define>
483
+ <define name="style.attrs.media">
484
+ <attribute name="media">
485
+ <ref name="common.data.mediaquery"/>
486
+ </attribute>
487
+ </define>
488
+ <define name="style.inner">
489
+ <ref name="common.inner.anything"/>
490
+ </define>
491
+ <define name="common.elem.metadata" combine="choice">
492
+ <ref name="style.elem"/>
493
+ </define>
494
+ <define name="meta.name.elem">
495
+ <a:documentation>Name-Value Metadata: &lt;meta name&gt;</a:documentation>
496
+ <element name="meta">
497
+ <interleave>
498
+ <ref name="meta.inner"/>
499
+ <ref name="meta.name.attrs"/>
500
+ </interleave>
501
+ </element>
502
+ </define>
503
+ <define name="meta.name.attrs">
504
+ <interleave>
505
+ <ref name="common.attrs.basic"/>
506
+ <ref name="common.attrs.i18n"/>
507
+ <ref name="common.attrs.present"/>
508
+ <ref name="common.attrs.other"/>
509
+ <ref name="meta.name.attrs.name"/>
510
+ <ref name="meta.name.attrs.content"/>
511
+ <optional>
512
+ <ref name="common.attrs.microdata.itemref"/>
513
+ </optional>
514
+ <optional>
515
+ <ref name="common.attrs.microdata.itemscope"/>
516
+ </optional>
517
+ <optional>
518
+ <ref name="common.attrs.microdata.itemtype"/>
519
+ </optional>
520
+ <optional>
521
+ <ref name="common.attrs.microdata.itemid"/>
522
+ </optional>
523
+ <optional>
524
+ <ref name="shared-hyperlink.attrs.media"/>
525
+ </optional>
526
+ </interleave>
527
+ </define>
528
+ <define name="meta.name.attrs.name">
529
+ <attribute name="name">
530
+ <ref name="datatype.string.nonempty"/>
531
+ </attribute>
532
+ </define>
533
+ <define name="meta.name.attrs.content">
534
+ <attribute name="content">
535
+ <data type="string" datatypeLibrary=""/>
536
+ </attribute>
537
+ </define>
538
+ <define name="meta.inner">
539
+ <empty/>
540
+ </define>
541
+ <define name="common.elem.metadata" combine="choice">
542
+ <ref name="meta.name.elem"/>
543
+ </define>
544
+ <define name="meta.http-equiv.refresh.elem">
545
+ <a:documentation>"refresh" pragma directive: &lt;meta http-equiv='refresh'&gt;</a:documentation>
546
+ <element name="meta">
547
+ <interleave>
548
+ <ref name="meta.inner"/>
549
+ <ref name="meta.http-equiv.refresh.attrs"/>
550
+ </interleave>
551
+ </element>
552
+ </define>
553
+ <define name="meta.http-equiv.refresh.attrs">
554
+ <interleave>
555
+ <ref name="common.attrs.basic"/>
556
+ <ref name="common.attrs.i18n"/>
557
+ <ref name="common.attrs.present"/>
558
+ <ref name="common.attrs.other"/>
559
+ <ref name="meta.http-equiv.attrs.http-equiv.refresh"/>
560
+ <ref name="meta.http-equiv.attrs.content.refresh"/>
561
+ </interleave>
562
+ </define>
563
+ <define name="meta.http-equiv.attrs.http-equiv.refresh">
564
+ <attribute name="http-equiv">
565
+ <value>refresh</value>
566
+ </attribute>
567
+ </define>
568
+ <define name="meta.http-equiv.attrs.content.refresh">
569
+ <attribute name="content">
570
+ <ref name="common.data.refresh"/>
571
+ </attribute>
572
+ </define>
573
+ <define name="common.elem.metadata" combine="choice">
574
+ <ref name="meta.http-equiv.refresh.elem"/>
575
+ </define>
576
+ <!--
577
+ not quite right per spec
578
+ if the definition is
579
+ reused in another language
580
+ -->
581
+ <define name="meta.http-equiv.default-style.elem">
582
+ <a:documentation>"default-style" pragma directive: &lt;meta http-equiv='default-style'&gt;</a:documentation>
583
+ <element name="meta">
584
+ <interleave>
585
+ <ref name="meta.inner"/>
586
+ <ref name="meta.http-equiv.default-style.attrs"/>
587
+ </interleave>
588
+ </element>
589
+ </define>
590
+ <define name="meta.http-equiv.default-style.attrs">
591
+ <interleave>
592
+ <ref name="common.attrs.basic"/>
593
+ <ref name="common.attrs.i18n"/>
594
+ <ref name="common.attrs.present"/>
595
+ <ref name="common.attrs.other"/>
596
+ <ref name="meta.http-equiv.attrs.http-equiv.default-style"/>
597
+ <ref name="meta.http-equiv.attrs.content.default-style"/>
598
+ </interleave>
599
+ </define>
600
+ <define name="meta.http-equiv.attrs.http-equiv.default-style">
601
+ <attribute name="http-equiv">
602
+ <value>default-style</value>
603
+ </attribute>
604
+ </define>
605
+ <define name="meta.http-equiv.attrs.content.default-style">
606
+ <attribute name="content">
607
+ <ref name="common.data.default-style"/>
608
+ </attribute>
609
+ </define>
610
+ <define name="common.elem.metadata" combine="choice">
611
+ <ref name="meta.http-equiv.default-style.elem"/>
612
+ </define>
613
+ <!--
614
+ not quite right per spec
615
+ if the definition is
616
+ reused in another language
617
+ -->
618
+ <define name="meta.http-equiv.content-security-policy.elem">
619
+ <a:documentation>Content Security Policy pragma directive: &lt;meta http-equiv='content-security-policy'&gt;</a:documentation>
620
+ <element name="meta">
621
+ <interleave>
622
+ <ref name="meta.inner"/>
623
+ <ref name="meta.http-equiv.content-security-policy.attrs"/>
624
+ </interleave>
625
+ </element>
626
+ </define>
627
+ <define name="meta.http-equiv.content-security-policy.attrs">
628
+ <interleave>
629
+ <ref name="common.attrs.basic"/>
630
+ <ref name="common.attrs.i18n"/>
631
+ <ref name="common.attrs.present"/>
632
+ <ref name="common.attrs.other"/>
633
+ <ref name="meta.http-equiv.attrs.http-equiv.content-security-policy"/>
634
+ <ref name="meta.http-equiv.attrs.content.content-security-policy"/>
635
+ </interleave>
636
+ </define>
637
+ <define name="meta.http-equiv.attrs.http-equiv.content-security-policy">
638
+ <attribute name="http-equiv">
639
+ <value>content-security-policy</value>
640
+ </attribute>
641
+ </define>
642
+ <define name="meta.http-equiv.attrs.content.content-security-policy">
643
+ <attribute name="content">
644
+ <ref name="common.data.content-security-policy"/>
645
+ </attribute>
646
+ </define>
647
+ <define name="common.elem.metadata" combine="choice">
648
+ <ref name="meta.http-equiv.content-security-policy.elem"/>
649
+ </define>
650
+ <define name="meta.http-equiv.x-ua-compatible.elem">
651
+ <a:documentation>"x-ua-compatible" pragma directive: &lt;meta http-equiv='x-ua-compatible'&gt;</a:documentation>
652
+ <element name="meta">
653
+ <interleave>
654
+ <ref name="meta.inner"/>
655
+ <ref name="meta.http-equiv.x-ua-compatible.attrs"/>
656
+ </interleave>
657
+ </element>
658
+ </define>
659
+ <define name="meta.http-equiv.x-ua-compatible.attrs">
660
+ <interleave>
661
+ <ref name="common.attrs.basic"/>
662
+ <ref name="common.attrs.i18n"/>
663
+ <ref name="common.attrs.present"/>
664
+ <ref name="common.attrs.other"/>
665
+ <ref name="meta.http-equiv.attrs.http-equiv.x-ua-compatible"/>
666
+ <ref name="meta.http-equiv.attrs.content.x-ua-compatible"/>
667
+ </interleave>
668
+ </define>
669
+ <define name="meta.http-equiv.attrs.http-equiv.x-ua-compatible">
670
+ <attribute name="http-equiv">
671
+ <value>x-ua-compatible</value>
672
+ </attribute>
673
+ </define>
674
+ <define name="meta.http-equiv.attrs.content.x-ua-compatible">
675
+ <attribute name="content">
676
+ <ref name="common.data.x-ua-compatible"/>
677
+ </attribute>
678
+ </define>
679
+ <define name="common.elem.metadata" combine="choice">
680
+ <ref name="meta.http-equiv.x-ua-compatible.elem"/>
681
+ </define>
682
+ <define name="meta.charset.elem">
683
+ <a:documentation>Inline Character Encoding Statement for HTML: &lt;meta charset&gt;</a:documentation>
684
+ <element name="meta">
685
+ <interleave>
686
+ <ref name="meta.inner"/>
687
+ <ref name="meta.charset.attrs"/>
688
+ </interleave>
689
+ </element>
690
+ </define>
691
+ <define name="meta.charset.attrs">
692
+ <interleave>
693
+ <ref name="common.attrs.basic"/>
694
+ <ref name="common.attrs.i18n"/>
695
+ <ref name="common.attrs.present"/>
696
+ <ref name="common.attrs.other"/>
697
+ <ref name="meta.charset.attrs.charset"/>
698
+ </interleave>
699
+ </define>
700
+ <define name="meta.charset.attrs.charset">
701
+ <attribute name="charset">
702
+ <choice>
703
+ <interleave>
704
+ <data type="string" datatypeLibrary=""/>
705
+ <ref name="HTMLonly"/>
706
+ </interleave>
707
+ <interleave>
708
+ <data type="string">
709
+ <param name="pattern">[uU][tT][fF]-8</param>
710
+ </data>
711
+ <ref name="XMLonly"/>
712
+ </interleave>
713
+ </choice>
714
+ </attribute>
715
+ </define>
716
+ <define name="meta.http-equiv.content-type.elem">
717
+ <a:documentation>Inline Character Encoding Statement for HTML: &lt;meta http-equiv='content-type'&gt;</a:documentation>
718
+ <interleave>
719
+ <element name="meta">
720
+ <interleave>
721
+ <ref name="meta.inner"/>
722
+ <ref name="meta.http-equiv.content-type.attrs"/>
723
+ </interleave>
724
+ </element>
725
+ <ref name="HTMLonly"/>
726
+ </interleave>
727
+ </define>
728
+ <define name="meta.http-equiv.content-type.attrs">
729
+ <interleave>
730
+ <ref name="common.attrs.basic"/>
731
+ <ref name="common.attrs.i18n"/>
732
+ <ref name="common.attrs.present"/>
733
+ <ref name="common.attrs.other"/>
734
+ <ref name="meta.http-equiv.attrs.http-equiv.content-type"/>
735
+ <ref name="meta.http-equiv.attrs.content.content-type"/>
736
+ </interleave>
737
+ </define>
738
+ <define name="meta.http-equiv.attrs.http-equiv.content-type">
739
+ <attribute name="http-equiv">
740
+ <value>content-type</value>
741
+ </attribute>
742
+ </define>
743
+ <define name="meta.http-equiv.attrs.content.content-type">
744
+ <attribute name="content">
745
+ <ref name="common.data.meta-charset"/>
746
+ </attribute>
747
+ </define>
748
+ <define name="common.elem.metadata" combine="choice">
749
+ <choice>
750
+ <ref name="meta.charset.elem"/>
751
+ <ref name="meta.http-equiv.content-type.elem"/>
752
+ </choice>
753
+ </define>
754
+ </grammar>