cacofonix-dtds 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (172) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +11 -0
  3. data/.rspec +3 -0
  4. data/.travis.yml +7 -0
  5. data/CHANGELOG.md +10 -0
  6. data/CODE_OF_CONDUCT.md +74 -0
  7. data/Gemfile +4 -0
  8. data/Gemfile.lock +35 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +70 -0
  11. data/Rakefile +6 -0
  12. data/bin/console +14 -0
  13. data/bin/setup +8 -0
  14. data/cacofonix-dtds.gemspec +34 -0
  15. data/data/2.0/onix-international.dtd +625 -0
  16. data/data/2.0/onix-international.elt +3267 -0
  17. data/data/2.0/xhtml-lat1.ent +196 -0
  18. data/data/2.0/xhtml-special.ent +79 -0
  19. data/data/2.0/xhtml-symbol.ent +242 -0
  20. data/data/2.1r1/iso-amsa.ent +173 -0
  21. data/data/2.1r1/iso-amsb.ent +146 -0
  22. data/data/2.1r1/iso-amsc.ent +49 -0
  23. data/data/2.1r1/iso-amsn.ent +117 -0
  24. data/data/2.1r1/iso-amso.ent +77 -0
  25. data/data/2.1r1/iso-amsr.ent +205 -0
  26. data/data/2.1r1/iso-box.ent +67 -0
  27. data/data/2.1r1/iso-cyr1.ent +94 -0
  28. data/data/2.1r1/iso-cyr2.ent +53 -0
  29. data/data/2.1r1/iso-dia.ent +41 -0
  30. data/data/2.1r1/iso-grk3.ent +70 -0
  31. data/data/2.1r1/iso-lat1.ent +89 -0
  32. data/data/2.1r1/iso-lat2.ent +148 -0
  33. data/data/2.1r1/iso-mfrk.ent +79 -0
  34. data/data/2.1r1/iso-mopf.ent +53 -0
  35. data/data/2.1r1/iso-mscr.ent +79 -0
  36. data/data/2.1r1/iso-num.ent +103 -0
  37. data/data/2.1r1/iso-pub.ent +110 -0
  38. data/data/2.1r1/iso-tech.ent +183 -0
  39. data/data/2.1r1/onix-international.dtd +953 -0
  40. data/data/2.1r1/onix-xhtml.elt +672 -0
  41. data/data/2.1r1/reference.elt +4504 -0
  42. data/data/2.1r1/xhtml-special.ent +79 -0
  43. data/data/2.1r1/xhtml-symbol.ent +242 -0
  44. data/data/2.1r2/iso-amsa.ent +173 -0
  45. data/data/2.1r2/iso-amsb.ent +146 -0
  46. data/data/2.1r2/iso-amsc.ent +49 -0
  47. data/data/2.1r2/iso-amsn.ent +117 -0
  48. data/data/2.1r2/iso-amso.ent +77 -0
  49. data/data/2.1r2/iso-amsr.ent +205 -0
  50. data/data/2.1r2/iso-box.ent +67 -0
  51. data/data/2.1r2/iso-cyr1.ent +94 -0
  52. data/data/2.1r2/iso-cyr2.ent +53 -0
  53. data/data/2.1r2/iso-dia.ent +41 -0
  54. data/data/2.1r2/iso-grk3.ent +70 -0
  55. data/data/2.1r2/iso-lat1.ent +89 -0
  56. data/data/2.1r2/iso-lat2.ent +148 -0
  57. data/data/2.1r2/iso-mfrk.ent +79 -0
  58. data/data/2.1r2/iso-mopf.ent +53 -0
  59. data/data/2.1r2/iso-mscr.ent +79 -0
  60. data/data/2.1r2/iso-num.ent +103 -0
  61. data/data/2.1r2/iso-pub.ent +110 -0
  62. data/data/2.1r2/iso-tech.ent +183 -0
  63. data/data/2.1r2/onix-international.dtd +987 -0
  64. data/data/2.1r2/onix-xhtml.elt +672 -0
  65. data/data/2.1r2/reference.elt +4664 -0
  66. data/data/2.1r2/xhtml-special.ent +79 -0
  67. data/data/2.1r2/xhtml-symbol.ent +242 -0
  68. data/data/2.1r3/reference/iso-amsa.ent +173 -0
  69. data/data/2.1r3/reference/iso-amsb.ent +146 -0
  70. data/data/2.1r3/reference/iso-amsc.ent +49 -0
  71. data/data/2.1r3/reference/iso-amsn.ent +117 -0
  72. data/data/2.1r3/reference/iso-amso.ent +77 -0
  73. data/data/2.1r3/reference/iso-amsr.ent +205 -0
  74. data/data/2.1r3/reference/iso-box.ent +67 -0
  75. data/data/2.1r3/reference/iso-cyr1.ent +94 -0
  76. data/data/2.1r3/reference/iso-cyr2.ent +53 -0
  77. data/data/2.1r3/reference/iso-dia.ent +41 -0
  78. data/data/2.1r3/reference/iso-grk3.ent +70 -0
  79. data/data/2.1r3/reference/iso-lat1.ent +89 -0
  80. data/data/2.1r3/reference/iso-lat2.ent +148 -0
  81. data/data/2.1r3/reference/iso-mfrk.ent +79 -0
  82. data/data/2.1r3/reference/iso-mopf.ent +53 -0
  83. data/data/2.1r3/reference/iso-mscr.ent +79 -0
  84. data/data/2.1r3/reference/iso-num.ent +103 -0
  85. data/data/2.1r3/reference/iso-num.old.ent +103 -0
  86. data/data/2.1r3/reference/iso-pub.ent +110 -0
  87. data/data/2.1r3/reference/iso-tech.ent +183 -0
  88. data/data/2.1r3/reference/onix-international.dtd +1012 -0
  89. data/data/2.1r3/reference/onix-xhtml.elt +672 -0
  90. data/data/2.1r3/reference/reference.elt +4758 -0
  91. data/data/2.1r3/reference/xhtml-special.ent +79 -0
  92. data/data/2.1r3/reference/xhtml-symbol.ent +242 -0
  93. data/data/2.1r3/short/iso-amsa.ent +173 -0
  94. data/data/2.1r3/short/iso-amsb.ent +146 -0
  95. data/data/2.1r3/short/iso-amsc.ent +49 -0
  96. data/data/2.1r3/short/iso-amsn.ent +117 -0
  97. data/data/2.1r3/short/iso-amso.ent +77 -0
  98. data/data/2.1r3/short/iso-amsr.ent +205 -0
  99. data/data/2.1r3/short/iso-box.ent +67 -0
  100. data/data/2.1r3/short/iso-cyr1.ent +94 -0
  101. data/data/2.1r3/short/iso-cyr2.ent +53 -0
  102. data/data/2.1r3/short/iso-dia.ent +41 -0
  103. data/data/2.1r3/short/iso-grk3.ent +70 -0
  104. data/data/2.1r3/short/iso-lat1.ent +89 -0
  105. data/data/2.1r3/short/iso-lat2.ent +148 -0
  106. data/data/2.1r3/short/iso-mfrk.ent +79 -0
  107. data/data/2.1r3/short/iso-mopf.ent +53 -0
  108. data/data/2.1r3/short/iso-mscr.ent +79 -0
  109. data/data/2.1r3/short/iso-num.ent +103 -0
  110. data/data/2.1r3/short/iso-num.old.ent +103 -0
  111. data/data/2.1r3/short/iso-pub.ent +110 -0
  112. data/data/2.1r3/short/iso-tech.ent +183 -0
  113. data/data/2.1r3/short/onix-international.dtd +1013 -0
  114. data/data/2.1r3/short/onix-xhtml.elt +672 -0
  115. data/data/2.1r3/short/short.elt +4758 -0
  116. data/data/2.1r3/short/xhtml-special.ent +79 -0
  117. data/data/2.1r3/short/xhtml-symbol.ent +242 -0
  118. data/data/2.1r4/reference/iso-amsa.ent +173 -0
  119. data/data/2.1r4/reference/iso-amsb.ent +146 -0
  120. data/data/2.1r4/reference/iso-amsc.ent +49 -0
  121. data/data/2.1r4/reference/iso-amsn.ent +117 -0
  122. data/data/2.1r4/reference/iso-amso.ent +77 -0
  123. data/data/2.1r4/reference/iso-amsr.ent +205 -0
  124. data/data/2.1r4/reference/iso-box.ent +67 -0
  125. data/data/2.1r4/reference/iso-cyr1.ent +94 -0
  126. data/data/2.1r4/reference/iso-cyr2.ent +53 -0
  127. data/data/2.1r4/reference/iso-dia.ent +41 -0
  128. data/data/2.1r4/reference/iso-grk3.ent +70 -0
  129. data/data/2.1r4/reference/iso-lat1.ent +89 -0
  130. data/data/2.1r4/reference/iso-lat2.ent +148 -0
  131. data/data/2.1r4/reference/iso-mfrk.ent +79 -0
  132. data/data/2.1r4/reference/iso-mopf.ent +53 -0
  133. data/data/2.1r4/reference/iso-mscr.ent +79 -0
  134. data/data/2.1r4/reference/iso-num.ent +103 -0
  135. data/data/2.1r4/reference/iso-num.old.ent +103 -0
  136. data/data/2.1r4/reference/iso-pub.ent +110 -0
  137. data/data/2.1r4/reference/iso-tech.ent +183 -0
  138. data/data/2.1r4/reference/onix-international.dtd +1024 -0
  139. data/data/2.1r4/reference/onix-xhtml.elt +699 -0
  140. data/data/2.1r4/reference/reference.elt +4801 -0
  141. data/data/2.1r4/reference/xhtml-special.ent +79 -0
  142. data/data/2.1r4/reference/xhtml-symbol.ent +242 -0
  143. data/data/2.1r4/short/iso-amsa.ent +173 -0
  144. data/data/2.1r4/short/iso-amsb.ent +146 -0
  145. data/data/2.1r4/short/iso-amsc.ent +49 -0
  146. data/data/2.1r4/short/iso-amsn.ent +117 -0
  147. data/data/2.1r4/short/iso-amso.ent +77 -0
  148. data/data/2.1r4/short/iso-amsr.ent +205 -0
  149. data/data/2.1r4/short/iso-box.ent +67 -0
  150. data/data/2.1r4/short/iso-cyr1.ent +94 -0
  151. data/data/2.1r4/short/iso-cyr2.ent +53 -0
  152. data/data/2.1r4/short/iso-dia.ent +41 -0
  153. data/data/2.1r4/short/iso-grk3.ent +70 -0
  154. data/data/2.1r4/short/iso-lat1.ent +89 -0
  155. data/data/2.1r4/short/iso-lat2.ent +148 -0
  156. data/data/2.1r4/short/iso-mfrk.ent +79 -0
  157. data/data/2.1r4/short/iso-mopf.ent +53 -0
  158. data/data/2.1r4/short/iso-mscr.ent +79 -0
  159. data/data/2.1r4/short/iso-num.ent +103 -0
  160. data/data/2.1r4/short/iso-num.old.ent +103 -0
  161. data/data/2.1r4/short/iso-pub.ent +110 -0
  162. data/data/2.1r4/short/iso-tech.ent +183 -0
  163. data/data/2.1r4/short/onix-international.dtd +1025 -0
  164. data/data/2.1r4/short/onix-xhtml.elt +699 -0
  165. data/data/2.1r4/short/short.elt +4801 -0
  166. data/data/2.1r4/short/xhtml-special.ent +79 -0
  167. data/data/2.1r4/short/xhtml-symbol.ent +242 -0
  168. data/data/catalog.xml +25 -0
  169. data/lib/cacofonix-dtds.rb +3 -0
  170. data/lib/cacofonix/dtds.rb +25 -0
  171. data/lib/cacofonix/dtds/version.rb +7 -0
  172. metadata +258 -0
