ccls-html_test 0.3.5

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.
@@ -0,0 +1,80 @@
1
+ <!-- Special characters for XHTML -->
2
+
3
+ <!-- Character entity set. Typical invocation:
4
+ <!ENTITY % HTMLspecial PUBLIC
5
+ "-//W3C//ENTITIES Special for XHTML//EN"
6
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml-special.ent">
7
+ %HTMLspecial;
8
+ -->
9
+
10
+ <!-- Portions (C) International Organization for Standardization 1986:
11
+ Permission to copy in any form is granted for use with
12
+ conforming SGML systems and applications as defined in
13
+ ISO 8879, provided this notice is included in all copies.
14
+ -->
15
+
16
+ <!-- Relevant ISO entity set is given unless names are newly introduced.
17
+ New names (i.e., not in ISO 8879 list) do not clash with any
18
+ existing ISO 8879 entity names. ISO 10646 character numbers
19
+ are given for each character, in hex. values are decimal
20
+ conversions of the ISO 10646 values and refer to the document
21
+ character set. Names are Unicode names.
22
+ -->
23
+
24
+ <!-- C0 Controls and Basic Latin -->
25
+ <!ENTITY quot "&#34;"> <!-- quotation mark, U+0022 ISOnum -->
26
+ <!ENTITY amp "&#38;#38;"> <!-- ampersand, U+0026 ISOnum -->
27
+ <!ENTITY lt "&#38;#60;"> <!-- less-than sign, U+003C ISOnum -->
28
+ <!ENTITY gt "&#62;"> <!-- greater-than sign, U+003E ISOnum -->
29
+ <!ENTITY apos "&#39;"> <!-- apostrophe = APL quote, U+0027 ISOnum -->
30
+
31
+ <!-- Latin Extended-A -->
32
+ <!ENTITY OElig "&#338;"> <!-- latin capital ligature OE,
33
+ U+0152 ISOlat2 -->
34
+ <!ENTITY oelig "&#339;"> <!-- latin small ligature oe, U+0153 ISOlat2 -->
35
+ <!-- ligature is a misnomer, this is a separate character in some languages -->
36
+ <!ENTITY Scaron "&#352;"> <!-- latin capital letter S with caron,
37
+ U+0160 ISOlat2 -->
38
+ <!ENTITY scaron "&#353;"> <!-- latin small letter s with caron,
39
+ U+0161 ISOlat2 -->
40
+ <!ENTITY Yuml "&#376;"> <!-- latin capital letter Y with diaeresis,
41
+ U+0178 ISOlat2 -->
42
+
43
+ <!-- Spacing Modifier Letters -->
44
+ <!ENTITY circ "&#710;"> <!-- modifier letter circumflex accent,
45
+ U+02C6 ISOpub -->
46
+ <!ENTITY tilde "&#732;"> <!-- small tilde, U+02DC ISOdia -->
47
+
48
+ <!-- General Punctuation -->
49
+ <!ENTITY ensp "&#8194;"> <!-- en space, U+2002 ISOpub -->
50
+ <!ENTITY emsp "&#8195;"> <!-- em space, U+2003 ISOpub -->
51
+ <!ENTITY thinsp "&#8201;"> <!-- thin space, U+2009 ISOpub -->
52
+ <!ENTITY zwnj "&#8204;"> <!-- zero width non-joiner,
53
+ U+200C NEW RFC 2070 -->
54
+ <!ENTITY zwj "&#8205;"> <!-- zero width joiner, U+200D NEW RFC 2070 -->
55
+ <!ENTITY lrm "&#8206;"> <!-- left-to-right mark, U+200E NEW RFC 2070 -->
56
+ <!ENTITY rlm "&#8207;"> <!-- right-to-left mark, U+200F NEW RFC 2070 -->
57
+ <!ENTITY ndash "&#8211;"> <!-- en dash, U+2013 ISOpub -->
58
+ <!ENTITY mdash "&#8212;"> <!-- em dash, U+2014 ISOpub -->
59
+ <!ENTITY lsquo "&#8216;"> <!-- left single quotation mark,
60
+ U+2018 ISOnum -->
61
+ <!ENTITY rsquo "&#8217;"> <!-- right single quotation mark,
62
+ U+2019 ISOnum -->
63
+ <!ENTITY sbquo "&#8218;"> <!-- single low-9 quotation mark, U+201A NEW -->
64
+ <!ENTITY ldquo "&#8220;"> <!-- left double quotation mark,
65
+ U+201C ISOnum -->
66
+ <!ENTITY rdquo "&#8221;"> <!-- right double quotation mark,
67
+ U+201D ISOnum -->
68
+ <!ENTITY bdquo "&#8222;"> <!-- double low-9 quotation mark, U+201E NEW -->
69
+ <!ENTITY dagger "&#8224;"> <!-- dagger, U+2020 ISOpub -->
70
+ <!ENTITY Dagger "&#8225;"> <!-- double dagger, U+2021 ISOpub -->
71
+ <!ENTITY permil "&#8240;"> <!-- per mille sign, U+2030 ISOtech -->
72
+ <!ENTITY lsaquo "&#8249;"> <!-- single left-pointing angle quotation mark,
73
+ U+2039 ISO proposed -->
74
+ <!-- lsaquo is proposed but not yet ISO standardized -->
75
+ <!ENTITY rsaquo "&#8250;"> <!-- single right-pointing angle quotation mark,
76
+ U+203A ISO proposed -->
77
+ <!-- rsaquo is proposed but not yet ISO standardized -->
78
+
79
+ <!-- Currency Symbols -->
80
+ <!ENTITY euro "&#8364;"> <!-- euro sign, U+20AC NEW -->
@@ -0,0 +1,237 @@
1
+ <!-- Mathematical, Greek and Symbolic characters for XHTML -->
2
+
3
+ <!-- Character entity set. Typical invocation:
4
+ <!ENTITY % HTMLsymbol PUBLIC
5
+ "-//W3C//ENTITIES Symbols for XHTML//EN"
6
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml-symbol.ent">
7
+ %HTMLsymbol;
8
+ -->
9
+
10
+ <!-- Portions (C) International Organization for Standardization 1986:
11
+ Permission to copy in any form is granted for use with
12
+ conforming SGML systems and applications as defined in
13
+ ISO 8879, provided this notice is included in all copies.
14
+ -->
15
+
16
+ <!-- Relevant ISO entity set is given unless names are newly introduced.
17
+ New names (i.e., not in ISO 8879 list) do not clash with any
18
+ existing ISO 8879 entity names. ISO 10646 character numbers
19
+ are given for each character, in hex. values are decimal
20
+ conversions of the ISO 10646 values and refer to the document
21
+ character set. Names are Unicode names.
22
+ -->
23
+
24
+ <!-- Latin Extended-B -->
25
+ <!ENTITY fnof "&#402;"> <!-- latin small letter f with hook = function
26
+ = florin, U+0192 ISOtech -->
27
+
28
+ <!-- Greek -->
29
+ <!ENTITY Alpha "&#913;"> <!-- greek capital letter alpha, U+0391 -->
30
+ <!ENTITY Beta "&#914;"> <!-- greek capital letter beta, U+0392 -->
31
+ <!ENTITY Gamma "&#915;"> <!-- greek capital letter gamma,
32
+ U+0393 ISOgrk3 -->
33
+ <!ENTITY Delta "&#916;"> <!-- greek capital letter delta,
34
+ U+0394 ISOgrk3 -->
35
+ <!ENTITY Epsilon "&#917;"> <!-- greek capital letter epsilon, U+0395 -->
36
+ <!ENTITY Zeta "&#918;"> <!-- greek capital letter zeta, U+0396 -->
37
+ <!ENTITY Eta "&#919;"> <!-- greek capital letter eta, U+0397 -->
38
+ <!ENTITY Theta "&#920;"> <!-- greek capital letter theta,
39
+ U+0398 ISOgrk3 -->
40
+ <!ENTITY Iota "&#921;"> <!-- greek capital letter iota, U+0399 -->
41
+ <!ENTITY Kappa "&#922;"> <!-- greek capital letter kappa, U+039A -->
42
+ <!ENTITY Lambda "&#923;"> <!-- greek capital letter lamda,
43
+ U+039B ISOgrk3 -->
44
+ <!ENTITY Mu "&#924;"> <!-- greek capital letter mu, U+039C -->
45
+ <!ENTITY Nu "&#925;"> <!-- greek capital letter nu, U+039D -->
46
+ <!ENTITY Xi "&#926;"> <!-- greek capital letter xi, U+039E ISOgrk3 -->
47
+ <!ENTITY Omicron "&#927;"> <!-- greek capital letter omicron, U+039F -->
48
+ <!ENTITY Pi "&#928;"> <!-- greek capital letter pi, U+03A0 ISOgrk3 -->
49
+ <!ENTITY Rho "&#929;"> <!-- greek capital letter rho, U+03A1 -->
50
+ <!-- there is no Sigmaf, and no U+03A2 character either -->
51
+ <!ENTITY Sigma "&#931;"> <!-- greek capital letter sigma,
52
+ U+03A3 ISOgrk3 -->
53
+ <!ENTITY Tau "&#932;"> <!-- greek capital letter tau, U+03A4 -->
54
+ <!ENTITY Upsilon "&#933;"> <!-- greek capital letter upsilon,
55
+ U+03A5 ISOgrk3 -->
56
+ <!ENTITY Phi "&#934;"> <!-- greek capital letter phi,
57
+ U+03A6 ISOgrk3 -->
58
+ <!ENTITY Chi "&#935;"> <!-- greek capital letter chi, U+03A7 -->
59
+ <!ENTITY Psi "&#936;"> <!-- greek capital letter psi,
60
+ U+03A8 ISOgrk3 -->
61
+ <!ENTITY Omega "&#937;"> <!-- greek capital letter omega,
62
+ U+03A9 ISOgrk3 -->
63
+
64
+ <!ENTITY alpha "&#945;"> <!-- greek small letter alpha,
65
+ U+03B1 ISOgrk3 -->
66
+ <!ENTITY beta "&#946;"> <!-- greek small letter beta, U+03B2 ISOgrk3 -->
67
+ <!ENTITY gamma "&#947;"> <!-- greek small letter gamma,
68
+ U+03B3 ISOgrk3 -->
69
+ <!ENTITY delta "&#948;"> <!-- greek small letter delta,
70
+ U+03B4 ISOgrk3 -->
71
+ <!ENTITY epsilon "&#949;"> <!-- greek small letter epsilon,
72
+ U+03B5 ISOgrk3 -->
73
+ <!ENTITY zeta "&#950;"> <!-- greek small letter zeta, U+03B6 ISOgrk3 -->
74
+ <!ENTITY eta "&#951;"> <!-- greek small letter eta, U+03B7 ISOgrk3 -->
75
+ <!ENTITY theta "&#952;"> <!-- greek small letter theta,
76
+ U+03B8 ISOgrk3 -->
77
+ <!ENTITY iota "&#953;"> <!-- greek small letter iota, U+03B9 ISOgrk3 -->
78
+ <!ENTITY kappa "&#954;"> <!-- greek small letter kappa,
79
+ U+03BA ISOgrk3 -->
80
+ <!ENTITY lambda "&#955;"> <!-- greek small letter lamda,
81
+ U+03BB ISOgrk3 -->
82
+ <!ENTITY mu "&#956;"> <!-- greek small letter mu, U+03BC ISOgrk3 -->
83
+ <!ENTITY nu "&#957;"> <!-- greek small letter nu, U+03BD ISOgrk3 -->
84
+ <!ENTITY xi "&#958;"> <!-- greek small letter xi, U+03BE ISOgrk3 -->
85
+ <!ENTITY omicron "&#959;"> <!-- greek small letter omicron, U+03BF NEW -->
86
+ <!ENTITY pi "&#960;"> <!-- greek small letter pi, U+03C0 ISOgrk3 -->
87
+ <!ENTITY rho "&#961;"> <!-- greek small letter rho, U+03C1 ISOgrk3 -->
88
+ <!ENTITY sigmaf "&#962;"> <!-- greek small letter final sigma,
89
+ U+03C2 ISOgrk3 -->
90
+ <!ENTITY sigma "&#963;"> <!-- greek small letter sigma,
91
+ U+03C3 ISOgrk3 -->
92
+ <!ENTITY tau "&#964;"> <!-- greek small letter tau, U+03C4 ISOgrk3 -->
93
+ <!ENTITY upsilon "&#965;"> <!-- greek small letter upsilon,
94
+ U+03C5 ISOgrk3 -->
95
+ <!ENTITY phi "&#966;"> <!-- greek small letter phi, U+03C6 ISOgrk3 -->
96
+ <!ENTITY chi "&#967;"> <!-- greek small letter chi, U+03C7 ISOgrk3 -->
97
+ <!ENTITY psi "&#968;"> <!-- greek small letter psi, U+03C8 ISOgrk3 -->
98
+ <!ENTITY omega "&#969;"> <!-- greek small letter omega,
99
+ U+03C9 ISOgrk3 -->
100
+ <!ENTITY thetasym "&#977;"> <!-- greek theta symbol,
101
+ U+03D1 NEW -->
102
+ <!ENTITY upsih "&#978;"> <!-- greek upsilon with hook symbol,
103
+ U+03D2 NEW -->
104
+ <!ENTITY piv "&#982;"> <!-- greek pi symbol, U+03D6 ISOgrk3 -->
105
+
106
+ <!-- General Punctuation -->
107
+ <!ENTITY bull "&#8226;"> <!-- bullet = black small circle,
108
+ U+2022 ISOpub -->
109
+ <!-- bullet is NOT the same as bullet operator, U+2219 -->
110
+ <!ENTITY hellip "&#8230;"> <!-- horizontal ellipsis = three dot leader,
111
+ U+2026 ISOpub -->
112
+ <!ENTITY prime "&#8242;"> <!-- prime = minutes = feet, U+2032 ISOtech -->
113
+ <!ENTITY Prime "&#8243;"> <!-- double prime = seconds = inches,
114
+ U+2033 ISOtech -->
115
+ <!ENTITY oline "&#8254;"> <!-- overline = spacing overscore,
116
+ U+203E NEW -->
117
+ <!ENTITY frasl "&#8260;"> <!-- fraction slash, U+2044 NEW -->
118
+
119
+ <!-- Letterlike Symbols -->
120
+ <!ENTITY weierp "&#8472;"> <!-- script capital P = power set
121
+ = Weierstrass p, U+2118 ISOamso -->
122
+ <!ENTITY image "&#8465;"> <!-- black-letter capital I = imaginary part,
123
+ U+2111 ISOamso -->
124
+ <!ENTITY real "&#8476;"> <!-- black-letter capital R = real part symbol,
125
+ U+211C ISOamso -->
126
+ <!ENTITY trade "&#8482;"> <!-- trade mark sign, U+2122 ISOnum -->
127
+ <!ENTITY alefsym "&#8501;"> <!-- alef symbol = first transfinite cardinal,
128
+ U+2135 NEW -->
129
+ <!-- alef symbol is NOT the same as hebrew letter alef,
130
+ U+05D0 although the same glyph could be used to depict both characters -->
131
+
132
+ <!-- Arrows -->
133
+ <!ENTITY larr "&#8592;"> <!-- leftwards arrow, U+2190 ISOnum -->
134
+ <!ENTITY uarr "&#8593;"> <!-- upwards arrow, U+2191 ISOnum-->
135
+ <!ENTITY rarr "&#8594;"> <!-- rightwards arrow, U+2192 ISOnum -->
136
+ <!ENTITY darr "&#8595;"> <!-- downwards arrow, U+2193 ISOnum -->
137
+ <!ENTITY harr "&#8596;"> <!-- left right arrow, U+2194 ISOamsa -->
138
+ <!ENTITY crarr "&#8629;"> <!-- downwards arrow with corner leftwards
139
+ = carriage return, U+21B5 NEW -->
140
+ <!ENTITY lArr "&#8656;"> <!-- leftwards double arrow, U+21D0 ISOtech -->
141
+ <!-- Unicode does not say that lArr is the same as the 'is implied by' arrow
142
+ but also does not have any other character for that function. So lArr can
143
+ be used for 'is implied by' as ISOtech suggests -->
144
+ <!ENTITY uArr "&#8657;"> <!-- upwards double arrow, U+21D1 ISOamsa -->
145
+ <!ENTITY rArr "&#8658;"> <!-- rightwards double arrow,
146
+ U+21D2 ISOtech -->
147
+ <!-- Unicode does not say this is the 'implies' character but does not have
148
+ another character with this function so rArr can be used for 'implies'
149
+ as ISOtech suggests -->
150
+ <!ENTITY dArr "&#8659;"> <!-- downwards double arrow, U+21D3 ISOamsa -->
151
+ <!ENTITY hArr "&#8660;"> <!-- left right double arrow,
152
+ U+21D4 ISOamsa -->
153
+
154
+ <!-- Mathematical Operators -->
155
+ <!ENTITY forall "&#8704;"> <!-- for all, U+2200 ISOtech -->
156
+ <!ENTITY part "&#8706;"> <!-- partial differential, U+2202 ISOtech -->
157
+ <!ENTITY exist "&#8707;"> <!-- there exists, U+2203 ISOtech -->
158
+ <!ENTITY empty "&#8709;"> <!-- empty set = null set, U+2205 ISOamso -->
159
+ <!ENTITY nabla "&#8711;"> <!-- nabla = backward difference,
160
+ U+2207 ISOtech -->
161
+ <!ENTITY isin "&#8712;"> <!-- element of, U+2208 ISOtech -->
162
+ <!ENTITY notin "&#8713;"> <!-- not an element of, U+2209 ISOtech -->
163
+ <!ENTITY ni "&#8715;"> <!-- contains as member, U+220B ISOtech -->
164
+ <!ENTITY prod "&#8719;"> <!-- n-ary product = product sign,
165
+ U+220F ISOamsb -->
166
+ <!-- prod is NOT the same character as U+03A0 'greek capital letter pi' though
167
+ the same glyph might be used for both -->
168
+ <!ENTITY sum "&#8721;"> <!-- n-ary summation, U+2211 ISOamsb -->
169
+ <!-- sum is NOT the same character as U+03A3 'greek capital letter sigma'
170
+ though the same glyph might be used for both -->
171
+ <!ENTITY minus "&#8722;"> <!-- minus sign, U+2212 ISOtech -->
172
+ <!ENTITY lowast "&#8727;"> <!-- asterisk operator, U+2217 ISOtech -->
173
+ <!ENTITY radic "&#8730;"> <!-- square root = radical sign,
174
+ U+221A ISOtech -->
175
+ <!ENTITY prop "&#8733;"> <!-- proportional to, U+221D ISOtech -->
176
+ <!ENTITY infin "&#8734;"> <!-- infinity, U+221E ISOtech -->
177
+ <!ENTITY ang "&#8736;"> <!-- angle, U+2220 ISOamso -->
178
+ <!ENTITY and "&#8743;"> <!-- logical and = wedge, U+2227 ISOtech -->
179
+ <!ENTITY or "&#8744;"> <!-- logical or = vee, U+2228 ISOtech -->
180
+ <!ENTITY cap "&#8745;"> <!-- intersection = cap, U+2229 ISOtech -->
181
+ <!ENTITY cup "&#8746;"> <!-- union = cup, U+222A ISOtech -->
182
+ <!ENTITY int "&#8747;"> <!-- integral, U+222B ISOtech -->
183
+ <!ENTITY there4 "&#8756;"> <!-- therefore, U+2234 ISOtech -->
184
+ <!ENTITY sim "&#8764;"> <!-- tilde operator = varies with = similar to,
185
+ U+223C ISOtech -->
186
+ <!-- tilde operator is NOT the same character as the tilde, U+007E,
187
+ although the same glyph might be used to represent both -->
188
+ <!ENTITY cong "&#8773;"> <!-- approximately equal to, U+2245 ISOtech -->
189
+ <!ENTITY asymp "&#8776;"> <!-- almost equal to = asymptotic to,
190
+ U+2248 ISOamsr -->
191
+ <!ENTITY ne "&#8800;"> <!-- not equal to, U+2260 ISOtech -->
192
+ <!ENTITY equiv "&#8801;"> <!-- identical to, U+2261 ISOtech -->
193
+ <!ENTITY le "&#8804;"> <!-- less-than or equal to, U+2264 ISOtech -->
194
+ <!ENTITY ge "&#8805;"> <!-- greater-than or equal to,
195
+ U+2265 ISOtech -->
196
+ <!ENTITY sub "&#8834;"> <!-- subset of, U+2282 ISOtech -->
197
+ <!ENTITY sup "&#8835;"> <!-- superset of, U+2283 ISOtech -->
198
+ <!ENTITY nsub "&#8836;"> <!-- not a subset of, U+2284 ISOamsn -->
199
+ <!ENTITY sube "&#8838;"> <!-- subset of or equal to, U+2286 ISOtech -->
200
+ <!ENTITY supe "&#8839;"> <!-- superset of or equal to,
201
+ U+2287 ISOtech -->
202
+ <!ENTITY oplus "&#8853;"> <!-- circled plus = direct sum,
203
+ U+2295 ISOamsb -->
204
+ <!ENTITY otimes "&#8855;"> <!-- circled times = vector product,
205
+ U+2297 ISOamsb -->
206
+ <!ENTITY perp "&#8869;"> <!-- up tack = orthogonal to = perpendicular,
207
+ U+22A5 ISOtech -->
208
+ <!ENTITY sdot "&#8901;"> <!-- dot operator, U+22C5 ISOamsb -->
209
+ <!-- dot operator is NOT the same character as U+00B7 middle dot -->
210
+
211
+ <!-- Miscellaneous Technical -->
212
+ <!ENTITY lceil "&#8968;"> <!-- left ceiling = APL upstile,
213
+ U+2308 ISOamsc -->
214
+ <!ENTITY rceil "&#8969;"> <!-- right ceiling, U+2309 ISOamsc -->
215
+ <!ENTITY lfloor "&#8970;"> <!-- left floor = APL downstile,
216
+ U+230A ISOamsc -->
217
+ <!ENTITY rfloor "&#8971;"> <!-- right floor, U+230B ISOamsc -->
218
+ <!ENTITY lang "&#9001;"> <!-- left-pointing angle bracket = bra,
219
+ U+2329 ISOtech -->
220
+ <!-- lang is NOT the same character as U+003C 'less than sign'
221
+ or U+2039 'single left-pointing angle quotation mark' -->
222
+ <!ENTITY rang "&#9002;"> <!-- right-pointing angle bracket = ket,
223
+ U+232A ISOtech -->
224
+ <!-- rang is NOT the same character as U+003E 'greater than sign'
225
+ or U+203A 'single right-pointing angle quotation mark' -->
226
+
227
+ <!-- Geometric Shapes -->
228
+ <!ENTITY loz "&#9674;"> <!-- lozenge, U+25CA ISOpub -->
229
+
230
+ <!-- Miscellaneous Symbols -->
231
+ <!ENTITY spades "&#9824;"> <!-- black spade suit, U+2660 ISOpub -->
232
+ <!-- black here seems to mean filled as opposed to hollow -->
233
+ <!ENTITY clubs "&#9827;"> <!-- black club suit = shamrock,
234
+ U+2663 ISOpub -->
235
+ <!ENTITY hearts "&#9829;"> <!-- black heart suit = valentine,
236
+ U+2665 ISOpub -->
237
+ <!ENTITY diams "&#9830;"> <!-- black diamond suit, U+2666 ISOpub -->
data/lib/DTD/xhtml.soc ADDED
@@ -0,0 +1,14 @@
1
+ OVERRIDE YES
2
+ -- Oasis entity catalog for Extensible HTML 1.0 --
3
+
4
+ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "xhtml1-strict.dtd"
5
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd"
6
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "xhtml1-frameset.dtd"
7
+
8
+ -- ISO latin 1 entity set for Extensible HTML (XML 1.0 format) --
9
+
10
+ PUBLIC "-//W3C//ENTITIES Latin 1 for XHTML//EN" "xhtml-lat1.ent"
11
+ PUBLIC "-//W3C//ENTITIES Symbols for XHTML//EN" "xhtml-symbol.ent"
12
+ PUBLIC "-//W3C//ENTITIES Special for XHTML//EN" "xhtml-special.ent"
13
+
14
+ SGMLDECL "xhtml1.dcl"
@@ -0,0 +1,1235 @@
1
+ <!--
2
+ Extensible HTML version 1.0 Frameset DTD
3
+
4
+ This is the same as HTML 4 Frameset except for
5
+ changes due to the differences between XML and SGML.
6
+
7
+ Namespace = http://www.w3.org/1999/xhtml
8
+
9
+ For further information, see: http://www.w3.org/TR/xhtml1
10
+
11
+ Copyright (c) 1998-2002 W3C (MIT, INRIA, Keio),
12
+ All Rights Reserved.
13
+
14
+ This DTD module is identified by the PUBLIC and SYSTEM identifiers:
15
+
16
+ PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
17
+ SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"
18
+
19
+ $Revision: 1.26 $
20
+ $Date: 2002/08/01 18:16:48 $
21
+
22
+ -->
23
+
24
+ <!--================ Character mnemonic entities =========================-->
25
+
26
+ <!ENTITY % HTMLlat1 PUBLIC
27
+ "-//W3C//ENTITIES Latin 1 for XHTML//EN"
28
+ "xhtml-lat1.ent">
29
+ %HTMLlat1;
30
+
31
+ <!ENTITY % HTMLsymbol PUBLIC
32
+ "-//W3C//ENTITIES Symbols for XHTML//EN"
33
+ "xhtml-symbol.ent">
34
+ %HTMLsymbol;
35
+
36
+ <!ENTITY % HTMLspecial PUBLIC
37
+ "-//W3C//ENTITIES Special for XHTML//EN"
38
+ "xhtml-special.ent">
39
+ %HTMLspecial;
40
+
41
+ <!--================== Imported Names ====================================-->
42
+
43
+ <!ENTITY % ContentType "CDATA">
44
+ <!-- media type, as per [RFC2045] -->
45
+
46
+ <!ENTITY % ContentTypes "CDATA">
47
+ <!-- comma-separated list of media types, as per [RFC2045] -->
48
+
49
+ <!ENTITY % Charset "CDATA">
50
+ <!-- a character encoding, as per [RFC2045] -->
51
+
52
+ <!ENTITY % Charsets "CDATA">
53
+ <!-- a space separated list of character encodings, as per [RFC2045] -->
54
+
55
+ <!ENTITY % LanguageCode "NMTOKEN">
56
+ <!-- a language code, as per [RFC3066] -->
57
+
58
+ <!ENTITY % Character "CDATA">
59
+ <!-- a single character, as per section 2.2 of [XML] -->
60
+
61
+ <!ENTITY % Number "CDATA">
62
+ <!-- one or more digits -->
63
+
64
+ <!ENTITY % LinkTypes "CDATA">
65
+ <!-- space-separated list of link types -->
66
+
67
+ <!ENTITY % MediaDesc "CDATA">
68
+ <!-- single or comma-separated list of media descriptors -->
69
+
70
+ <!ENTITY % URI "CDATA">
71
+ <!-- a Uniform Resource Identifier, see [RFC2396] -->
72
+
73
+ <!ENTITY % UriList "CDATA">
74
+ <!-- a space separated list of Uniform Resource Identifiers -->
75
+
76
+ <!ENTITY % Datetime "CDATA">
77
+ <!-- date and time information. ISO date format -->
78
+
79
+ <!ENTITY % Script "CDATA">
80
+ <!-- script expression -->
81
+
82
+ <!ENTITY % StyleSheet "CDATA">
83
+ <!-- style sheet data -->
84
+
85
+ <!ENTITY % Text "CDATA">
86
+ <!-- used for titles etc. -->
87
+
88
+ <!ENTITY % FrameTarget "NMTOKEN">
89
+ <!-- render in this frame -->
90
+
91
+ <!ENTITY % Length "CDATA">
92
+ <!-- nn for pixels or nn% for percentage length -->
93
+
94
+ <!ENTITY % MultiLength "CDATA">
95
+ <!-- pixel, percentage, or relative -->
96
+
97
+ <!ENTITY % MultiLengths "CDATA">
98
+ <!-- comma-separated list of MultiLength -->
99
+
100
+ <!ENTITY % Pixels "CDATA">
101
+ <!-- integer representing length in pixels -->
102
+
103
+ <!-- these are used for image maps -->
104
+
105
+ <!ENTITY % Shape "(rect|circle|poly|default)">
106
+
107
+ <!ENTITY % Coords "CDATA">
108
+ <!-- comma separated list of lengths -->
109
+
110
+ <!-- used for object, applet, img, input and iframe -->
111
+ <!ENTITY % ImgAlign "(top|middle|bottom|left|right)">
112
+
113
+ <!-- a color using sRGB: #RRGGBB as Hex values -->
114
+ <!ENTITY % Color "CDATA">
115
+
116
+ <!-- There are also 16 widely known color names with their sRGB values:
117
+
118
+ Black = #000000 Green = #008000
119
+ Silver = #C0C0C0 Lime = #00FF00
120
+ Gray = #808080 Olive = #808000
121
+ White = #FFFFFF Yellow = #FFFF00
122
+ Maroon = #800000 Navy = #000080
123
+ Red = #FF0000 Blue = #0000FF
124
+ Purple = #800080 Teal = #008080
125
+ Fuchsia= #FF00FF Aqua = #00FFFF
126
+ -->
127
+
128
+ <!--=================== Generic Attributes ===============================-->
129
+
130
+ <!-- core attributes common to most elements
131
+ id document-wide unique id
132
+ class space separated list of classes
133
+ style associated style info
134
+ title advisory title/amplification
135
+ -->
136
+ <!ENTITY % coreattrs
137
+ "id ID #IMPLIED
138
+ class CDATA #IMPLIED
139
+ style %StyleSheet; #IMPLIED
140
+ title %Text; #IMPLIED"
141
+ >
142
+
143
+ <!-- internationalization attributes
144
+ lang language code (backwards compatible)
145
+ xml:lang language code (as per XML 1.0 spec)
146
+ dir direction for weak/neutral text
147
+ -->
148
+ <!ENTITY % i18n
149
+ "lang %LanguageCode; #IMPLIED
150
+ xml:lang %LanguageCode; #IMPLIED
151
+ dir (ltr|rtl) #IMPLIED"
152
+ >
153
+
154
+ <!-- attributes for common UI events
155
+ onclick a pointer button was clicked
156
+ ondblclick a pointer button was double clicked
157
+ onmousedown a pointer button was pressed down
158
+ onmouseup a pointer button was released
159
+ onmousemove a pointer was moved onto the element
160
+ onmouseout a pointer was moved away from the element
161
+ onkeypress a key was pressed and released
162
+ onkeydown a key was pressed down
163
+ onkeyup a key was released
164
+ -->
165
+ <!ENTITY % events
166
+ "onclick %Script; #IMPLIED
167
+ ondblclick %Script; #IMPLIED
168
+ onmousedown %Script; #IMPLIED
169
+ onmouseup %Script; #IMPLIED
170
+ onmouseover %Script; #IMPLIED
171
+ onmousemove %Script; #IMPLIED
172
+ onmouseout %Script; #IMPLIED
173
+ onkeypress %Script; #IMPLIED
174
+ onkeydown %Script; #IMPLIED
175
+ onkeyup %Script; #IMPLIED"
176
+ >
177
+
178
+ <!-- attributes for elements that can get the focus
179
+ accesskey accessibility key character
180
+ tabindex position in tabbing order
181
+ onfocus the element got the focus
182
+ onblur the element lost the focus
183
+ -->
184
+ <!ENTITY % focus
185
+ "accesskey %Character; #IMPLIED
186
+ tabindex %Number; #IMPLIED
187
+ onfocus %Script; #IMPLIED
188
+ onblur %Script; #IMPLIED"
189
+ >
190
+
191
+ <!ENTITY % attrs "%coreattrs; %i18n; %events;">
192
+
193
+ <!-- text alignment for p, div, h1-h6. The default is
194
+ align="left" for ltr headings, "right" for rtl -->
195
+
196
+ <!ENTITY % TextAlign "align (left|center|right|justify) #IMPLIED">
197
+
198
+ <!--=================== Text Elements ====================================-->
199
+
200
+ <!ENTITY % special.extra
201
+ "object | applet | img | map | iframe">
202
+
203
+ <!ENTITY % special.basic
204
+ "br | span | bdo">
205
+
206
+ <!ENTITY % special
207
+ "%special.basic; | %special.extra;">
208
+
209
+ <!ENTITY % fontstyle.extra "big | small | font | basefont">
210
+
211
+ <!ENTITY % fontstyle.basic "tt | i | b | u
212
+ | s | strike ">
213
+
214
+ <!ENTITY % fontstyle "%fontstyle.basic; | %fontstyle.extra;">
215
+
216
+ <!ENTITY % phrase.extra "sub | sup">
217
+ <!ENTITY % phrase.basic "em | strong | dfn | code | q |
218
+ samp | kbd | var | cite | abbr | acronym">
219
+
220
+ <!ENTITY % phrase "%phrase.basic; | %phrase.extra;">
221
+
222
+ <!ENTITY % inline.forms "input | select | textarea | label | button">
223
+
224
+ <!-- these can occur at block or inline level -->
225
+ <!ENTITY % misc.inline "ins | del | script">
226
+
227
+ <!-- these can only occur at block level -->
228
+ <!ENTITY % misc "noscript | %misc.inline;">
229
+
230
+
231
+ <!ENTITY % inline "a | %special; | %fontstyle; | %phrase; | %inline.forms;">
232
+
233
+ <!-- %Inline; covers inline or "text-level" elements -->
234
+ <!ENTITY % Inline "(#PCDATA | %inline; | %misc.inline;)*">
235
+
236
+ <!--================== Block level elements ==============================-->
237
+
238
+ <!ENTITY % heading "h1|h2|h3|h4|h5|h6">
239
+ <!ENTITY % lists "ul | ol | dl | menu | dir">
240
+ <!ENTITY % blocktext "pre | hr | blockquote | address | center">
241
+
242
+ <!ENTITY % block
243
+ "p | %heading; | div | %lists; | %blocktext; | isindex | fieldset | table">
244
+
245
+ <!-- %Flow; mixes block and inline and is used for list items etc. -->
246
+ <!ENTITY % Flow "(#PCDATA | %block; | form | %inline; | %misc;)*">
247
+
248
+ <!--================== Content models for exclusions =====================-->
249
+
250
+ <!-- a elements use %Inline; excluding a -->
251
+
252
+ <!ENTITY % a.content
253
+ "(#PCDATA | %special; | %fontstyle; | %phrase; | %inline.forms; | %misc.inline;)*">
254
+
255
+ <!-- pre uses %Inline excluding img, object, applet, big, small,
256
+ sub, sup, font, or basefont -->
257
+
258
+ <!ENTITY % pre.content
259
+ "(#PCDATA | a | %special.basic; | %fontstyle.basic; | %phrase.basic; |
260
+ %inline.forms; | %misc.inline;)*">
261
+
262
+
263
+ <!-- form uses %Flow; excluding form -->
264
+
265
+ <!ENTITY % form.content "(#PCDATA | %block; | %inline; | %misc;)*">
266
+
267
+ <!-- button uses %Flow; but excludes a, form, form controls, iframe -->
268
+
269
+ <!ENTITY % button.content
270
+ "(#PCDATA | p | %heading; | div | %lists; | %blocktext; |
271
+ table | br | span | bdo | object | applet | img | map |
272
+ %fontstyle; | %phrase; | %misc;)*">
273
+
274
+ <!--================ Document Structure ==================================-->
275
+
276
+ <!-- the namespace URI designates the document profile -->
277
+
278
+ <!ELEMENT html (head, frameset)>
279
+ <!ATTLIST html
280
+ %i18n;
281
+ id ID #IMPLIED
282
+ xmlns %URI; #FIXED 'http://www.w3.org/1999/xhtml'
283
+ >
284
+
285
+ <!--================ Document Head =======================================-->
286
+
287
+ <!ENTITY % head.misc "(script|style|meta|link|object|isindex)*">
288
+
289
+ <!-- content model is %head.misc; combined with a single
290
+ title and an optional base element in any order -->
291
+
292
+ <!ELEMENT head (%head.misc;,
293
+ ((title, %head.misc;, (base, %head.misc;)?) |
294
+ (base, %head.misc;, (title, %head.misc;))))>
295
+
296
+ <!ATTLIST head
297
+ %i18n;
298
+ id ID #IMPLIED
299
+ profile %URI; #IMPLIED
300
+ >
301
+
302
+ <!-- The title element is not considered part of the flow of text.
303
+ It should be displayed, for example as the page header or
304
+ window title. Exactly one title is required per document.
305
+ -->
306
+ <!ELEMENT title (#PCDATA)>
307
+ <!ATTLIST title
308
+ %i18n;
309
+ id ID #IMPLIED
310
+ >
311
+
312
+ <!-- document base URI -->
313
+
314
+ <!ELEMENT base EMPTY>
315
+ <!ATTLIST base
316
+ id ID #IMPLIED
317
+ href %URI; #IMPLIED
318
+ target %FrameTarget; #IMPLIED
319
+ >
320
+
321
+ <!-- generic metainformation -->
322
+ <!ELEMENT meta EMPTY>
323
+ <!ATTLIST meta
324
+ %i18n;
325
+ id ID #IMPLIED
326
+ http-equiv CDATA #IMPLIED
327
+ name CDATA #IMPLIED
328
+ content CDATA #REQUIRED
329
+ scheme CDATA #IMPLIED
330
+ >
331
+
332
+ <!--
333
+ Relationship values can be used in principle:
334
+
335
+ a) for document specific toolbars/menus when used
336
+ with the link element in document head e.g.
337
+ start, contents, previous, next, index, end, help
338
+ b) to link to a separate style sheet (rel="stylesheet")
339
+ c) to make a link to a script (rel="script")
340
+ d) by stylesheets to control how collections of
341
+ html nodes are rendered into printed documents
342
+ e) to make a link to a printable version of this document
343
+ e.g. a PostScript or PDF version (rel="alternate" media="print")
344
+ -->
345
+
346
+ <!ELEMENT link EMPTY>
347
+ <!ATTLIST link
348
+ %attrs;
349
+ charset %Charset; #IMPLIED
350
+ href %URI; #IMPLIED
351
+ hreflang %LanguageCode; #IMPLIED
352
+ type %ContentType; #IMPLIED
353
+ rel %LinkTypes; #IMPLIED
354
+ rev %LinkTypes; #IMPLIED
355
+ media %MediaDesc; #IMPLIED
356
+ target %FrameTarget; #IMPLIED
357
+ >
358
+
359
+ <!-- style info, which may include CDATA sections -->
360
+ <!ELEMENT style (#PCDATA)>
361
+ <!ATTLIST style
362
+ %i18n;
363
+ id ID #IMPLIED
364
+ type %ContentType; #REQUIRED
365
+ media %MediaDesc; #IMPLIED
366
+ title %Text; #IMPLIED
367
+ xml:space (preserve) #FIXED 'preserve'
368
+ >
369
+
370
+ <!-- script statements, which may include CDATA sections -->
371
+ <!ELEMENT script (#PCDATA)>
372
+ <!ATTLIST script
373
+ id ID #IMPLIED
374
+ charset %Charset; #IMPLIED
375
+ type %ContentType; #REQUIRED
376
+ language CDATA #IMPLIED
377
+ src %URI; #IMPLIED
378
+ defer (defer) #IMPLIED
379
+ xml:space (preserve) #FIXED 'preserve'
380
+ >
381
+
382
+ <!-- alternate content container for non script-based rendering -->
383
+
384
+ <!ELEMENT noscript %Flow;>
385
+ <!ATTLIST noscript
386
+ %attrs;
387
+ >
388
+
389
+ <!--======================= Frames =======================================-->
390
+
391
+ <!-- only one noframes element permitted per document -->
392
+
393
+ <!ELEMENT frameset (frameset|frame|noframes)*>
394
+ <!ATTLIST frameset
395
+ %coreattrs;
396
+ rows %MultiLengths; #IMPLIED
397
+ cols %MultiLengths; #IMPLIED
398
+ onload %Script; #IMPLIED
399
+ onunload %Script; #IMPLIED
400
+ >
401
+
402
+ <!-- reserved frame names start with "_" otherwise starts with letter -->
403
+
404
+ <!-- tiled window within frameset -->
405
+
406
+ <!ELEMENT frame EMPTY>
407
+ <!ATTLIST frame
408
+ %coreattrs;
409
+ longdesc %URI; #IMPLIED
410
+ name NMTOKEN #IMPLIED
411
+ src %URI; #IMPLIED
412
+ frameborder (1|0) "1"
413
+ marginwidth %Pixels; #IMPLIED
414
+ marginheight %Pixels; #IMPLIED
415
+ noresize (noresize) #IMPLIED
416
+ scrolling (yes|no|auto) "auto"
417
+ >
418
+
419
+ <!-- inline subwindow -->
420
+
421
+ <!ELEMENT iframe %Flow;>
422
+ <!ATTLIST iframe
423
+ %coreattrs;
424
+ longdesc %URI; #IMPLIED
425
+ name NMTOKEN #IMPLIED
426
+ src %URI; #IMPLIED
427
+ frameborder (1|0) "1"
428
+ marginwidth %Pixels; #IMPLIED
429
+ marginheight %Pixels; #IMPLIED
430
+ scrolling (yes|no|auto) "auto"
431
+ align %ImgAlign; #IMPLIED
432
+ height %Length; #IMPLIED
433
+ width %Length; #IMPLIED
434
+ >
435
+
436
+ <!-- alternate content container for non frame-based rendering -->
437
+
438
+ <!ELEMENT noframes (body)>
439
+ <!ATTLIST noframes
440
+ %attrs;
441
+ >
442
+
443
+ <!--=================== Document Body ====================================-->
444
+
445
+ <!ELEMENT body %Flow;>
446
+ <!ATTLIST body
447
+ %attrs;
448
+ onload %Script; #IMPLIED
449
+ onunload %Script; #IMPLIED
450
+ background %URI; #IMPLIED
451
+ bgcolor %Color; #IMPLIED
452
+ text %Color; #IMPLIED
453
+ link %Color; #IMPLIED
454
+ vlink %Color; #IMPLIED
455
+ alink %Color; #IMPLIED
456
+ >
457
+
458
+ <!ELEMENT div %Flow;> <!-- generic language/style container -->
459
+ <!ATTLIST div
460
+ %attrs;
461
+ %TextAlign;
462
+ >
463
+
464
+ <!--=================== Paragraphs =======================================-->
465
+
466
+ <!ELEMENT p %Inline;>
467
+ <!ATTLIST p
468
+ %attrs;
469
+ %TextAlign;
470
+ >
471
+
472
+ <!--=================== Headings =========================================-->
473
+
474
+ <!--
475
+ There are six levels of headings from h1 (the most important)
476
+ to h6 (the least important).
477
+ -->
478
+
479
+ <!ELEMENT h1 %Inline;>
480
+ <!ATTLIST h1
481
+ %attrs;
482
+ %TextAlign;
483
+ >
484
+
485
+ <!ELEMENT h2 %Inline;>
486
+ <!ATTLIST h2
487
+ %attrs;
488
+ %TextAlign;
489
+ >
490
+
491
+ <!ELEMENT h3 %Inline;>
492
+ <!ATTLIST h3
493
+ %attrs;
494
+ %TextAlign;
495
+ >
496
+
497
+ <!ELEMENT h4 %Inline;>
498
+ <!ATTLIST h4
499
+ %attrs;
500
+ %TextAlign;
501
+ >
502
+
503
+ <!ELEMENT h5 %Inline;>
504
+ <!ATTLIST h5
505
+ %attrs;
506
+ %TextAlign;
507
+ >
508
+
509
+ <!ELEMENT h6 %Inline;>
510
+ <!ATTLIST h6
511
+ %attrs;
512
+ %TextAlign;
513
+ >
514
+
515
+ <!--=================== Lists ============================================-->
516
+
517
+ <!-- Unordered list bullet styles -->
518
+
519
+ <!ENTITY % ULStyle "(disc|square|circle)">
520
+
521
+ <!-- Unordered list -->
522
+
523
+ <!ELEMENT ul (li)+>
524
+ <!ATTLIST ul
525
+ %attrs;
526
+ type %ULStyle; #IMPLIED
527
+ compact (compact) #IMPLIED
528
+ >
529
+
530
+ <!-- Ordered list numbering style
531
+
532
+ 1 arabic numbers 1, 2, 3, ...
533
+ a lower alpha a, b, c, ...
534
+ A upper alpha A, B, C, ...
535
+ i lower roman i, ii, iii, ...
536
+ I upper roman I, II, III, ...
537
+
538
+ The style is applied to the sequence number which by default
539
+ is reset to 1 for the first list item in an ordered list.
540
+ -->
541
+ <!ENTITY % OLStyle "CDATA">
542
+
543
+ <!-- Ordered (numbered) list -->
544
+
545
+ <!ELEMENT ol (li)+>
546
+ <!ATTLIST ol
547
+ %attrs;
548
+ type %OLStyle; #IMPLIED
549
+ compact (compact) #IMPLIED
550
+ start %Number; #IMPLIED
551
+ >
552
+
553
+ <!-- single column list (DEPRECATED) -->
554
+ <!ELEMENT menu (li)+>
555
+ <!ATTLIST menu
556
+ %attrs;
557
+ compact (compact) #IMPLIED
558
+ >
559
+
560
+ <!-- multiple column list (DEPRECATED) -->
561
+ <!ELEMENT dir (li)+>
562
+ <!ATTLIST dir
563
+ %attrs;
564
+ compact (compact) #IMPLIED
565
+ >
566
+
567
+ <!-- LIStyle is constrained to: "(%ULStyle;|%OLStyle;)" -->
568
+ <!ENTITY % LIStyle "CDATA">
569
+
570
+ <!-- list item -->
571
+
572
+ <!ELEMENT li %Flow;>
573
+ <!ATTLIST li
574
+ %attrs;
575
+ type %LIStyle; #IMPLIED
576
+ value %Number; #IMPLIED
577
+ >
578
+
579
+ <!-- definition lists - dt for term, dd for its definition -->
580
+
581
+ <!ELEMENT dl (dt|dd)+>
582
+ <!ATTLIST dl
583
+ %attrs;
584
+ compact (compact) #IMPLIED
585
+ >
586
+
587
+ <!ELEMENT dt %Inline;>
588
+ <!ATTLIST dt
589
+ %attrs;
590
+ >
591
+
592
+ <!ELEMENT dd %Flow;>
593
+ <!ATTLIST dd
594
+ %attrs;
595
+ >
596
+
597
+ <!--=================== Address ==========================================-->
598
+
599
+ <!-- information on author -->
600
+
601
+ <!ELEMENT address (#PCDATA | %inline; | %misc.inline; | p)*>
602
+ <!ATTLIST address
603
+ %attrs;
604
+ >
605
+
606
+ <!--=================== Horizontal Rule ==================================-->
607
+
608
+ <!ELEMENT hr EMPTY>
609
+ <!ATTLIST hr
610
+ %attrs;
611
+ align (left|center|right) #IMPLIED
612
+ noshade (noshade) #IMPLIED
613
+ size %Pixels; #IMPLIED
614
+ width %Length; #IMPLIED
615
+ >
616
+
617
+ <!--=================== Preformatted Text ================================-->
618
+
619
+ <!-- content is %Inline; excluding
620
+ "img|object|applet|big|small|sub|sup|font|basefont" -->
621
+
622
+ <!ELEMENT pre %pre.content;>
623
+ <!ATTLIST pre
624
+ %attrs;
625
+ width %Number; #IMPLIED
626
+ xml:space (preserve) #FIXED 'preserve'
627
+ >
628
+
629
+ <!--=================== Block-like Quotes ================================-->
630
+
631
+ <!ELEMENT blockquote %Flow;>
632
+ <!ATTLIST blockquote
633
+ %attrs;
634
+ cite %URI; #IMPLIED
635
+ >
636
+
637
+ <!--=================== Text alignment ===================================-->
638
+
639
+ <!-- center content -->
640
+ <!ELEMENT center %Flow;>
641
+ <!ATTLIST center
642
+ %attrs;
643
+ >
644
+
645
+ <!--=================== Inserted/Deleted Text ============================-->
646
+
647
+
648
+ <!--
649
+ ins/del are allowed in block and inline content, but its
650
+ inappropriate to include block content within an ins element
651
+ occurring in inline content.
652
+ -->
653
+ <!ELEMENT ins %Flow;>
654
+ <!ATTLIST ins
655
+ %attrs;
656
+ cite %URI; #IMPLIED
657
+ datetime %Datetime; #IMPLIED
658
+ >
659
+
660
+ <!ELEMENT del %Flow;>
661
+ <!ATTLIST del
662
+ %attrs;
663
+ cite %URI; #IMPLIED
664
+ datetime %Datetime; #IMPLIED
665
+ >
666
+
667
+ <!--================== The Anchor Element ================================-->
668
+
669
+ <!-- content is %Inline; except that anchors shouldn't be nested -->
670
+
671
+ <!ELEMENT a %a.content;>
672
+ <!ATTLIST a
673
+ %attrs;
674
+ %focus;
675
+ charset %Charset; #IMPLIED
676
+ type %ContentType; #IMPLIED
677
+ name NMTOKEN #IMPLIED
678
+ href %URI; #IMPLIED
679
+ hreflang %LanguageCode; #IMPLIED
680
+ rel %LinkTypes; #IMPLIED
681
+ rev %LinkTypes; #IMPLIED
682
+ shape %Shape; "rect"
683
+ coords %Coords; #IMPLIED
684
+ target %FrameTarget; #IMPLIED
685
+ >
686
+
687
+ <!--===================== Inline Elements ================================-->
688
+
689
+ <!ELEMENT span %Inline;> <!-- generic language/style container -->
690
+ <!ATTLIST span
691
+ %attrs;
692
+ >
693
+
694
+ <!ELEMENT bdo %Inline;> <!-- I18N BiDi over-ride -->
695
+ <!ATTLIST bdo
696
+ %coreattrs;
697
+ %events;
698
+ lang %LanguageCode; #IMPLIED
699
+ xml:lang %LanguageCode; #IMPLIED
700
+ dir (ltr|rtl) #REQUIRED
701
+ >
702
+
703
+ <!ELEMENT br EMPTY> <!-- forced line break -->
704
+ <!ATTLIST br
705
+ %coreattrs;
706
+ clear (left|all|right|none) "none"
707
+ >
708
+
709
+ <!ELEMENT em %Inline;> <!-- emphasis -->
710
+ <!ATTLIST em %attrs;>
711
+
712
+ <!ELEMENT strong %Inline;> <!-- strong emphasis -->
713
+ <!ATTLIST strong %attrs;>
714
+
715
+ <!ELEMENT dfn %Inline;> <!-- definitional -->
716
+ <!ATTLIST dfn %attrs;>
717
+
718
+ <!ELEMENT code %Inline;> <!-- program code -->
719
+ <!ATTLIST code %attrs;>
720
+
721
+ <!ELEMENT samp %Inline;> <!-- sample -->
722
+ <!ATTLIST samp %attrs;>
723
+
724
+ <!ELEMENT kbd %Inline;> <!-- something user would type -->
725
+ <!ATTLIST kbd %attrs;>
726
+
727
+ <!ELEMENT var %Inline;> <!-- variable -->
728
+ <!ATTLIST var %attrs;>
729
+
730
+ <!ELEMENT cite %Inline;> <!-- citation -->
731
+ <!ATTLIST cite %attrs;>
732
+
733
+ <!ELEMENT abbr %Inline;> <!-- abbreviation -->
734
+ <!ATTLIST abbr %attrs;>
735
+
736
+ <!ELEMENT acronym %Inline;> <!-- acronym -->
737
+ <!ATTLIST acronym %attrs;>
738
+
739
+ <!ELEMENT q %Inline;> <!-- inlined quote -->
740
+ <!ATTLIST q
741
+ %attrs;
742
+ cite %URI; #IMPLIED
743
+ >
744
+
745
+ <!ELEMENT sub %Inline;> <!-- subscript -->
746
+ <!ATTLIST sub %attrs;>
747
+
748
+ <!ELEMENT sup %Inline;> <!-- superscript -->
749
+ <!ATTLIST sup %attrs;>
750
+
751
+ <!ELEMENT tt %Inline;> <!-- fixed pitch font -->
752
+ <!ATTLIST tt %attrs;>
753
+
754
+ <!ELEMENT i %Inline;> <!-- italic font -->
755
+ <!ATTLIST i %attrs;>
756
+
757
+ <!ELEMENT b %Inline;> <!-- bold font -->
758
+ <!ATTLIST b %attrs;>
759
+
760
+ <!ELEMENT big %Inline;> <!-- bigger font -->
761
+ <!ATTLIST big %attrs;>
762
+
763
+ <!ELEMENT small %Inline;> <!-- smaller font -->
764
+ <!ATTLIST small %attrs;>
765
+
766
+ <!ELEMENT u %Inline;> <!-- underline -->
767
+ <!ATTLIST u %attrs;>
768
+
769
+ <!ELEMENT s %Inline;> <!-- strike-through -->
770
+ <!ATTLIST s %attrs;>
771
+
772
+ <!ELEMENT strike %Inline;> <!-- strike-through -->
773
+ <!ATTLIST strike %attrs;>
774
+
775
+ <!ELEMENT basefont EMPTY> <!-- base font size -->
776
+ <!ATTLIST basefont
777
+ id ID #IMPLIED
778
+ size CDATA #REQUIRED
779
+ color %Color; #IMPLIED
780
+ face CDATA #IMPLIED
781
+ >
782
+
783
+ <!ELEMENT font %Inline;> <!-- local change to font -->
784
+ <!ATTLIST font
785
+ %coreattrs;
786
+ %i18n;
787
+ size CDATA #IMPLIED
788
+ color %Color; #IMPLIED
789
+ face CDATA #IMPLIED
790
+ >
791
+
792
+ <!--==================== Object ======================================-->
793
+ <!--
794
+ object is used to embed objects as part of HTML pages.
795
+ param elements should precede other content. Parameters
796
+ can also be expressed as attribute/value pairs on the
797
+ object element itself when brevity is desired.
798
+ -->
799
+
800
+ <!ELEMENT object (#PCDATA | param | %block; | form |%inline; | %misc;)*>
801
+ <!ATTLIST object
802
+ %attrs;
803
+ declare (declare) #IMPLIED
804
+ classid %URI; #IMPLIED
805
+ codebase %URI; #IMPLIED
806
+ data %URI; #IMPLIED
807
+ type %ContentType; #IMPLIED
808
+ codetype %ContentType; #IMPLIED
809
+ archive %UriList; #IMPLIED
810
+ standby %Text; #IMPLIED
811
+ height %Length; #IMPLIED
812
+ width %Length; #IMPLIED
813
+ usemap %URI; #IMPLIED
814
+ name NMTOKEN #IMPLIED
815
+ tabindex %Number; #IMPLIED
816
+ align %ImgAlign; #IMPLIED
817
+ border %Pixels; #IMPLIED
818
+ hspace %Pixels; #IMPLIED
819
+ vspace %Pixels; #IMPLIED
820
+ >
821
+
822
+ <!--
823
+ param is used to supply a named property value.
824
+ In XML it would seem natural to follow RDF and support an
825
+ abbreviated syntax where the param elements are replaced
826
+ by attribute value pairs on the object start tag.
827
+ -->
828
+ <!ELEMENT param EMPTY>
829
+ <!ATTLIST param
830
+ id ID #IMPLIED
831
+ name CDATA #REQUIRED
832
+ value CDATA #IMPLIED
833
+ valuetype (data|ref|object) "data"
834
+ type %ContentType; #IMPLIED
835
+ >
836
+
837
+ <!--=================== Java applet ==================================-->
838
+ <!--
839
+ One of code or object attributes must be present.
840
+ Place param elements before other content.
841
+ -->
842
+ <!ELEMENT applet (#PCDATA | param | %block; | form | %inline; | %misc;)*>
843
+ <!ATTLIST applet
844
+ %coreattrs;
845
+ codebase %URI; #IMPLIED
846
+ archive CDATA #IMPLIED
847
+ code CDATA #IMPLIED
848
+ object CDATA #IMPLIED
849
+ alt %Text; #IMPLIED
850
+ name NMTOKEN #IMPLIED
851
+ width %Length; #REQUIRED
852
+ height %Length; #REQUIRED
853
+ align %ImgAlign; #IMPLIED
854
+ hspace %Pixels; #IMPLIED
855
+ vspace %Pixels; #IMPLIED
856
+ >
857
+
858
+ <!--=================== Images ===========================================-->
859
+
860
+ <!--
861
+ To avoid accessibility problems for people who aren't
862
+ able to see the image, you should provide a text
863
+ description using the alt and longdesc attributes.
864
+ In addition, avoid the use of server-side image maps.
865
+ -->
866
+
867
+ <!ELEMENT img EMPTY>
868
+ <!ATTLIST img
869
+ %attrs;
870
+ src %URI; #REQUIRED
871
+ alt %Text; #REQUIRED
872
+ name NMTOKEN #IMPLIED
873
+ longdesc %URI; #IMPLIED
874
+ height %Length; #IMPLIED
875
+ width %Length; #IMPLIED
876
+ usemap %URI; #IMPLIED
877
+ ismap (ismap) #IMPLIED
878
+ align %ImgAlign; #IMPLIED
879
+ border %Pixels; #IMPLIED
880
+ hspace %Pixels; #IMPLIED
881
+ vspace %Pixels; #IMPLIED
882
+ >
883
+
884
+ <!-- usemap points to a map element which may be in this document
885
+ or an external document, although the latter is not widely supported -->
886
+
887
+ <!--================== Client-side image maps ============================-->
888
+
889
+ <!-- These can be placed in the same document or grouped in a
890
+ separate document although this isn't yet widely supported -->
891
+
892
+ <!ELEMENT map ((%block; | form | %misc;)+ | area+)>
893
+ <!ATTLIST map
894
+ %i18n;
895
+ %events;
896
+ id ID #REQUIRED
897
+ class CDATA #IMPLIED
898
+ style %StyleSheet; #IMPLIED
899
+ title %Text; #IMPLIED
900
+ name NMTOKEN #IMPLIED
901
+ >
902
+
903
+ <!ELEMENT area EMPTY>
904
+ <!ATTLIST area
905
+ %attrs;
906
+ %focus;
907
+ shape %Shape; "rect"
908
+ coords %Coords; #IMPLIED
909
+ href %URI; #IMPLIED
910
+ nohref (nohref) #IMPLIED
911
+ alt %Text; #REQUIRED
912
+ target %FrameTarget; #IMPLIED
913
+ >
914
+
915
+ <!--================ Forms ===============================================-->
916
+
917
+ <!ELEMENT form %form.content;> <!-- forms shouldn't be nested -->
918
+
919
+ <!ATTLIST form
920
+ %attrs;
921
+ action %URI; #REQUIRED
922
+ method (get|post) "get"
923
+ name NMTOKEN #IMPLIED
924
+ enctype %ContentType; "application/x-www-form-urlencoded"
925
+ onsubmit %Script; #IMPLIED
926
+ onreset %Script; #IMPLIED
927
+ accept %ContentTypes; #IMPLIED
928
+ accept-charset %Charsets; #IMPLIED
929
+ target %FrameTarget; #IMPLIED
930
+ >
931
+
932
+ <!--
933
+ Each label must not contain more than ONE field
934
+ Label elements shouldn't be nested.
935
+ -->
936
+ <!ELEMENT label %Inline;>
937
+ <!ATTLIST label
938
+ %attrs;
939
+ for IDREF #IMPLIED
940
+ accesskey %Character; #IMPLIED
941
+ onfocus %Script; #IMPLIED
942
+ onblur %Script; #IMPLIED
943
+ >
944
+
945
+ <!ENTITY % InputType
946
+ "(text | password | checkbox |
947
+ radio | submit | reset |
948
+ file | hidden | image | button)"
949
+ >
950
+
951
+ <!-- the name attribute is required for all but submit & reset -->
952
+
953
+ <!ELEMENT input EMPTY> <!-- form control -->
954
+ <!ATTLIST input
955
+ %attrs;
956
+ %focus;
957
+ type %InputType; "text"
958
+ name CDATA #IMPLIED
959
+ value CDATA #IMPLIED
960
+ checked (checked) #IMPLIED
961
+ disabled (disabled) #IMPLIED
962
+ readonly (readonly) #IMPLIED
963
+ size CDATA #IMPLIED
964
+ maxlength %Number; #IMPLIED
965
+ src %URI; #IMPLIED
966
+ alt CDATA #IMPLIED
967
+ usemap %URI; #IMPLIED
968
+ onselect %Script; #IMPLIED
969
+ onchange %Script; #IMPLIED
970
+ accept %ContentTypes; #IMPLIED
971
+ align %ImgAlign; #IMPLIED
972
+ >
973
+
974
+ <!ELEMENT select (optgroup|option)+> <!-- option selector -->
975
+ <!ATTLIST select
976
+ %attrs;
977
+ name CDATA #IMPLIED
978
+ size %Number; #IMPLIED
979
+ multiple (multiple) #IMPLIED
980
+ disabled (disabled) #IMPLIED
981
+ tabindex %Number; #IMPLIED
982
+ onfocus %Script; #IMPLIED
983
+ onblur %Script; #IMPLIED
984
+ onchange %Script; #IMPLIED
985
+ >
986
+
987
+ <!ELEMENT optgroup (option)+> <!-- option group -->
988
+ <!ATTLIST optgroup
989
+ %attrs;
990
+ disabled (disabled) #IMPLIED
991
+ label %Text; #REQUIRED
992
+ >
993
+
994
+ <!ELEMENT option (#PCDATA)> <!-- selectable choice -->
995
+ <!ATTLIST option
996
+ %attrs;
997
+ selected (selected) #IMPLIED
998
+ disabled (disabled) #IMPLIED
999
+ label %Text; #IMPLIED
1000
+ value CDATA #IMPLIED
1001
+ >
1002
+
1003
+ <!ELEMENT textarea (#PCDATA)> <!-- multi-line text field -->
1004
+ <!ATTLIST textarea
1005
+ %attrs;
1006
+ %focus;
1007
+ name CDATA #IMPLIED
1008
+ rows %Number; #REQUIRED
1009
+ cols %Number; #REQUIRED
1010
+ disabled (disabled) #IMPLIED
1011
+ readonly (readonly) #IMPLIED
1012
+ onselect %Script; #IMPLIED
1013
+ onchange %Script; #IMPLIED
1014
+ >
1015
+
1016
+ <!--
1017
+ The fieldset element is used to group form fields.
1018
+ Only one legend element should occur in the content
1019
+ and if present should only be preceded by whitespace.
1020
+ -->
1021
+ <!ELEMENT fieldset (#PCDATA | legend | %block; | form | %inline; | %misc;)*>
1022
+ <!ATTLIST fieldset
1023
+ %attrs;
1024
+ >
1025
+
1026
+ <!ENTITY % LAlign "(top|bottom|left|right)">
1027
+
1028
+ <!ELEMENT legend %Inline;> <!-- fieldset label -->
1029
+ <!ATTLIST legend
1030
+ %attrs;
1031
+ accesskey %Character; #IMPLIED
1032
+ align %LAlign; #IMPLIED
1033
+ >
1034
+
1035
+ <!--
1036
+ Content is %Flow; excluding a, form, form controls, iframe
1037
+ -->
1038
+ <!ELEMENT button %button.content;> <!-- push button -->
1039
+ <!ATTLIST button
1040
+ %attrs;
1041
+ %focus;
1042
+ name CDATA #IMPLIED
1043
+ value CDATA #IMPLIED
1044
+ type (button|submit|reset) "submit"
1045
+ disabled (disabled) #IMPLIED
1046
+ >
1047
+
1048
+ <!-- single-line text input control (DEPRECATED) -->
1049
+ <!ELEMENT isindex EMPTY>
1050
+ <!ATTLIST isindex
1051
+ %coreattrs;
1052
+ %i18n;
1053
+ prompt %Text; #IMPLIED
1054
+ >
1055
+
1056
+ <!--======================= Tables =======================================-->
1057
+
1058
+ <!-- Derived from IETF HTML table standard, see [RFC1942] -->
1059
+
1060
+ <!--
1061
+ The border attribute sets the thickness of the frame around the
1062
+ table. The default units are screen pixels.
1063
+
1064
+ The frame attribute specifies which parts of the frame around
1065
+ the table should be rendered. The values are not the same as
1066
+ CALS to avoid a name clash with the valign attribute.
1067
+ -->
1068
+ <!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
1069
+
1070
+ <!--
1071
+ The rules attribute defines which rules to draw between cells:
1072
+
1073
+ If rules is absent then assume:
1074
+ "none" if border is absent or border="0" otherwise "all"
1075
+ -->
1076
+
1077
+ <!ENTITY % TRules "(none | groups | rows | cols | all)">
1078
+
1079
+ <!-- horizontal placement of table relative to document -->
1080
+ <!ENTITY % TAlign "(left|center|right)">
1081
+
1082
+ <!-- horizontal alignment attributes for cell contents
1083
+
1084
+ char alignment char, e.g. char=":"
1085
+ charoff offset for alignment char
1086
+ -->
1087
+ <!ENTITY % cellhalign
1088
+ "align (left|center|right|justify|char) #IMPLIED
1089
+ char %Character; #IMPLIED
1090
+ charoff %Length; #IMPLIED"
1091
+ >
1092
+
1093
+ <!-- vertical alignment attributes for cell contents -->
1094
+ <!ENTITY % cellvalign
1095
+ "valign (top|middle|bottom|baseline) #IMPLIED"
1096
+ >
1097
+
1098
+ <!ELEMENT table
1099
+ (caption?, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+))>
1100
+ <!ELEMENT caption %Inline;>
1101
+ <!ELEMENT thead (tr)+>
1102
+ <!ELEMENT tfoot (tr)+>
1103
+ <!ELEMENT tbody (tr)+>
1104
+ <!ELEMENT colgroup (col)*>
1105
+ <!ELEMENT col EMPTY>
1106
+ <!ELEMENT tr (th|td)+>
1107
+ <!ELEMENT th %Flow;>
1108
+ <!ELEMENT td %Flow;>
1109
+
1110
+ <!ATTLIST table
1111
+ %attrs;
1112
+ summary %Text; #IMPLIED
1113
+ width %Length; #IMPLIED
1114
+ border %Pixels; #IMPLIED
1115
+ frame %TFrame; #IMPLIED
1116
+ rules %TRules; #IMPLIED
1117
+ cellspacing %Length; #IMPLIED
1118
+ cellpadding %Length; #IMPLIED
1119
+ align %TAlign; #IMPLIED
1120
+ bgcolor %Color; #IMPLIED
1121
+ >
1122
+
1123
+ <!ENTITY % CAlign "(top|bottom|left|right)">
1124
+
1125
+ <!ATTLIST caption
1126
+ %attrs;
1127
+ align %CAlign; #IMPLIED
1128
+ >
1129
+
1130
+ <!--
1131
+ colgroup groups a set of col elements. It allows you to group
1132
+ several semantically related columns together.
1133
+ -->
1134
+ <!ATTLIST colgroup
1135
+ %attrs;
1136
+ span %Number; "1"
1137
+ width %MultiLength; #IMPLIED
1138
+ %cellhalign;
1139
+ %cellvalign;
1140
+ >
1141
+
1142
+ <!--
1143
+ col elements define the alignment properties for cells in
1144
+ one or more columns.
1145
+
1146
+ The width attribute specifies the width of the columns, e.g.
1147
+
1148
+ width=64 width in screen pixels
1149
+ width=0.5* relative width of 0.5
1150
+
1151
+ The span attribute causes the attributes of one
1152
+ col element to apply to more than one column.
1153
+ -->
1154
+ <!ATTLIST col
1155
+ %attrs;
1156
+ span %Number; "1"
1157
+ width %MultiLength; #IMPLIED
1158
+ %cellhalign;
1159
+ %cellvalign;
1160
+ >
1161
+
1162
+ <!--
1163
+ Use thead to duplicate headers when breaking table
1164
+ across page boundaries, or for static headers when
1165
+ tbody sections are rendered in scrolling panel.
1166
+
1167
+ Use tfoot to duplicate footers when breaking table
1168
+ across page boundaries, or for static footers when
1169
+ tbody sections are rendered in scrolling panel.
1170
+
1171
+ Use multiple tbody sections when rules are needed
1172
+ between groups of table rows.
1173
+ -->
1174
+ <!ATTLIST thead
1175
+ %attrs;
1176
+ %cellhalign;
1177
+ %cellvalign;
1178
+ >
1179
+
1180
+ <!ATTLIST tfoot
1181
+ %attrs;
1182
+ %cellhalign;
1183
+ %cellvalign;
1184
+ >
1185
+
1186
+ <!ATTLIST tbody
1187
+ %attrs;
1188
+ %cellhalign;
1189
+ %cellvalign;
1190
+ >
1191
+
1192
+ <!ATTLIST tr
1193
+ %attrs;
1194
+ %cellhalign;
1195
+ %cellvalign;
1196
+ bgcolor %Color; #IMPLIED
1197
+ >
1198
+
1199
+ <!-- Scope is simpler than headers attribute for common tables -->
1200
+ <!ENTITY % Scope "(row|col|rowgroup|colgroup)">
1201
+
1202
+ <!-- th is for headers, td for data and for cells acting as both -->
1203
+
1204
+ <!ATTLIST th
1205
+ %attrs;
1206
+ abbr %Text; #IMPLIED
1207
+ axis CDATA #IMPLIED
1208
+ headers IDREFS #IMPLIED
1209
+ scope %Scope; #IMPLIED
1210
+ rowspan %Number; "1"
1211
+ colspan %Number; "1"
1212
+ %cellhalign;
1213
+ %cellvalign;
1214
+ nowrap (nowrap) #IMPLIED
1215
+ bgcolor %Color; #IMPLIED
1216
+ width %Pixels; #IMPLIED
1217
+ height %Pixels; #IMPLIED
1218
+ >
1219
+
1220
+ <!ATTLIST td
1221
+ %attrs;
1222
+ abbr %Text; #IMPLIED
1223
+ axis CDATA #IMPLIED
1224
+ headers IDREFS #IMPLIED
1225
+ scope %Scope; #IMPLIED
1226
+ rowspan %Number; "1"
1227
+ colspan %Number; "1"
1228
+ %cellhalign;
1229
+ %cellvalign;
1230
+ nowrap (nowrap) #IMPLIED
1231
+ bgcolor %Color; #IMPLIED
1232
+ width %Pixels; #IMPLIED
1233
+ height %Pixels; #IMPLIED
1234
+ >
1235
+