2
|
1 <!--
|
|
2 This is an EXPERIMENTAL version of HTML (code named Cougar) that
|
|
3 extends HTML 3.2 to add support for work by the HTML ERB, including
|
|
4 style sheets, scripting, the object tag, internationalization and
|
|
5 some extensions to forms. The frame tags will probably be added
|
|
6 once we have an agreed definition for them.
|
|
7
|
|
8 Draft: Wednesday 12-July-96
|
|
9
|
|
10 Author: Dave Raggett <dsr@w3.org>
|
|
11
|
|
12 This is SUBJECT TO CHANGE, pending final approval by member
|
|
13 organizations of the World Wide Web Consortium.
|
|
14 -->
|
|
15
|
|
16 <!ENTITY % HTML.Version
|
|
17 "-//W3C//DTD HTML Experimental 19960712//EN"
|
|
18
|
|
19 -- Typical usage:
|
|
20
|
|
21 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML Experimental 19960712//EN">
|
|
22 <html>
|
|
23 ...
|
|
24 </html>
|
|
25 --
|
|
26 >
|
|
27
|
|
28 <!--================== Deprecated Features Switch =========================-->
|
|
29
|
|
30 <!ENTITY % HTML.Deprecated "INCLUDE">
|
|
31
|
|
32 <!--================== Imported Names =====================================-->
|
|
33
|
|
34 <!ENTITY % Content-Type "CDATA"
|
|
35 -- meaning a MIME content type, as per RFC1521
|
|
36 -->
|
|
37
|
|
38 <!ENTITY % HTTP-Method "GET | POST"
|
|
39 -- as per HTTP specification
|
|
40 -->
|
|
41
|
|
42 <!ENTITY % URL "CDATA"
|
|
43 -- The term URL means a CDATA attribute
|
|
44 whose value is a Uniform Resource Locator,
|
|
45 See RFC1808 (June 95) and RFC1738 (Dec 94).
|
|
46 -->
|
|
47
|
|
48 <!ENTITY % script "CDATA" -- scriptlet -->
|
|
49
|
|
50 <!-- Parameter Entities -->
|
|
51
|
|
52 <!ENTITY % head.misc "SCRIPT|STYLE|META|LINK" -- repeatable head elements -->
|
|
53
|
|
54 <!ENTITY % heading "H1|H2|H3|H4|H5|H6">
|
|
55
|
|
56 <!ENTITY % list "UL | OL | DIR | MENU">
|
|
57
|
|
58 <![ %HTML.Deprecated [
|
|
59 <!ENTITY % preformatted "PRE | XMP | LISTING">
|
|
60 ]]>
|
|
61
|
|
62 <!ENTITY % preformatted "PRE">
|
|
63
|
|
64 <!--================ Character mnemonic entities ==========================-->
|
|
65
|
|
66 <!ENTITY % ISOlat1 PUBLIC
|
|
67 "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
|
|
68 %ISOlat1;
|
|
69
|
|
70 <!--================ Entities for special symbols =========================-->
|
|
71
|
|
72 <!ENTITY copy CDATA "©" -- copyright sign -->
|
|
73 <!ENTITY reg CDATA "®" -- registered sign -->
|
|
74 <!ENTITY amp CDATA "&" -- ampersand -->
|
|
75 <!ENTITY gt CDATA ">" -- greater than -->
|
|
76 <!ENTITY lt CDATA "<" -- less than -->
|
|
77 <!ENTITY quot CDATA """ -- double quote -->
|
|
78 <!ENTITY nbsp CDATA " " -- non breaking space -->
|
|
79 <!ENTITY trade CDATA "™" -- trade mark symbol -->
|
|
80 <!ENTITY shy CDATA "­" -- soft hyphen -->
|
|
81 <!ENTITY thinsp CDATA " " -- thin space (1/6 em) -->
|
|
82 <!ENTITY emsp CDATA " " -- em space -->
|
|
83 <!ENTITY ensp CDATA " " -- en space (1/2 em) -->
|
|
84 <!ENTITY mdash CDATA "—" -- em dash -->
|
|
85 <!ENTITY ndash CDATA "–" -- en dash -->
|
|
86
|
|
87 <!-- Language-dependent BIDI and contextual analysis -->
|
|
88 <!ENTITY zwnj CDATA "‌" -- zero width non-joiner -->
|
|
89 <!ENTITY zwj CDATA "‍" -- zero width joiner -->
|
|
90 <!ENTITY lrm CDATA "‎" -- left-to-right mark -->
|
|
91 <!ENTITY rlm CDATA "‏" -- right-to-left mark -->
|
|
92
|
|
93 <!--=================== Generic Attributes ================================-->
|
|
94
|
|
95 <!ENTITY % style
|
|
96 "id ID #IMPLIED -- document wide unique id --
|
|
97 class CDATA #IMPLIED -- comma list of class values --
|
|
98 style CDATA #IMPLIED -- associated style info --"
|
|
99 >
|
|
100
|
|
101 <!ENTITY % i18n
|
|
102 "lang NAME #IMPLIED -- RFC 1766 language value --
|
|
103 dir (ltr|rtl) #IMPLIED -- default directionality --"
|
|
104 >
|
|
105
|
|
106 <!ENTITY % attrs "%style %i18n">
|
|
107
|
|
108 <!ENTITY % just
|
|
109 "align (left|center|right|justify) #IMPLIED"
|
|
110 -- default is left for ltr paragraphs, right for rtl --
|
|
111 >
|
|
112
|
|
113 <!--=================== Text Markup =======================================-->
|
|
114
|
|
115 <!ENTITY % font "TT | I | B | U | S | BIG | SMALL | SUB | SUP">
|
|
116
|
|
117 <!ENTITY % phrase "EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE | Q">
|
|
118
|
|
119 <!ENTITY % special
|
|
120 "A|IMG|APPLET|OBJECT|FONT|BASEFONT|BR|SCRIPT|STYLE|MAP|SPAN|BDO">
|
|
121
|
|
122 <!ENTITY % form "INPUT | SELECT | TEXTAREA | LABEL">
|
|
123
|
|
124 <!ENTITY % text "#PCDATA | %font | %phrase | %special | %form">
|
|
125
|
|
126 <!ELEMENT (%font|%phrase) - - (%text)*>
|
|
127 <!ATTLIST (%font|%phrase) %attrs>
|
|
128
|
|
129 <!-- There are also 16 widely known color names:
|
|
130
|
|
131 Black = #000000 Green = #008000
|
|
132 Silver = #C0C0C0 Lime = #00FF00
|
|
133 Gray = #808080 Olive = #808000
|
|
134 White = #FFFFFF Yellow = #FFFF00
|
|
135 Maroon = #800000 Navy = #000080
|
|
136 Red = #FF0000 Blue = #0000FF
|
|
137 Purple = #800080 Teal = #008080
|
|
138 Fuchsia= #FF00FF Aqua = #00FFFF
|
|
139
|
|
140 These colors were originally picked as being the standard
|
|
141 16 colors supported with the Windows VGA palette. The above
|
|
142 gives the sRGB values in hex (#RRGGBB).
|
|
143 -->
|
|
144
|
|
145 <!ELEMENT SPAN - - (%text)* -- generic language/style container -->
|
|
146 <!ATTLIST SPAN %attrs>
|
|
147
|
|
148 <!ELEMENT BDO - - (%text)* -- I18N BiDi over-ride -->
|
|
149 <!ATTLIST BDO
|
|
150 lang NAME #IMPLIED -- RFC 1766 language value --
|
|
151 dir (ltr|rtl) #REQUIRED -- directionality --
|
|
152 >
|
|
153
|
|
154 <!ELEMENT BASEFONT - O EMPTY>
|
|
155 <!ATTLIST BASEFONT
|
|
156 size CDATA #REQUIRED -- base font size for FONT elements --
|
|
157 >
|
|
158
|
|
159 <!ELEMENT FONT - - (%text)* -- local change to font -->
|
|
160 <!ATTLIST FONT
|
|
161 size CDATA #IMPLIED -- [+]nn e.g. size="+1", size=4 --
|
|
162 color CDATA #IMPLIED -- #RRGGBB in hex, e.g. red: color="#FF0000" --
|
|
163 face CDATA #IMPLIED -- comma separated list of font names --
|
|
164 >
|
|
165
|
|
166 <!ELEMENT BR - O EMPTY -- forced line break -->
|
|
167 <!ATTLIST BR
|
|
168 %attrs; -- id, class, style, lang, dir --
|
|
169 clear (left|all|right|none) none -- control of text flow --
|
|
170 >
|
|
171
|
|
172 <!--================== HTML content models ================================-->
|
|
173 <!--
|
|
174 HTML has three basic content models:
|
|
175
|
|
176 %text character level elements and text strings
|
|
177 %flow block-like elements e.g. paragraphs and lists
|
|
178 %bodytext as (b) plus headers and ADDRESS
|
|
179 -->
|
|
180
|
|
181 <!ENTITY % block
|
|
182 "P | %list | %preformatted | DL | DIV | CENTER |
|
|
183 BLOCKQUOTE | FORM | ISINDEX | HR | TABLE | FIELDSET">
|
|
184
|
|
185 <!-- %flow is used for DD and LI -->
|
|
186
|
|
187 <!ENTITY % flow "(%text | %block)*">
|
|
188
|
|
189 <!--=================== Document Body =====================================-->
|
|
190
|
|
191 <!ENTITY % body.content "(%heading | %text | %block | ADDRESS)*">
|
|
192
|
|
193 <!ENTITY % color "CDATA" -- a color specification: #HHHHHH @@ details? -->
|
|
194
|
|
195 <!ENTITY % body-color-attrs "
|
|
196 bgcolor %color #IMPLIED
|
|
197 text %color #IMPLIED
|
|
198 link %color #IMPLIED
|
|
199 vlink %color #IMPLIED
|
|
200 alink %color #IMPLIED
|
|
201 ">
|
|
202
|
|
203 <!ELEMENT BODY O O %body.content>
|
|
204 <!ATTLIST BODY
|
|
205 %attrs; -- id, class, style, lang, dir --
|
|
206 background %URL #IMPLIED -- texture tile for document background --
|
|
207 %body-color-attrs; -- bgcolor, text, link, vlink, alink --
|
|
208 onLoad %script #IMPLIED -- intrinsic event --
|
|
209 onUnload %script #IMPLIED -- intrinsic event --
|
|
210 >
|
|
211
|
|
212 <!ENTITY % address.content "((%text;) | P)*">
|
|
213
|
|
214 <!ELEMENT ADDRESS - - %address.content>
|
|
215
|
|
216 <!ELEMENT DIV - - %body.content>
|
|
217 <!ATTLIST DIV
|
|
218 %attrs; -- id, class, style, lang, dir --
|
|
219 %just; -- alignment of following text --
|
|
220 >
|
|
221
|
|
222 <!-- CENTER is a shorthand for DIV with ALIGN=CENTER -->
|
|
223 <!ELEMENT center - - %body.content>
|
|
224
|
|
225 <!--================== The Anchor Element =================================-->
|
|
226 <!-- see WD-object draft for OBJECT client-side imagemap extensions -->
|
|
227
|
|
228 <!ENTITY % SHAPE "(rect|circle|poly|default)">
|
|
229 <!ENTITY % COORDS "CDATA" -- comma separated list of numbers -->
|
|
230
|
|
231 <!ELEMENT A - - (%text)* -(A)>
|
|
232 <!ATTLIST A
|
|
233 %attrs; -- id, class, style, lang, dir --
|
|
234 name CDATA #IMPLIED -- named link end --
|
|
235 href %URL #IMPLIED -- URL for linked resource --
|
|
236 rel CDATA #IMPLIED -- forward link types --
|
|
237 rev CDATA #IMPLIED -- reverse link types --
|
|
238 title CDATA #IMPLIED -- advisory title string --
|
|
239 accesskey CDATA #IMPLIED -- accessibility key character --
|
|
240 shape %SHAPE rect -- for use with OBJECT SHAPES --
|
|
241 coords %COORDS #IMPLIED -- for use with OBJECT SHAPES --
|
|
242 tabindex NUMBER #IMPLIED -- position in tabbing order --
|
|
243 notab (notab) #IMPLIED -- exclude from tabbing order --
|
|
244 onClick %script #IMPLIED -- intrinsic event --
|
|
245 onMouseOver %script #IMPLIED -- intrinsic event --
|
|
246 onMouseOut %script #IMPLIED -- intrinsic event --
|
|
247 >
|
|
248
|
|
249 <!--================== Client-side image maps ============================-->
|
|
250
|
|
251 <!-- These can be placed in the same document or grouped in a
|
|
252 separate document although this isn't yet widely supported -->
|
|
253
|
|
254 <!ELEMENT MAP - - (AREA)*>
|
|
255 <!ATTLIST MAP
|
|
256 name CDATA #IMPLIED
|
|
257 >
|
|
258
|
|
259 <!ELEMENT AREA - O EMPTY>
|
|
260 <!ATTLIST AREA
|
|
261 shape %SHAPE rect
|
|
262 coords %COORDS #IMPLIED -- always needed except for shape=default --
|
|
263 href %URL #IMPLIED -- this region acts as hypertext link --
|
|
264 nohref (nohref) #IMPLIED -- this region has no action --
|
|
265 title CDATA #IMPLIED -- advisory title string for balloon help --
|
|
266 alt CDATA #REQUIRED -- description for text only browsers --
|
|
267 tabindex NUMBER #IMPLIED -- position in tabbing order --
|
|
268 notab (notab) #IMPLIED -- exclude from tabbing order --
|
|
269 onClick %script #IMPLIED -- intrinsic event --
|
|
270 onMouseOver %script #IMPLIED -- intrinsic event --
|
|
271 onMouseOut %script #IMPLIED -- intrinsic event --
|
|
272 >
|
|
273
|
|
274 <!--================== The LINK Element ==================================-->
|
|
275
|
|
276 <!ENTITY % Types "CDATA"
|
|
277 -- See Internet Draft: draft-ietf-html-relrev-00.txt
|
|
278 LINK has been part of HTML since the early days
|
|
279 although few browsers as yet take advantage of it.
|
|
280
|
|
281 Relationship values can be used in principle:
|
|
282
|
|
283 a) for document specific toolbars/menus when used
|
|
284 with the LINK element in document head:
|
|
285 b) to link to a separate style sheet (rel=stylesheet)
|
|
286 c) to make a link to a script (rel=script)
|
|
287 d) by stylesheets to control how collections of
|
|
288 html nodes are rendered into printed documents
|
|
289 e) to make a link to a printable version of this document
|
|
290 e.g. a postscript or pdf version (rel=print)
|
|
291 -->
|
|
292
|
|
293 <!ELEMENT LINK - O EMPTY>
|
|
294 <!ATTLIST LINK
|
|
295 %style; -- id, class, style --
|
|
296 href %URL #IMPLIED -- URL for linked resource --
|
|
297 rel %Types #IMPLIED -- forward link types --
|
|
298 rev %Types #IMPLIED -- reverse link types --
|
|
299 title CDATA #IMPLIED -- advisory title string --
|
|
300 type CDATA #IMPLIED -- advisory Internet media type --
|
|
301 >
|
|
302
|
|
303 <!--=================== Images ============================================-->
|
|
304
|
|
305 <!ENTITY % Length "CDATA" -- nn for pixels or nn% for percentage length -->
|
|
306 <!ENTITY % Pixels "CDATA" -- integer representing length in pixels -->
|
|
307
|
|
308 <!-- Suggested widths are used for negotiating image size
|
|
309 with the module responsible for painting the image.
|
|
310 align=left or right cause image to float to margin
|
|
311 and for subsequent text to wrap around image -->
|
|
312
|
|
313 <!ENTITY % IAlign "(top|middle|bottom|left|right)" -- center? -->
|
|
314
|
|
315 <!ELEMENT IMG - O EMPTY -- Embedded image -->
|
|
316 <!ATTLIST IMG
|
|
317 %style; -- id, class, style --
|
|
318 src %URL #REQUIRED -- URL of image to embed --
|
|
319 alt CDATA #IMPLIED -- for display in place of image --
|
|
320 align %IAlign #IMPLIED -- vertical or horizontal alignment --
|
|
321 height %Pixels #IMPLIED -- suggested height in pixels --
|
|
322 width %Pixels #IMPLIED -- suggested width in pixels --
|
|
323 border %Pixels #IMPLIED -- suggested link border width --
|
|
324 hspace %Pixels #IMPLIED -- suggested horizontal gutter --
|
|
325 vspace %Pixels #IMPLIED -- suggested vertical gutter --
|
|
326 usemap %URL #IMPLIED -- use client-side image map --
|
|
327 ismap (ismap) #IMPLIED -- use server image map --
|
|
328 title CDATA #IMPLIED -- advisory title string --
|
|
329 >
|
|
330
|
|
331 <!-- USEMAP points to a MAP element which may be in this document
|
|
332 or an external document, although the latter is not widely supported -->
|
|
333
|
|
334 <!--=================== OBJECT tag ===================================-->
|
|
335 <!-- OBJECT is a character-like element for inserting objects, see
|
|
336 W3C working draft: http://www.w3.org/pub/WWW/TR/WD-object.html -->
|
|
337
|
|
338 <!ENTITY % OAlign "(texttop|middle|textmiddle|baseline|
|
|
339 textbottom|left|center|right)">
|
|
340
|
|
341 <!ELEMENT OBJECT - - (param | %body.content)*>
|
|
342 <!ATTLIST OBJECT
|
|
343 %attrs -- id, class, style, lang, dir --
|
|
344 declare (declare) #IMPLIED -- declare but don't instantiate flag --
|
|
345 classid %URL #IMPLIED -- identifies an implementation --
|
|
346 codebase %URL #IMPLIED -- some systems need an additional URL --
|
|
347 data %URL #IMPLIED -- reference to object's data --
|
|
348 type CDATA #IMPLIED -- Internet media type for data --
|
|
349 codetype CDATA #IMPLIED -- Internet media type for code --
|
|
350 standby CDATA #IMPLIED -- message to show while loading --
|
|
351 align %OAlign #IMPLIED -- positioning inside document --
|
|
352 height %Length #IMPLIED -- suggested height --
|
|
353 width %Length #IMPLIED -- suggested width --
|
|
354 border %Length #IMPLIED -- suggested link border width --
|
|
355 hspace %Length #IMPLIED -- suggested horizontal gutter --
|
|
356 vspace %Length #IMPLIED -- suggested vertical gutter --
|
|
357 usemap %URL #IMPLIED -- reference to image map --
|
|
358 shapes (shapes) #IMPLIED -- object has shaped hypertext links --
|
|
359 name %URL #IMPLIED -- submit as part of form --
|
|
360 title CDATA #IMPLIED -- advisory title string --
|
|
361 tabindex NUMBER #IMPLIED -- position in tabbing order --
|
|
362 notab (notab) #IMPLIED -- exclude from tabbing order --
|
|
363 >
|
|
364
|
|
365 <!ELEMENT param - O EMPTY -- named property value -->
|
|
366 <!ATTLIST param
|
|
367 name CDATA #REQUIRED -- property name --
|
|
368 value CDATA #IMPLIED -- property value --
|
|
369 valuetype (DATA|REF|OBJECT) DATA -- How to interpret value --
|
|
370 type CDATA #IMPLIED -- Internet media type --
|
|
371 >
|
|
372
|
|
373 <!--=================== Java APPLET tag ===================================-->
|
|
374 <!--
|
|
375 This tag is supported by all java enabled browsers. Applet resources
|
|
376 (including their classes) are normally loaded relative to the document
|
|
377 URL (or <BASE> element if it is defined). The CODEBASE attribute is used
|
|
378 to change this default behavior. If the CODEBASE attribute is defined then
|
|
379 it specifies a different location to find applet resources. The value
|
|
380 can be an absolute URL or a relative URL. The absolute URL is used as is
|
|
381 without modification and is not effected by the documents <BASE> element.
|
|
382 When the codebase attribute is relative, then it is relative to the
|
|
383 document URL (or <BASE> tag if defined). <TEXTFLOW> avoids the problems
|
|
384 with SGML mixed content. It can always be omitted *except* when the APPLET
|
|
385 element hasn't any content. White space, comments and PARAM elements
|
|
386 don't count as content for this purpose. TEXTFLOW was introduced into
|
|
387 the DTD to satisfy SGML parsers, but is ignored by current Web browsers.
|
|
388 -->
|
|
389 <!ELEMENT APPLET - - (PARAM*, TEXTFLOW)>
|
|
390 <!ATTLIST APPLET
|
|
391 %style; -- id, class, style --
|
|
392 codebase %URL #IMPLIED -- code base --
|
|
393 code CDATA #REQUIRED -- class file --
|
|
394 name CDATA #IMPLIED -- applet name --
|
|
395 alt CDATA #IMPLIED -- for display in place of applet --
|
|
396 align %IAlign #IMPLIED -- vertical or horizontal alignment --
|
|
397 height %Pixels #REQUIRED -- suggested height in pixels --
|
|
398 width %Pixels #REQUIRED -- suggested width in pixels --
|
|
399 hspace %Pixels #IMPLIED -- suggested horizontal gutter --
|
|
400 vspace %Pixels #IMPLIED -- suggested vertical gutter --
|
|
401 title CDATA #IMPLIED -- advisory title string --
|
|
402 download NUMBER #IMPLIED -- image download order --
|
|
403 >
|
|
404
|
|
405 <!ELEMENT TEXTFLOW O O (%text)* -- needed to bypass mixed content model -->
|
|
406
|
|
407 <!--
|
|
408 Here is an example:
|
|
409
|
|
410 <applet codebase="applets/NervousText"
|
|
411 code=NervousText.class
|
|
412 width=300
|
|
413 height=50>
|
|
414 <param name=text value="Java is Cool!">
|
|
415 <img src=sorry.gif alt="This looks better with Java support">
|
|
416 </applet>
|
|
417 -->
|
|
418
|
|
419 <!--=================== Horizontal Rule ===================================-->
|
|
420
|
|
421 <!ELEMENT HR - O EMPTY>
|
|
422 <!ATTLIST HR
|
|
423 %style; -- id, class, style --
|
|
424 align (left|right|center) #IMPLIED
|
|
425 noshade (noshade) #IMPLIED
|
|
426 size %Pixels #IMPLIED
|
|
427 width %Length #IMPLIED
|
|
428 >
|
|
429 <!--=================== Paragraphs =========================================-->
|
|
430
|
|
431 <!ELEMENT P - O (%text)*>
|
|
432 <!ATTLIST P
|
|
433 %attrs; -- id, class, style, lang, dir --
|
|
434 %just; -- text alignment --
|
|
435 >
|
|
436
|
|
437 <!--=================== Headings ==========================================-->
|
|
438
|
|
439 <!--
|
|
440 There are six levels of headers from H1 (the most important)
|
|
441 to H6 (the least important).
|
|
442 -->
|
|
443
|
|
444 <!ELEMENT ( %heading ) - - (%text;)*>
|
|
445 <!ATTLIST ( %heading )
|
|
446 %attrs; -- id, class, style, lang, dir --
|
|
447 %just; -- text alignment --
|
|
448 >
|
|
449
|
|
450 <!--=================== Preformatted Text =================================-->
|
|
451
|
|
452 <!-- excludes images and changes in font size -->
|
|
453
|
|
454 <!ENTITY % pre.exclusion "IMG|BIG|SMALL|SUB|SUP|FONT">
|
|
455
|
|
456 <!ELEMENT PRE - - (%text)* -(%pre.exclusion)>
|
|
457 <!ATTLIST PRE
|
|
458 %attrs; -- id, class, style, lang, dir --
|
|
459 width NUMBER #implied -- is this widely supported? --
|
|
460 >
|
|
461
|
|
462 <![ %HTML.Deprecated [
|
|
463
|
|
464 <!ENTITY % literal "CDATA"
|
|
465 -- historical, non-conforming parsing mode where
|
|
466 the only markup signal is the end tag
|
|
467 in full
|
|
468 -->
|
|
469
|
|
470 <!ELEMENT (XMP|LISTING) - - %literal>
|
|
471 <!ELEMENT PLAINTEXT - O %literal>
|
|
472
|
|
473 ]]>
|
|
474
|
|
475 <!--=================== Block-like Quotes =================================-->
|
|
476
|
|
477 <!ELEMENT BLOCKQUOTE - - %body.content>
|
|
478 <!ATTLIST BLOCKQUOTE %attrs>
|
|
479
|
|
480 <!--=================== Lists =============================================-->
|
|
481
|
|
482 <!--
|
|
483 HTML 3.2 allows you to control the sequence number for ordered lists.
|
|
484 You can set the sequence number with the START and VALUE attributes.
|
|
485 The TYPE attribute may be used to specify the rendering of ordered
|
|
486 and unordered lists.
|
|
487 -->
|
|
488
|
|
489 <!-- definition lists - DT for term, DD for its definition -->
|
|
490
|
|
491 <!ELEMENT DL - - (DT|DD)*>
|
|
492 <!ATTLIST DL
|
|
493 %attrs; -- id, class, style, lang, dir --
|
|
494 compact (compact) #IMPLIED -- more compact style --
|
|
495 >
|
|
496
|
|
497 <!ELEMENT DT - O (%text)*>
|
|
498 <!ELEMENT DD - O %flow;>
|
|
499 <!ATTLIST (DT|DD) %attrs>
|
|
500
|
|
501 <!-- Ordered lists OL, and unordered lists UL -->
|
|
502 <!ELEMENT (OL|UL) - - (LI)*>
|
|
503
|
|
504 <!--
|
|
505 Numbering style
|
|
506 1 arablic numbers 1, 2, 3, ...
|
|
507 a lower alpha a, b, c, ...
|
|
508 A upper alpha A, B, C, ...
|
|
509 i lower roman i, ii, iii, ...
|
|
510 I upper roman I, II, III, ...
|
|
511
|
|
512 The style is applied to the sequence number which by default
|
|
513 is reset to 1 for the first list item in an ordered list.
|
|
514
|
|
515 This can't be expressed directly in SGML due to case folding.
|
|
516 -->
|
|
517
|
|
518 <!ENTITY % OLStyle "CDATA" -- constrained to: [1|a|A|i|I] -->
|
|
519
|
|
520 <!ATTLIST OL -- ordered lists --
|
|
521 %attrs; -- id, class, style, lang, dir --
|
|
522 type %OLStyle #IMPLIED -- numbering style --
|
|
523 start NUMBER #IMPLIED -- starting sequence number --
|
|
524 compact (compact) #IMPLIED -- reduced interitem spacing --
|
|
525 >
|
|
526
|
|
527 <!-- bullet styles -->
|
|
528
|
|
529 <!ENTITY % ULStyle "disc|square|circle">
|
|
530
|
|
531 <!ATTLIST UL -- unordered lists --
|
|
532 %attrs; -- id, class, style, lang, dir --
|
|
533 type (%ULStyle) #IMPLIED -- bullet style --
|
|
534 compact (compact) #IMPLIED -- reduced interitem spacing --
|
|
535 >
|
|
536
|
|
537 <!ELEMENT (DIR|MENU) - - (LI)* -(%block)>
|
|
538 <!ATTLIST DIR
|
|
539 compact (compact) #IMPLIED
|
|
540 >
|
|
541 <!ATTLIST MENU
|
|
542 compact (compact) #IMPLIED
|
|
543 >
|
|
544
|
|
545 <!-- <DIR> Directory list -->
|
|
546 <!-- <DIR COMPACT> Compact list style -->
|
|
547 <!-- <MENU> Menu list -->
|
|
548 <!-- <MENU COMPACT> Compact list style -->
|
|
549
|
|
550 <!-- The type attribute can be used to change the bullet style
|
|
551 in unordered lists and the numbering style in ordered lists -->
|
|
552
|
|
553 <!ENTITY % LIStyle "CDATA" -- constrained to: "(%ULStyle|%OLStyle)" -->
|
|
554
|
|
555 <!ELEMENT LI - O %flow -- list item -->
|
|
556 <!ATTLIST LI
|
|
557 %attrs; -- id, class, style, lang, dir --
|
|
558 type %LIStyle #IMPLIED -- list item style --
|
|
559 value NUMBER #IMPLIED -- reset sequence number --
|
|
560 >
|
|
561
|
|
562 <!--================ Forms ===============================================-->
|
|
563
|
|
564 <!ELEMENT FORM - - %body.content -(FORM)>
|
|
565 <!ATTLIST FORM
|
|
566 action %URL #REQUIRED -- server-side form handler --
|
|
567 method (%HTTP-Method) GET -- see HTTP specification --
|
|
568 enctype %Content-Type; "application/x-www-form-urlencoded"
|
|
569 onSubmit %script #IMPLIED -- intrinsic event --
|
|
570 >
|
|
571
|
|
572 <!ELEMENT LABEL - - (%text)* -(LABEL) -- field label text -->
|
|
573 <!ATTLIST LABEL
|
|
574 %attrs; -- id, class, style, lang, dir --
|
|
575 for IDREF #IMPLIED -- matches field ID value --
|
|
576 accesskey CDATA #IMPLIED -- accessibility key character --
|
|
577 title CDATA #IMPLIED -- advisory title string --
|
|
578 onClick %script #IMPLIED -- intrinsic event --
|
|
579 >
|
|
580 <!ENTITY % InputType
|
|
581 "(TEXT | PASSWORD | CHECKBOX |
|
|
582 RADIO | SUBMIT | RESET |
|
|
583 FILE | HIDDEN | IMAGE | BUTTON)"
|
|
584 >
|
|
585
|
|
586 <!ELEMENT INPUT - O EMPTY>
|
|
587 <!ATTLIST INPUT
|
|
588 %attrs; -- id, class, style, lang, dir --
|
|
589 type %InputType TEXT -- what kind of widget is needed --
|
|
590 name CDATA #IMPLIED -- required for all but submit and reset --
|
|
591 value CDATA #IMPLIED -- required for radio and checkboxes --
|
|
592 checked (checked) #IMPLIED -- for radio buttons and check boxes --
|
|
593 title CDATA #IMPLIED -- advisory title string --
|
|
594 size CDATA #IMPLIED -- specific to each type of field --
|
|
595 maxlength NUMBER #IMPLIED
|
|
596 src %URL #IMPLIED -- for fields with background images --
|
|
597 align (top|middle|bottom|left|right) top -- image alignment --
|
|
598 tabindex NUMBER #IMPLIED -- position in tabbing order --
|
|
599 notab (notab) #IMPLIED -- exclude from tabbing order --
|
|
600 onClick %script #IMPLIED -- intrinsic event --
|
|
601 onFocus %script #IMPLIED -- intrinsic event --
|
|
602 onBlur %script #IMPLIED -- intrinsic event --
|
|
603 onSelect %script #IMPLIED -- intrinsic event --
|
|
604 onChange %script #IMPLIED -- intrinsic event --
|
|
605 >
|
|
606
|
|
607 <!ELEMENT SELECT - - (OPTION+)>
|
|
608 <!ATTLIST SELECT
|
|
609 %attrs; -- id, class, style, lang, dir --
|
|
610 name CDATA #REQUIRED
|
|
611 size NUMBER #IMPLIED
|
|
612 multiple (multiple) #IMPLIED
|
|
613 title CDATA #IMPLIED -- advisory title string --
|
|
614 tabindex NUMBER #IMPLIED -- position in tabbing order --
|
|
615 notab (notab) #IMPLIED -- exclude from tabbing order --
|
|
616 onFocus %script #IMPLIED -- intrinsic event --
|
|
617 onBlur %script #IMPLIED -- intrinsic event --
|
|
618 onChange %script #IMPLIED -- intrinsic event --
|
|
619 >
|
|
620
|
|
621 <!ELEMENT OPTION - O (#PCDATA)*>
|
|
622 <!ATTLIST OPTION
|
|
623 %attrs; -- id, class, style, lang, dir --
|
|
624 selected (selected) #IMPLIED
|
|
625 value CDATA #IMPLIED -- defaults to element content --
|
|
626 >
|
|
627
|
|
628 <!-- Multi-line text input field. -->
|
|
629
|
|
630 <!ELEMENT TEXTAREA - - (#PCDATA)*>
|
|
631 <!ATTLIST TEXTAREA
|
|
632 %attrs; -- id, class, style, lang, dir --
|
|
633 name CDATA #REQUIRED
|
|
634 rows NUMBER #REQUIRED
|
|
635 cols NUMBER #REQUIRED
|
|
636 title CDATA #IMPLIED -- advisory title string --
|
|
637 tabindex NUMBER #IMPLIED -- position in tabbing order --
|
|
638 notab (notab) #IMPLIED -- exclude from tabbing order --
|
|
639 onFocus %script #IMPLIED -- intrinsic event --
|
|
640 onBlur %script #IMPLIED -- intrinsic event --
|
|
641 onSelect %script #IMPLIED -- intrinsic event --
|
|
642 onChange %script #IMPLIED -- intrinsic event --
|
|
643 >
|
|
644
|
|
645 <!-- captioned set of related form fields -->
|
|
646
|
|
647 <!ELEMENT FIELDSET - - (CAPTION?, %body.content)>
|
|
648 <!ATTLIST FIELDSET
|
|
649 %attrs; -- id, class, style, lang, dir --
|
|
650 title CDATA #IMPLIED -- advisory title string -->
|
|
651
|
|
652 <!--======================= Tables ========================================-->
|
|
653
|
|
654 <!-- IETF HTML table standard, see RFC 1942 e.g. at
|
|
655 http://www.ics.uci.edu/pub/ietf/html/rfc1942.txt -->
|
|
656
|
|
657 <!--
|
|
658 The BORDER attribute sets the thickness of the frame around the
|
|
659 table. The default units are screen pixels.
|
|
660
|
|
661 The FRAME attribute specifies which parts of the frame around
|
|
662 the table should be rendered. The values are not the same as
|
|
663 CALS to avoid a name clash with the VALIGN attribute.
|
|
664
|
|
665 The value "border" is included for backwards compatibility with
|
|
666 <TABLE BORDER> which yields frame=border and border=implied
|
|
667 For <TABLE BORDER=1> you get border=1 and frame=implied. In this
|
|
668 case, its appropriate to treat this as frame=border for backwards
|
|
669 compatibility with deployed browsers.
|
|
670 -->
|
|
671
|
|
672 <!ENTITY % Frame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
|
|
673
|
|
674 <!--
|
|
675 The RULES attribute defines which rules to draw between cells:
|
|
676
|
|
677 If RULES is absent then assume:
|
|
678 "none" if BORDER is absent or BORDER=0 otherwise "all"
|
|
679 -->
|
|
680
|
|
681 <!ENTITY % Rules "(none | groups | rows | cols | all)">
|
|
682
|
|
683 <!-- horizontal placement of table relative to window -->
|
|
684 <!ENTITY % Where "(left|center|right)">
|
|
685
|
|
686 <!-- horizontal alignment attributes for cell contents -->
|
|
687 <!ENTITY % cell.halign
|
|
688 "align (left|center|right|justify|char) #IMPLIED
|
|
689 char CDATA #IMPLIED -- alignment char, e.g. char=':' --
|
|
690 charoff CDATA #IMPLIED -- offset for alignment char --"
|
|
691 >
|
|
692
|
|
693 <!-- vertical alignment attributes for cell contents -->
|
|
694 <!ENTITY % cell.valign
|
|
695 "valign (top|middle|bottom|baseline) #IMPLIED"
|
|
696 >
|
|
697
|
|
698 <!ELEMENT table - - (caption?, (col*|colgroup*), thead?, tfoot?, tbody+)>
|
|
699 <!ELEMENT caption - - (%text;)+>
|
|
700 <!ELEMENT thead - O (tr+)>
|
|
701 <!ELEMENT tfoot - O (tr+)>
|
|
702 <!ELEMENT tbody O O (tr+)>
|
|
703 <!ELEMENT colgroup - O (col*)>
|
|
704 <!ELEMENT col - O EMPTY>
|
|
705 <!ELEMENT tr - O (th|td)+>
|
|
706 <!ELEMENT (th|td) - O %body.content>
|
|
707
|
|
708 <!ATTLIST table -- table element --
|
|
709 %attrs; -- id, lang, style, dir and class --
|
|
710 align %Where; #IMPLIED -- table position relative to window --
|
|
711 width CDATA #IMPLIED -- table width relative to window --
|
|
712 cols NUMBER #IMPLIED -- used for immediate display mode --
|
|
713 border CDATA #IMPLIED -- controls frame width around table --
|
|
714 frame %Frame; #IMPLIED -- which parts of table frame to include --
|
|
715 rules %Rules; #IMPLIED -- rulings between rows and cols --
|
|
716 cellspacing CDATA #IMPLIED -- spacing between cells --
|
|
717 cellpadding CDATA #IMPLIED -- spacing within cells --
|
|
718 >
|
|
719
|
|
720 <!-- ALIGN is used here for compatibility with deployed browsers -->
|
|
721 <!ENTITY % Caption "(top|bottom|left|right)">
|
|
722
|
|
723 <!ATTLIST caption -- table caption --
|
|
724 %attrs; -- id, lang, style, dir and class --
|
|
725 align %Caption; #IMPLIED -- relative to table --
|
|
726 accesskey CDATA #IMPLIED -- accessibility key character --
|
|
727 >
|
|
728
|
|
729 <!--
|
|
730 COLGROUP groups a set of COL elements. It allows you to group
|
|
731 several columns together.
|
|
732 -->
|
|
733
|
|
734 <!ATTLIST colgroup
|
|
735 %attrs; -- id, lang, style, dir and class --
|
|
736 span NUMBER 1 -- default number of columns in group --
|
|
737 width CDATA #IMPLIED -- default width for enclosed COLs --
|
|
738 %cell.halign; -- horizontal alignment in cells --
|
|
739 %cell.valign; -- vertical alignment in cells --
|
|
740 >
|
|
741
|
|
742 <!--
|
|
743 COL elements define the alignment properties for cells in a given
|
|
744 column or spanned columns. The WIDTH attribute specifies the
|
|
745 width of the columns, e.g.
|
|
746
|
|
747 width=64 width in screen pixels
|
|
748 width=0.5* relative width of 0.5
|
|
749 -->
|
|
750
|
|
751 <!ATTLIST col -- column groups and properties --
|
|
752 %attrs; -- id, lang, style, dir and class --
|
|
753 span NUMBER 1 -- number of columns spanned by group --
|
|
754 width CDATA #IMPLIED -- column width specification --
|
|
755 %cell.halign; -- horizontal alignment in cells --
|
|
756 %cell.valign; -- vertical alignment in cells --
|
|
757 >
|
|
758
|
|
759 <!--
|
|
760 Use THEAD to duplicate headers when breaking table
|
|
761 across page boundaries, or for static headers when
|
|
762 body sections are rendered in scrolling panel.
|
|
763
|
|
764 Use TFOOT to duplicate footers when breaking table
|
|
765 across page boundaries, or for static footers when
|
|
766 body sections are rendered in scrolling panel.
|
|
767
|
|
768 Use multiple TBODY sections when rules are needed
|
|
769 between groups of table rows.
|
|
770 -->
|
|
771 <!ATTLIST (thead|tbody|tfoot) -- table section --
|
|
772 %attrs; -- id, lang, style, dir and class --
|
|
773 %cell.halign; -- horizontal alignment in cells --
|
|
774 %cell.valign; -- vertical alignment in cells --
|
|
775 >
|
|
776
|
|
777 <!ATTLIST tr -- table row --
|
|
778 %attrs; -- id, lang, style, dir and class --
|
|
779 %cell.halign; -- horizontal alignment in cells --
|
|
780 %cell.valign; -- vertical alignment in cells --
|
|
781 >
|
|
782
|
|
783 <!ATTLIST (th|td) -- header or data cell --
|
|
784 %attrs; -- id, lang, style, dir and class --
|
|
785 axis CDATA #IMPLIED -- defaults to cell content --
|
|
786 axes CDATA #IMPLIED -- list of axis names --
|
|
787 nowrap (nowrap) #IMPLIED -- suppress word wrap --
|
|
788 bgcolor %color #IMPLIED -- cell background color --
|
|
789 rowspan NUMBER 1 -- number of rows spanned by cell --
|
|
790 colspan NUMBER 1 -- number of cols spanned by cell --
|
|
791 %cell.halign; -- horizontal alignment in cells --
|
|
792 %cell.valign; -- vertical alignment in cells --
|
|
793 >
|
|
794 <!--================ Document Head ========================================-->
|
|
795
|
|
796 <!-- %head.misc defined earlier on as "SCRIPT|STYLE|META|LINK" -->
|
|
797
|
|
798 <!ENTITY % head.content "TITLE & ISINDEX? & BASE?">
|
|
799
|
|
800 <!ELEMENT HEAD O O (%head.content) +(%head.misc)>
|
|
801
|
|
802 <!ELEMENT TITLE - - (#PCDATA)* -(%head.misc)
|
|
803 -- The TITLE element is not considered part of the flow of text.
|
|
804 It should be displayed, for example as the page header or
|
|
805 window title.
|
|
806 -->
|
|
807 <!ATTLIST TITLE %i18n>
|
|
808
|
|
809 <!ELEMENT ISINDEX - O EMPTY>
|
|
810 <!ATTLIST ISINDEX
|
|
811 %i18n; -- lang, dir --
|
|
812 prompt CDATA #IMPLIED -- prompt message -->
|
|
813
|
|
814 <!--
|
|
815 The BASE element gives an absolute URL for dereferencing relative
|
|
816 URLs, e.g.
|
|
817
|
|
818 <BASE href="http://foo.com/index.html">
|
|
819 ...
|
|
820 <IMG SRC="images/bar.gif">
|
|
821
|
|
822 The image is deferenced to
|
|
823
|
|
824 http://foo.com/images/bar.gif
|
|
825
|
|
826 In the absence of a BASE element the document URL should be used.
|
|
827 Note that this is not necessarily the same as the URL used to
|
|
828 request the document, as the base URL may be overridden by an HTTP
|
|
829 header accompanying the document.
|
|
830 -->
|
|
831
|
|
832 <!ELEMENT BASE - O EMPTY>
|
|
833 <!ATTLIST BASE
|
|
834 href %URL #REQUIRED
|
|
835 >
|
|
836
|
|
837 <!ELEMENT META - O EMPTY -- Generic Metainformation -->
|
|
838 <!ATTLIST META
|
|
839 http-equiv NAME #IMPLIED -- HTTP response header name --
|
|
840 name NAME #IMPLIED -- metainformation name --
|
|
841 content CDATA #REQUIRED -- associated information --
|
|
842 >
|
|
843
|
|
844 <!-- SCRIPT/STYLE are place holders for transition to next version of HTML -->
|
|
845
|
|
846 <!ELEMENT STYLE - - CDATA -- style info -->
|
|
847 <!ATTLIST STYLE
|
|
848 %i18n; -- lang, dir for use with title string --
|
|
849 type CDATA #REQUIRED -- Internet media type for style notation --
|
|
850 title CDATA #IMPLIED -- advisory title for this style --
|
|
851 >
|
|
852
|
|
853 <!ELEMENT SCRIPT - - CDATA -- script statements -->
|
|
854 <!ATTLIST SCRIPT
|
|
855 type CDATA #IMPLIED -- Internet media type for style notation --
|
|
856 language CDATA #IMPLIED -- predefined script language name --
|
|
857 src %URL #IMPLIED -- URL for an external script --
|
|
858 >
|
|
859
|
|
860 <!--================ Document Structure ===================================-->
|
|
861
|
|
862 <!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'">
|
|
863
|
|
864 <![ %HTML.Deprecated [
|
|
865 <!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
|
|
866 ]]>
|
|
867
|
|
868 <!ENTITY % html.content "HEAD, BODY">
|
|
869
|
|
870 <!ELEMENT HTML O O (%html.content)>
|
|
871 <!ATTLIST HTML
|
|
872 %version.attr;
|
|
873 >
|