@@ -0,0 +1,699 @@
1
+ <!--
2
+ **************************************************
3
+ * *
4
+ * ONIX INTERNATIONAL *
5
+ * *
6
+ * XML DTD *
7
+ * XHTML MODULE *
8
+ * *
9
+ * Original filename: ONIX-INTERNATIONAL.ELT *
10
+ * *
11
+ * Original author: Francis Cave *
12
+ * *
13
+ * Version 2.1 *
14
+ * Revision 01 *
15
+ * Status: DRAFT *
16
+ * Release date: 2011-04-04 *
17
+ * *
18
+ * (c) 2000-2011 EDItEUR *
19
+ * http://www.editeur.org/ *
20
+ * *
21
+ **************************************************
22
+
23
+ THIS MODULE CONTAINS A SUBSET OF THE W3C XHTML 1.0 DTD. IT ONLY INCLUDES
24
+ ELEMENTS AND ASSOCIATED ATTRIBUTES THAT ARE VALID INSIDE THE XHTML ELEMENT
25
+ TYPE 'body', AND EXCLUDES ELEMENT TYPES FOR XHTML FORMS AND SCRIPTS AND
26
+ ATTRIBUTES THAT DEFINE BEHAVIOUR. SOME PARAMETER ENTITIES HAVE BEEN RENAMED
27
+ TO AVOID CLASHES WITH ONIX PARAMETER ENTITY NAMES.
28
+
29
+
30
+ MODULE REVISION HISTORY (IN REVERSE CHRONOLOGICAL ORDER)
31
+
32
+ 2011-04-02: Release 2.1 Revision 04 [JP]
33
+
34
+ 1. Added content models for <ruby>, <rb>, <rt> and <rp>. Note that
35
+ this produces an odd hybrid of XHTML 1.0 and XHTML 1.1 (basically
36
+ is XHTML 1.0 with the addition of the 'simple ruby' from 1.1)
37
+
38
+ -->
39
+
40
+ <!--================ Character mnemonic entities =========================-->
41
+
42
+ <!--
43
+ THE FOLLOWING ENTITY SET IS NOT INCLUDED BECAUSE ITS ENTIRE CONTENTS
44
+ DUPLICATES SPECIAL CHARACTER ENTITIES IN OTHER SETS.
45
+ <!ENTITY % HTMLlat1 PUBLIC
46
+ "-//W3C//ENTITIES Latin 1 for XHTML//EN"
47
+ "xhtml-lat1.ent">
48
+ %HTMLlat1;
49
+ -->
50
+
51
+ <!ENTITY % HTMLsymbol PUBLIC
52
+ "-//W3C//ENTITIES Symbols for XHTML//EN"
53
+ "xhtml-symbol.ent">
54
+ %HTMLsymbol;
55
+
56
+ <!ENTITY % HTMLspecial PUBLIC
57
+ "-//W3C//ENTITIES Special for XHTML//EN"
58
+ "xhtml-special.ent">
59
+ %HTMLspecial;
60
+
61
+ <!--================== Imported Names ====================================-->
62
+
63
+ <!ENTITY % XHTMLContentType "CDATA">
64
+ <!-- media type, as per [RFC2045] -->
65
+
66
+ <!ENTITY % XHTMLContentTypes "CDATA">
67
+ <!-- comma-separated list of media types, as per [RFC2045] -->
68
+
69
+ <!ENTITY % Charset "CDATA">
70
+ <!-- a character encoding, as per [RFC2045] -->
71
+
72
+ <!ENTITY % Charsets "CDATA">
73
+ <!-- a space separated list of character encodings, as per [RFC2045] -->
74
+
75
+ <!ENTITY % XHTMLLanguageCode "NMTOKEN">
76
+ <!-- a language code, as per [RFC1766] -->
77
+
78
+ <!ENTITY % Character "CDATA">
79
+ <!-- a single character from [ISO10646] -->
80
+
81
+ <!ENTITY % XHTMLNumber "CDATA">
82
+ <!-- one or more digits -->
83
+
84
+ <!ENTITY % LinkTypes "CDATA">
85
+ <!-- space-separated list of link types -->
86
+
87
+ <!ENTITY % MediaDesc "CDATA">
88
+ <!-- single or comma-separated list of media descriptors -->
89
+
90
+ <!ENTITY % URI "CDATA">
91
+ <!-- a Uniform Resource Identifier, see [RFC2396] -->
92
+
93
+ <!ENTITY % UriList "CDATA">
94
+ <!-- a space separated list of Uniform Resource Identifiers -->
95
+
96
+ <!ENTITY % Datetime "CDATA">
97
+ <!-- date and time information. ISO date format -->
98
+
99
+ <!ENTITY % Script "CDATA">
100
+ <!-- script expression -->
101
+
102
+ <!ENTITY % StyleSheet "CDATA">
103
+ <!-- style sheet data -->
104
+
105
+ <!ENTITY % XHTMLText "CDATA">
106
+ <!-- used for titles etc. -->
107
+
108
+ <!ENTITY % FrameTarget "NMTOKEN">
109
+ <!-- render in this frame -->
110
+
111
+ <!ENTITY % Length "CDATA">
112
+ <!-- nn for pixels or nn% for percentage length -->
113
+
114
+ <!ENTITY % MultiLength "CDATA">
115
+ <!-- pixel, percentage, or relative -->
116
+
117
+ <!ENTITY % MultiLengths "CDATA">
118
+ <!-- comma-separated list of MultiLength -->
119
+
120
+ <!ENTITY % Pixels "CDATA">
121
+ <!-- integer representing length in pixels -->
122
+
123
+ <!-- these are used for image maps -->
124
+
125
+ <!ENTITY % Shape "(rect|circle|poly|default)">
126
+
127
+ <!ENTITY % Coords "CDATA">
128
+ <!-- comma separated list of lengths -->
129
+
130
+ <!--=================== Generic Attributes ===============================-->
131
+
132
+ <!-- core attributes common to most elements
133
+ id document-wide unique id
134
+ class space separated list of classes
135
+ style associated style info
136
+ title advisory title/amplification
137
+ -->
138
+ <!ENTITY % coreattrs
139
+ "id ID #IMPLIED
140
+ class CDATA #IMPLIED
141
+ style %StyleSheet; #IMPLIED
142
+ title %XHTMLText; #IMPLIED"
143
+ >
144
+
145
+ <!-- internationalization attributes
146
+ lang language code (backwards compatible)
147
+ xml:lang language code (as per XML 1.0 spec)
148
+ dir direction for weak/neutral text
149
+ -->
150
+ <!ENTITY % i18n
151
+ "lang %XHTMLLanguageCode; #IMPLIED
152
+ xml:lang %XHTMLLanguageCode; #IMPLIED
153
+ dir (ltr|rtl) #IMPLIED"
154
+ >
155
+
156
+ <!ENTITY % attrs "%coreattrs; %i18n;">
157
+
158
+ <!--=================== Text Elements ====================================-->
159
+
160
+ <!ENTITY % special "br | span | bdo | object | img | map | ruby">
161
+
162
+ <!ENTITY % fontstyle "tt | i | b | big | small">
163
+
164
+ <!ENTITY % phrase "em | strong | dfn | code | q | sub | sup |
165
+ samp | kbd | var | cite | abbr | acronym">
166
+
167
+ <!ENTITY % inline "a | %special; | %fontstyle; | %phrase;">
168
+
169
+ <!-- %Inline; covers inline or "text-level" elements -->
170
+ <!ENTITY % Inline "(#PCDATA | %inline;)*">
171
+
172
+ <!--================== Block level elements ==============================-->
173
+
174
+ <!ENTITY % heading "h1|h2|h3|h4|h5|h6">
175
+ <!ENTITY % lists "ul | ol | dl">
176
+ <!ENTITY % blocktext "pre | hr | blockquote | address">
177
+
178
+ <!ENTITY % block
179
+ "p | %heading; | div | %lists; | %blocktext; | table">
180
+
181
+ <!ENTITY % Block "(%block;)*">
182
+
183
+ <!-- %Flow; mixes Block and Inline and is used for list items etc. -->
184
+ <!ENTITY % Flow "(#PCDATA | %block; | %inline;)*">
185
+
186
+ <!--================== Content models for exclusions =====================-->
187
+
188
+ <!-- a elements use %Inline; excluding a -->
189
+
190
+ <!ENTITY % a.content "(#PCDATA | %special; | %fontstyle; | %phrase;)*">
191
+
192
+ <!-- pre uses %Inline excluding img, object, big, small, sup or sup -->
193
+
194
+ <!ENTITY % pre.content
195
+ "(#PCDATA | a | br | span | bdo | map | tt | i | b | %phrase;)*">
196
+
197
+ <!--=================== Document Body ====================================-->
198
+
199
+ <!ELEMENT div %Flow;> <!-- generic language/style container -->
200
+ <!ATTLIST div
201
+ %attrs;
202
+ >
203
+
204
+ <!--=================== Paragraphs =======================================-->
205
+
206
+ <!ELEMENT p %Inline;>
207
+ <!ATTLIST p
208
+ %attrs;
209
+ >
210
+
211
+ <!--=================== Headings =========================================-->
212
+
213
+ <!--
214
+ There are six levels of headings from h1 (the most important)
215
+ to h6 (the least important).
216
+ -->
217
+
218
+ <!ELEMENT h1 %Inline;>
219
+ <!ATTLIST h1
220
+ %attrs;
221
+ >
222
+
223
+ <!ELEMENT h2 %Inline;>
224
+ <!ATTLIST h2
225
+ %attrs;
226
+ >
227
+
228
+ <!ELEMENT h3 %Inline;>
229
+ <!ATTLIST h3
230
+ %attrs;
231
+ >
232
+
233
+ <!ELEMENT h4 %Inline;>
234
+ <!ATTLIST h4
235
+ %attrs;
236
+ >
237
+
238
+ <!ELEMENT h5 %Inline;>
239
+ <!ATTLIST h5
240
+ %attrs;
241
+ >
242
+
243
+ <!ELEMENT h6 %Inline;>
244
+ <!ATTLIST h6
245
+ %attrs;
246
+ >
247
+
248
+ <!--=================== Lists ============================================-->
249
+
250
+ <!-- Unordered list -->
251
+
252
+ <!ELEMENT ul (li)+>
253
+ <!ATTLIST ul
254
+ %attrs;
255
+ >
256
+
257
+ <!-- Ordered (numbered) list -->
258
+
259
+ <!ELEMENT ol (li)+>
260
+ <!ATTLIST ol
261
+ %attrs;
262
+ >
263
+
264
+ <!-- list item -->
265
+
266
+ <!ELEMENT li %Flow;>
267
+ <!ATTLIST li
268
+ %attrs;
269
+ >
270
+
271
+ <!-- definition lists - dt for term, dd for its definition -->
272
+
273
+ <!ELEMENT dl (dt|dd)+>
274
+ <!ATTLIST dl
275
+ %attrs;
276
+ >
277
+
278
+ <!ELEMENT dt %Inline;>
279
+ <!ATTLIST dt
280
+ %attrs;
281
+ >
282
+
283
+ <!ELEMENT dd %Flow;>
284
+ <!ATTLIST dd
285
+ %attrs;
286
+ >
287
+
288
+ <!--=================== Address ==========================================-->
289
+
290
+ <!-- information on author -->
291
+
292
+ <!ELEMENT address %Inline;>
293
+ <!ATTLIST address
294
+ %attrs;
295
+ >
296
+
297
+ <!--=================== Horizontal Rule ==================================-->
298
+
299
+ <!ELEMENT hr EMPTY>
300
+ <!ATTLIST hr
301
+ %attrs;
302
+ >
303
+
304
+ <!--=================== Preformatted Text ================================-->
305
+
306
+ <!-- content is %Inline; excluding "img|object|big|small|sub|sup" -->
307
+
308
+ <!ELEMENT pre %pre.content;>
309
+ <!ATTLIST pre
310
+ %attrs;
311
+ xml:space (preserve) #FIXED 'preserve'
312
+ >
313
+
314
+ <!--=================== Block-like Quotes ================================-->
315
+
316
+ <!ELEMENT blockquote %Block;>
317
+ <!ATTLIST blockquote
318
+ %attrs;
319
+ cite %URI; #IMPLIED
320
+ >
321
+
322
+ <!--================== The Anchor Element ================================-->
323
+
324
+ <!-- content is %Inline; except that anchors shouldn't be nested -->
325
+
326
+ <!ELEMENT a %a.content;>
327
+ <!ATTLIST a
328
+ %attrs;
329
+ charset %Charset; #IMPLIED
330
+ type %XHTMLContentType; #IMPLIED
331
+ name NMTOKEN #IMPLIED
332
+ href %URI; #IMPLIED
333
+ hreflang %XHTMLLanguageCode; #IMPLIED
334
+ rel %LinkTypes; #IMPLIED
335
+ rev %LinkTypes; #IMPLIED
336
+ accesskey %Character; #IMPLIED
337
+ shape %Shape; "rect"
338
+ coords %Coords; #IMPLIED
339
+ tabindex %XHTMLNumber; #IMPLIED
340
+ onfocus %Script; #IMPLIED
341
+ onblur %Script; #IMPLIED
342
+ >
343
+
344
+ <!--===================== Inline Elements ================================-->
345
+
346
+ <!ELEMENT span %Inline;> <!-- generic language/style container -->
347
+ <!ATTLIST span
348
+ %attrs;
349
+ >
350
+
351
+ <!ELEMENT bdo %Inline;> <!-- I18N BiDi over-ride -->
352
+ <!ATTLIST bdo
353
+ %coreattrs;
354
+ lang %XHTMLLanguageCode; #IMPLIED
355
+ xml:lang %XHTMLLanguageCode; #IMPLIED
356
+ dir (ltr|rtl) #REQUIRED
357
+ >
358
+
359
+ <!ELEMENT br EMPTY> <!-- forced line break -->
360
+ <!ATTLIST br
361
+ %coreattrs;
362
+ >
363
+
364
+ <!ELEMENT em %Inline;> <!-- emphasis -->
365
+ <!ATTLIST em %attrs;>
366
+
367
+ <!ELEMENT strong %Inline;> <!-- strong emphasis -->
368
+ <!ATTLIST strong %attrs;>
369
+
370
+ <!ELEMENT dfn %Inline;> <!-- definitional -->
371
+ <!ATTLIST dfn %attrs;>
372
+
373
+ <!ELEMENT code %Inline;> <!-- program code -->
374
+ <!ATTLIST code %attrs;>
375
+
376
+ <!ELEMENT samp %Inline;> <!-- sample -->
377
+ <!ATTLIST samp %attrs;>
378
+
379
+ <!ELEMENT kbd %Inline;> <!-- something user would type -->
380
+ <!ATTLIST kbd %attrs;>
381
+
382
+ <!ELEMENT var %Inline;> <!-- variable -->
383
+ <!ATTLIST var %attrs;>
384
+
385
+ <!ELEMENT cite %Inline;> <!-- citation -->
386
+ <!ATTLIST cite %attrs;>
387
+
388
+ <!ELEMENT abbr %Inline;> <!-- abbreviation -->
389
+ <!ATTLIST abbr %attrs;>
390
+
391
+ <!ELEMENT acronym %Inline;> <!-- acronym -->
392
+ <!ATTLIST acronym %attrs;>
393
+
394
+ <!ELEMENT q %Inline;> <!-- inlined quote -->
395
+ <!ATTLIST q
396
+ %attrs;
397
+ cite %URI; #IMPLIED
398
+ >
399
+
400
+ <!ELEMENT sub %Inline;> <!-- subscript -->
401
+ <!ATTLIST sub %attrs;>
402
+
403
+ <!ELEMENT sup %Inline;> <!-- superscript -->
404
+ <!ATTLIST sup %attrs;>
405
+
406
+ <!ELEMENT tt %Inline;> <!-- fixed pitch font -->
407
+ <!ATTLIST tt %attrs;>
408
+
409
+ <!ELEMENT i %Inline;> <!-- italic font -->
410
+ <!ATTLIST i %attrs;>
411
+
412
+ <!ELEMENT b %Inline;> <!-- bold font -->
413
+ <!ATTLIST b %attrs;>
414
+
415
+ <!ELEMENT big %Inline;> <!-- bigger font -->
416
+ <!ATTLIST big %attrs;>
417
+
418
+ <!ELEMENT small %Inline;> <!-- smaller font -->
419
+ <!ATTLIST small %attrs;>
420
+
421
+ <!ELEMENT ruby (rb, (rt | (rp, rt, rp)))> <!-- simple ruby -->
422
+ <!ATTLIST ruby %attrs;>
423
+
424
+ <!--
425
+ ruby base (rb) is the basic text
426
+ ruby text (rt) appears as a small gloss, above rb
427
+ ruby parentheses (rp) appears before and after the gloss, if renderer does not support proper display of glosses
428
+ -->
429
+
430
+ <!ELEMENT rb %Inline;>
431
+ <!ATTLIST rb %attrs;>
432
+
433
+ <!ELEMENT rt %Inline;>
434
+ <!ATTLIST rt %attrs;>
435
+
436
+ <!ELEMENT rp %Inline;>
437
+ <!ATTLIST rp %attrs;>
438
+
439
+ <!--==================== Object ======================================-->
440
+ <!--
441
+ object is used to embed objects as part of HTML pages.
442
+ param elements should precede other content. Parameters
443
+ can also be expressed as attribute/value pairs on the
444
+ object element itself when brevity is desired.
445
+ -->
446
+
447
+ <!ELEMENT object (#PCDATA | param | %block; | %inline;)*>
448
+ <!ATTLIST object
449
+ %attrs;
450
+ declare (declare) #IMPLIED
451
+ classid %URI; #IMPLIED
452
+ codebase %URI; #IMPLIED
453
+ data %URI; #IMPLIED
454
+ type %XHTMLContentType; #IMPLIED
455
+ codetype %XHTMLContentType; #IMPLIED
456
+ archive %UriList; #IMPLIED
457
+ standby %XHTMLText; #IMPLIED
458
+ height %Length; #IMPLIED
459
+ width %Length; #IMPLIED
460
+ usemap %URI; #IMPLIED
461
+ name NMTOKEN #IMPLIED
462
+ tabindex %XHTMLNumber; #IMPLIED
463
+ >
464
+
465
+ <!--
466
+ param is used to supply a named property value.
467
+ In XML it would seem natural to follow RDF and support an
468
+ abbreviated syntax where the param elements are replaced
469
+ by attribute value pairs on the object start tag.
470
+ -->
471
+ <!ELEMENT param EMPTY>
472
+ <!ATTLIST param
473
+ id ID #IMPLIED
474
+ name CDATA #IMPLIED
475
+ value CDATA #IMPLIED
476
+ valuetype (data|ref|object) "data"
477
+ type %XHTMLContentType; #IMPLIED
478
+ >
479
+
480
+ <!--=================== Images ===========================================-->
481
+
482
+ <!--
483
+ To avoid accessibility problems for people who aren't
484
+ able to see the image, you should provide a text
485
+ description using the alt and longdesc attributes.
486
+ In addition, avoid the use of server-side image maps.
487
+ Note that in this DTD there is no name attribute. That
488
+ is only available in the transitional and frameset DTD.
489
+ -->
490
+
491
+ <!ELEMENT img EMPTY>
492
+ <!ATTLIST img
493
+ %attrs;
494
+ src %URI; #REQUIRED
495
+ alt %XHTMLText; #REQUIRED
496
+ longdesc %URI; #IMPLIED
497
+ height %Length; #IMPLIED
498
+ width %Length; #IMPLIED
499
+ usemap %URI; #IMPLIED
500
+ ismap (ismap) #IMPLIED
501
+ >
502
+
503
+ <!-- usemap points to a map element which may be in this document
504
+ or an external document, although the latter is not widely supported -->
505
+
506
+ <!--================== Client-side image maps ============================-->
507
+
508
+ <!-- These can be placed in the same document or grouped in a
509
+ separate document although this isn't yet widely supported -->
510
+
511
+ <!ELEMENT map ((%block;)+ | area+)>
512
+ <!ATTLIST map
513
+ %i18n;
514
+ id ID #REQUIRED
515
+ class CDATA #IMPLIED
516
+ style %StyleSheet; #IMPLIED
517
+ title %XHTMLText; #IMPLIED
518
+ name NMTOKEN #IMPLIED
519
+ >
520
+
521
+ <!ELEMENT area EMPTY>
522
+ <!ATTLIST area
523
+ %attrs;
524
+ shape %Shape; "rect"
525
+ coords %Coords; #IMPLIED
526
+ href %URI; #IMPLIED
527
+ nohref (nohref) #IMPLIED
528
+ alt %XHTMLText; #REQUIRED
529
+ >
530
+
531
+ <!--======================= Tables =======================================-->
532
+
533
+ <!-- Derived from IETF HTML table standard, see [RFC1942] -->
534
+
535
+ <!--
536
+ The border attribute sets the thickness of the frame around the
537
+ table. The default units are screen pixels.
538
+
539
+ The frame attribute specifies which parts of the frame around
540
+ the table should be rendered. The values are not the same as
541
+ CALS to avoid a name clash with the valign attribute.
542
+ -->
543
+ <!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
544
+
545
+ <!--
546
+ The rules attribute defines which rules to draw between cells:
547
+
548
+ If rules is absent then assume:
549
+ "none" if border is absent or border="0" otherwise "all"
550
+ -->
551
+
552
+ <!ENTITY % TRules "(none | groups | rows | cols | all)">
553
+
554
+ <!-- horizontal placement of table relative to document -->
555
+ <!ENTITY % TAlign "(left|center|right)">
556
+
557
+ <!-- horizontal alignment attributes for cell contents
558
+
559
+ char alignment char, e.g. char=':'
560
+ charoff offset for alignment char
561
+ -->
562
+ <!ENTITY % cellhalign
563
+ "align (left|center|right|justify|char) #IMPLIED
564
+ char %Character; #IMPLIED
565
+ charoff %Length; #IMPLIED"
566
+ >
567
+
568
+ <!-- vertical alignment attributes for cell contents -->
569
+ <!ENTITY % cellvalign
570
+ "valign (top|middle|bottom|baseline) #IMPLIED"
571
+ >
572
+
573
+ <!ELEMENT table
574
+ (caption?, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+))>
575
+ <!ELEMENT caption %Inline;>
576
+ <!ELEMENT thead (tr)+>
577
+ <!ELEMENT tfoot (tr)+>
578
+ <!ELEMENT tbody (tr)+>
579
+ <!ELEMENT colgroup (col)*>
580
+ <!ELEMENT col EMPTY>
581
+ <!ELEMENT tr (th|td)+>
582
+ <!ELEMENT th %Flow;>
583
+ <!ELEMENT td %Flow;>
584
+
585
+ <!ATTLIST table
586
+ %attrs;
587
+ summary %XHTMLText; #IMPLIED
588
+ width %Length; #IMPLIED
589
+ border %Pixels; #IMPLIED
590
+ frame %TFrame; #IMPLIED
591
+ rules %TRules; #IMPLIED
592
+ cellspacing %Length; #IMPLIED
593
+ cellpadding %Length; #IMPLIED
594
+ >
595
+
596
+ <!ENTITY % CAlign "(top|bottom|left|right)">
597
+
598
+ <!ATTLIST caption
599
+ %attrs;
600
+ >
601
+
602
+ <!--
603
+ colgroup groups a set of col elements. It allows you to group
604
+ several semantically related columns together.
605
+ -->
606
+ <!ATTLIST colgroup
607
+ %attrs;
608
+ span %XHTMLNumber; "1"
609
+ width %MultiLength; #IMPLIED
610
+ %cellhalign;
611
+ %cellvalign;
612
+ >
613
+
614
+ <!--
615
+ col elements define the alignment properties for cells in
616
+ one or more columns.
617
+
618
+ The width attribute specifies the width of the columns, e.g.
619
+
620
+ width=64 width in screen pixels
621
+ width=0.5* relative width of 0.5
622
+
623
+ The span attribute causes the attributes of one
624
+ col element to apply to more than one column.
625
+ -->
626
+ <!ATTLIST col
627
+ %attrs;
628
+ span %XHTMLNumber; "1"
629
+ width %MultiLength; #IMPLIED
630
+ %cellhalign;
631
+ %cellvalign;
632
+ >
633
+
634
+ <!--
635
+ Use thead to duplicate headers when breaking table
636
+ across page boundaries, or for static headers when
637
+ tbody sections are rendered in scrolling panel.
638
+
639
+ Use tfoot to duplicate footers when breaking table
640
+ across page boundaries, or for static footers when
641
+ tbody sections are rendered in scrolling panel.
642
+
643
+ Use multiple tbody sections when rules are needed
644
+ between groups of table rows.
645
+ -->
646
+ <!ATTLIST thead
647
+ %attrs;
648
+ %cellhalign;
649
+ %cellvalign;
650
+ >
651
+
652
+ <!ATTLIST tfoot
653
+ %attrs;
654
+ %cellhalign;
655
+ %cellvalign;
656
+ >
657
+
658
+ <!ATTLIST tbody
659
+ %attrs;
660
+ %cellhalign;
661
+ %cellvalign;
662
+ >
663
+
664
+ <!ATTLIST tr
665
+ %attrs;
666
+ %cellhalign;
667
+ %cellvalign;
668
+ >
669
+
670
+
671
+ <!-- Scope is simpler than headers attribute for common tables -->
672
+ <!ENTITY % Scope "(row|col|rowgroup|colgroup)">
673
+
674
+ <!-- th is for headers, td for data and for cells acting as both -->
675
+
676
+ <!ATTLIST th
677
+ %attrs;
678
+ abbr %XHTMLText; #IMPLIED
679
+ axis CDATA #IMPLIED
680
+ headers IDREFS #IMPLIED
681
+ scope %Scope; #IMPLIED
682
+ rowspan %XHTMLNumber; "1"
683
+ colspan %XHTMLNumber; "1"
684
+ %cellhalign;
685
+ %cellvalign;
686
+ >
687
+
688
+ <!ATTLIST td
689
+ %attrs;
690
+ abbr %XHTMLText; #IMPLIED
691
+ axis CDATA #IMPLIED
692
+ headers IDREFS #IMPLIED
693
+ scope %Scope; #IMPLIED
694
+ rowspan %XHTMLNumber; "1"
695
+ colspan %XHTMLNumber; "1"
696
+ %cellhalign;
697
+ %cellvalign;
698
+ >
699
+