comparison etc/sgml/html-cougar.dtd @ 2:ac2d302a0011 r19-15b2

Import from CVS: tag r19-15b2
author cvs
date Mon, 13 Aug 2007 08:46:35 +0200
parents
children
comparison
equal deleted inserted replaced
1:c0c6a60d29db 2:ac2d302a0011
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 "&#169" -- copyright sign -->
73 <!ENTITY reg CDATA "&#174" -- registered sign -->
74 <!ENTITY amp CDATA "&#38;" -- ampersand -->
75 <!ENTITY gt CDATA "&#62;" -- greater than -->
76 <!ENTITY lt CDATA "&#60;" -- less than -->
77 <!ENTITY quot CDATA "&#34;" -- double quote -->
78 <!ENTITY nbsp CDATA "&#160;" -- non breaking space -->
79 <!ENTITY trade CDATA "&#8482;" -- trade mark symbol -->
80 <!ENTITY shy CDATA "&#173;" -- soft hyphen -->
81 <!ENTITY thinsp CDATA "&#8201;" -- thin space (1/6 em) -->
82 <!ENTITY emsp CDATA "&#8195;" -- em space -->
83 <!ENTITY ensp CDATA "&#8194;" -- en space (1/2 em) -->
84 <!ENTITY mdash CDATA "&#8212;" -- em dash -->
85 <!ENTITY ndash CDATA "&#8211;" -- en dash -->
86
87 <!-- Language-dependent BIDI and contextual analysis -->
88 <!ENTITY zwnj CDATA "&#8204;" -- zero width non-joiner -->
89 <!ENTITY zwj CDATA "&#8205;" -- zero width joiner -->
90 <!ENTITY lrm CDATA "&#8206;" -- left-to-right mark -->
91 <!ENTITY rlm CDATA "&#8207;" -- 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 >