blob: 5d3f79195d144c7a96ef69bd23f3399faad66e55 [file] [log] [blame]
david_williams524ed602007-05-15 02:42:24 +00001<!--
2 Extensible HTML version 1.0 Frameset DTD
3
4 This is the same as HTML 4.0 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-2000 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.1 $
20 $Date: 2007/05/15 02:42:22 $
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 [RFC1766] -->
57
58<!ENTITY % Character "CDATA">
59 <!-- a single character from [ISO10646] -->
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) #IMPLIED">
197
198<!--=================== Text Elements ====================================-->
199
200<!ENTITY % special
201 "br | span | bdo |object | applet | img | map | iframe">
202
203<!ENTITY % fontstyle "tt | i | b | big | small | u
204 | s | strike |font | basefont">
205
206<!ENTITY % phrase "em | strong | dfn | code | q | sub | sup |
207 samp | kbd | var | cite | abbr | acronym">
208
209<!ENTITY % inline.forms "input | select | textarea | label | button">
210
211<!-- these can occur at block or inline level -->
212<!ENTITY % misc "ins | del | script | noscript">
213
214<!ENTITY % inline "a | %special; | %fontstyle; | %phrase; | %inline.forms;">
215
216<!-- %Inline; covers inline or "text-level" elements -->
217<!ENTITY % Inline "(#PCDATA | %inline; | %misc;)*">
218
219<!--================== Block level elements ==============================-->
220
221<!ENTITY % heading "h1|h2|h3|h4|h5|h6">
222<!ENTITY % lists "ul | ol | dl | menu | dir">
223<!ENTITY % blocktext "pre | hr | blockquote | address | center">
224
225<!ENTITY % block
226 "p | %heading; | div | %lists; | %blocktext; | isindex | fieldset | table">
227
228<!ENTITY % Block "(%block; | form | %misc;)*">
229
230<!-- %Flow; mixes Block and Inline and is used for list items etc. -->
231<!ENTITY % Flow "(#PCDATA | %block; | form | %inline; | %misc;)*">
232
233<!--================== Content models for exclusions =====================-->
234
235<!-- a elements use %Inline; excluding a -->
236
237<!ENTITY % a.content
238 "(#PCDATA | %special; | %fontstyle; | %phrase; | %inline.forms; | %misc;)*">
239
240<!-- pre uses %Inline excluding img, object, applet, big, small,
241 sub, sup, font, or basefont -->
242
243<!ENTITY % pre.content
244 "(#PCDATA | a | br | span | bdo | map | tt | i | b | u | s |
245 %phrase; | %inline.forms;)*">
246
247<!-- form uses %Flow; excluding form -->
248
249<!ENTITY % form.content "(#PCDATA | %block; | %inline; | %misc;)*">
250
251<!-- button uses %Flow; but excludes a, form, form controls, iframe -->
252
253<!ENTITY % button.content
254 "(#PCDATA | p | %heading; | div | %lists; | %blocktext; |
255 table | br | span | bdo | object | applet | img | map |
256 %fontstyle; | %phrase; | %misc;)*">
257
258<!--================ Document Structure ==================================-->
259
260<!-- the namespace URI designates the document profile -->
261
262<!ELEMENT html (head, frameset)>
263<!ATTLIST html
264 %i18n;
265 xmlns %URI; #FIXED 'http://www.w3.org/1999/xhtml'
266 >
267
268<!--================ Document Head =======================================-->
269
270<!ENTITY % head.misc "(script|style|meta|link|object|isindex)*">
271
272<!-- content model is %head.misc; combined with a single
273 title and an optional base element in any order -->
274
275<!ELEMENT head (%head.misc;,
276 ((title, %head.misc;, (base, %head.misc;)?) |
277 (base, %head.misc;, (title, %head.misc;))))>
278
279<!ATTLIST head
280 %i18n;
281 profile %URI; #IMPLIED
282 >
283
284<!-- The title element is not considered part of the flow of text.
285 It should be displayed, for example as the page header or
286 window title. Exactly one title is required per document.
287 -->
288<!ELEMENT title (#PCDATA)>
289<!ATTLIST title %i18n;>
290
291<!-- document base URI -->
292
293<!ELEMENT base EMPTY>
294<!ATTLIST base
295 href %URI; #IMPLIED
296 target %FrameTarget; #IMPLIED
297 >
298
299<!-- generic metainformation -->
300<!ELEMENT meta EMPTY>
301<!ATTLIST meta
302 %i18n;
303 http-equiv CDATA #IMPLIED
304 name CDATA #IMPLIED
305 content CDATA #REQUIRED
306 scheme CDATA #IMPLIED
307 >
308
309<!--
310 Relationship values can be used in principle:
311
312 a) for document specific toolbars/menus when used
313 with the link element in document head e.g.
314 start, contents, previous, next, index, end, help
315 b) to link to a separate style sheet (rel="stylesheet")
316 c) to make a link to a script (rel="script")
317 d) by stylesheets to control how collections of
318 html nodes are rendered into printed documents
319 e) to make a link to a printable version of this document
320 e.g. a PostScript or PDF version (rel="alternate" media="print")
321-->
322
323<!ELEMENT link EMPTY>
324<!ATTLIST link
325 %attrs;
326 charset %Charset; #IMPLIED
327 href %URI; #IMPLIED
328 hreflang %LanguageCode; #IMPLIED
329 type %ContentType; #IMPLIED
330 rel %LinkTypes; #IMPLIED
331 rev %LinkTypes; #IMPLIED
332 media %MediaDesc; #IMPLIED
333 target %FrameTarget; #IMPLIED
334 >
335
336<!-- style info, which may include CDATA sections -->
337<!ELEMENT style (#PCDATA)>
338<!ATTLIST style
339 %i18n;
340 type %ContentType; #REQUIRED
341 media %MediaDesc; #IMPLIED
342 title %Text; #IMPLIED
343 xml:space (preserve) #FIXED 'preserve'
344 >
345
346<!-- script statements, which may include CDATA sections -->
347<!ELEMENT script (#PCDATA)>
348<!ATTLIST script
349 charset %Charset; #IMPLIED
350 type %ContentType; #REQUIRED
351 language CDATA #IMPLIED
352 src %URI; #IMPLIED
353 defer (defer) #IMPLIED
354 xml:space (preserve) #FIXED 'preserve'
355 >
356
357<!-- alternate content container for non script-based rendering -->
358
359<!ELEMENT noscript %Flow;>
360<!ATTLIST noscript
361 %attrs;
362 >
363
364<!--======================= Frames =======================================-->
365
366<!-- only one noframes element permitted per document -->
367
368<!ELEMENT frameset (frameset|frame|noframes)*>
369<!ATTLIST frameset
370 %coreattrs;
371 rows %MultiLengths; #IMPLIED
372 cols %MultiLengths; #IMPLIED
373 onload %Script; #IMPLIED
374 onunload %Script; #IMPLIED
375 >
376
377<!-- reserved frame names start with "_" otherwise starts with letter -->
378
379<!-- tiled window within frameset -->
380
381<!ELEMENT frame EMPTY>
382<!ATTLIST frame
383 %coreattrs;
384 longdesc %URI; #IMPLIED
385 name NMTOKEN #IMPLIED
386 src %URI; #IMPLIED
387 frameborder (1|0) "1"
388 marginwidth %Pixels; #IMPLIED
389 marginheight %Pixels; #IMPLIED
390 noresize (noresize) #IMPLIED
391 scrolling (yes|no|auto) "auto"
392 >
393
394<!-- inline subwindow -->
395
396<!ELEMENT iframe %Flow;>
397<!ATTLIST iframe
398 %coreattrs;
399 longdesc %URI; #IMPLIED
400 name NMTOKEN #IMPLIED
401 src %URI; #IMPLIED
402 frameborder (1|0) "1"
403 marginwidth %Pixels; #IMPLIED
404 marginheight %Pixels; #IMPLIED
405 scrolling (yes|no|auto) "auto"
406 align %ImgAlign; #IMPLIED
407 height %Length; #IMPLIED
408 width %Length; #IMPLIED
409 >
410
411<!-- alternate content container for non frame-based rendering -->
412
413<!ELEMENT noframes (body)>
414<!ATTLIST noframes
415 %attrs;
416 >
417
418<!--=================== Document Body ====================================-->
419
420<!ELEMENT body %Flow;>
421<!ATTLIST body
422 %attrs;
423 onload %Script; #IMPLIED
424 onunload %Script; #IMPLIED
425 background %URI; #IMPLIED
426 bgcolor %Color; #IMPLIED
427 text %Color; #IMPLIED
428 link %Color; #IMPLIED
429 vlink %Color; #IMPLIED
430 alink %Color; #IMPLIED
431 >
432
433<!ELEMENT div %Flow;> <!-- generic language/style container -->
434<!ATTLIST div
435 %attrs;
436 %TextAlign;
437 >
438
439<!--=================== Paragraphs =======================================-->
440
441<!ELEMENT p %Inline;>
442<!ATTLIST p
443 %attrs;
444 %TextAlign;
445 >
446
447<!--=================== Headings =========================================-->
448
449<!--
450 There are six levels of headings from h1 (the most important)
451 to h6 (the least important).
452-->
453
454<!ELEMENT h1 %Inline;>
455<!ATTLIST h1
456 %attrs;
457 %TextAlign;
458 >
459
460<!ELEMENT h2 %Inline;>
461<!ATTLIST h2
462 %attrs;
463 %TextAlign;
464 >
465
466<!ELEMENT h3 %Inline;>
467<!ATTLIST h3
468 %attrs;
469 %TextAlign;
470 >
471
472<!ELEMENT h4 %Inline;>
473<!ATTLIST h4
474 %attrs;
475 %TextAlign;
476 >
477
478<!ELEMENT h5 %Inline;>
479<!ATTLIST h5
480 %attrs;
481 %TextAlign;
482 >
483
484<!ELEMENT h6 %Inline;>
485<!ATTLIST h6
486 %attrs;
487 %TextAlign;
488 >
489
490<!--=================== Lists ============================================-->
491
492<!-- Unordered list bullet styles -->
493
494<!ENTITY % ULStyle "(disc|square|circle)">
495
496<!-- Unordered list -->
497
498<!ELEMENT ul (li)+>
499<!ATTLIST ul
500 %attrs;
501 type %ULStyle; #IMPLIED
502 compact (compact) #IMPLIED
503 >
504
505<!-- Ordered list numbering style
506
507 1 arabic numbers 1, 2, 3, ...
508 a lower alpha a, b, c, ...
509 A upper alpha A, B, C, ...
510 i lower roman i, ii, iii, ...
511 I upper roman I, II, III, ...
512
513 The style is applied to the sequence number which by default
514 is reset to 1 for the first list item in an ordered list.
515-->
516<!ENTITY % OLStyle "CDATA">
517
518<!-- Ordered (numbered) list -->
519
520<!ELEMENT ol (li)+>
521<!ATTLIST ol
522 %attrs;
523 type %OLStyle; #IMPLIED
524 compact (compact) #IMPLIED
525 start %Number; #IMPLIED
526 >
527
528<!-- single column list (DEPRECATED) -->
529<!ELEMENT menu (li)+>
530<!ATTLIST menu
531 %attrs;
532 compact (compact) #IMPLIED
533 >
534
535<!-- multiple column list (DEPRECATED) -->
536<!ELEMENT dir (li)+>
537<!ATTLIST dir
538 %attrs;
539 compact (compact) #IMPLIED
540 >
541
542<!-- LIStyle is constrained to: "(%ULStyle;|%OLStyle;)" -->
543<!ENTITY % LIStyle "CDATA">
544
545<!-- list item -->
546
547<!ELEMENT li %Flow;>
548<!ATTLIST li
549 %attrs;
550 type %LIStyle; #IMPLIED
551 value %Number; #IMPLIED
552 >
553
554<!-- definition lists - dt for term, dd for its definition -->
555
556<!ELEMENT dl (dt|dd)+>
557<!ATTLIST dl
558 %attrs;
559 compact (compact) #IMPLIED
560 >
561
562<!ELEMENT dt %Inline;>
563<!ATTLIST dt
564 %attrs;
565 >
566
567<!ELEMENT dd %Flow;>
568<!ATTLIST dd
569 %attrs;
570 >
571
572<!--=================== Address ==========================================-->
573
574<!-- information on author -->
575
576<!ELEMENT address %Inline;>
577<!ATTLIST address
578 %attrs;
579 >
580
581<!--=================== Horizontal Rule ==================================-->
582
583<!ELEMENT hr EMPTY>
584<!ATTLIST hr
585 %attrs;
586 align (left|center|right) #IMPLIED
587 noshade (noshade) #IMPLIED
588 size %Pixels; #IMPLIED
589 width %Length; #IMPLIED
590 >
591
592<!--=================== Preformatted Text ================================-->
593
594<!-- content is %Inline; excluding
595 "img|object|applet|big|small|sub|sup|font|basefont" -->
596
597<!ELEMENT pre %pre.content;>
598<!ATTLIST pre
599 %attrs;
600 width %Number; #IMPLIED
601 xml:space (preserve) #FIXED 'preserve'
602 >
603
604<!--=================== Block-like Quotes ================================-->
605
606<!ELEMENT blockquote %Flow;>
607<!ATTLIST blockquote
608 %attrs;
609 cite %URI; #IMPLIED
610 >
611
612<!--=================== Text alignment ===================================-->
613
614<!-- center content -->
615<!ELEMENT center %Flow;>
616<!ATTLIST center
617 %attrs;
618 >
619
620<!--=================== Inserted/Deleted Text ============================-->
621
622
623<!--
624 ins/del are allowed in block and inline content, but its
625 inappropriate to include block content within an ins element
626 occurring in inline content.
627-->
628<!ELEMENT ins %Flow;>
629<!ATTLIST ins
630 %attrs;
631 cite %URI; #IMPLIED
632 datetime %Datetime; #IMPLIED
633 >
634
635<!ELEMENT del %Flow;>
636<!ATTLIST del
637 %attrs;
638 cite %URI; #IMPLIED
639 datetime %Datetime; #IMPLIED
640 >
641
642<!--================== The Anchor Element ================================-->
643
644<!-- content is %Inline; except that anchors shouldn't be nested -->
645
646<!ELEMENT a %a.content;>
647<!ATTLIST a
648 %attrs;
649 charset %Charset; #IMPLIED
650 type %ContentType; #IMPLIED
651 name NMTOKEN #IMPLIED
652 href %URI; #IMPLIED
653 hreflang %LanguageCode; #IMPLIED
654 rel %LinkTypes; #IMPLIED
655 rev %LinkTypes; #IMPLIED
656 accesskey %Character; #IMPLIED
657 shape %Shape; "rect"
658 coords %Coords; #IMPLIED
659 tabindex %Number; #IMPLIED
660 onfocus %Script; #IMPLIED
661 onblur %Script; #IMPLIED
662 target %FrameTarget; #IMPLIED
663 >
664
665<!--===================== Inline Elements ================================-->
666
667<!ELEMENT span %Inline;> <!-- generic language/style container -->
668<!ATTLIST span
669 %attrs;
670 >
671
672<!ELEMENT bdo %Inline;> <!-- I18N BiDi over-ride -->
673<!ATTLIST bdo
674 %coreattrs;
675 %events;
676 lang %LanguageCode; #IMPLIED
677 xml:lang %LanguageCode; #IMPLIED
678 dir (ltr|rtl) #REQUIRED
679 >
680
681<!ELEMENT br EMPTY> <!-- forced line break -->
682<!ATTLIST br
683 %coreattrs;
684 clear (left|all|right|none) "none"
685 >
686
687<!ELEMENT em %Inline;> <!-- emphasis -->
688<!ATTLIST em %attrs;>
689
690<!ELEMENT strong %Inline;> <!-- strong emphasis -->
691<!ATTLIST strong %attrs;>
692
693<!ELEMENT dfn %Inline;> <!-- definitional -->
694<!ATTLIST dfn %attrs;>
695
696<!ELEMENT code %Inline;> <!-- program code -->
697<!ATTLIST code %attrs;>
698
699<!ELEMENT samp %Inline;> <!-- sample -->
700<!ATTLIST samp %attrs;>
701
702<!ELEMENT kbd %Inline;> <!-- something user would type -->
703<!ATTLIST kbd %attrs;>
704
705<!ELEMENT var %Inline;> <!-- variable -->
706<!ATTLIST var %attrs;>
707
708<!ELEMENT cite %Inline;> <!-- citation -->
709<!ATTLIST cite %attrs;>
710
711<!ELEMENT abbr %Inline;> <!-- abbreviation -->
712<!ATTLIST abbr %attrs;>
713
714<!ELEMENT acronym %Inline;> <!-- acronym -->
715<!ATTLIST acronym %attrs;>
716
717<!ELEMENT q %Inline;> <!-- inlined quote -->
718<!ATTLIST q
719 %attrs;
720 cite %URI; #IMPLIED
721 >
722
723<!ELEMENT sub %Inline;> <!-- subscript -->
724<!ATTLIST sub %attrs;>
725
726<!ELEMENT sup %Inline;> <!-- superscript -->
727<!ATTLIST sup %attrs;>
728
729<!ELEMENT tt %Inline;> <!-- fixed pitch font -->
730<!ATTLIST tt %attrs;>
731
732<!ELEMENT i %Inline;> <!-- italic font -->
733<!ATTLIST i %attrs;>
734
735<!ELEMENT b %Inline;> <!-- bold font -->
736<!ATTLIST b %attrs;>
737
738<!ELEMENT big %Inline;> <!-- bigger font -->
739<!ATTLIST big %attrs;>
740
741<!ELEMENT small %Inline;> <!-- smaller font -->
742<!ATTLIST small %attrs;>
743
744<!ELEMENT u %Inline;> <!-- underline -->
745<!ATTLIST u %attrs;>
746
747<!ELEMENT s %Inline;> <!-- strike-through -->
748<!ATTLIST s %attrs;>
749
750<!ELEMENT strike %Inline;> <!-- strike-through -->
751<!ATTLIST strike %attrs;>
752
753<!ELEMENT basefont EMPTY> <!-- base font size -->
754<!ATTLIST basefont
755 id ID #IMPLIED
756 size CDATA #REQUIRED
757 color %Color; #IMPLIED
758 face CDATA #IMPLIED
759 >
760
761<!ELEMENT font %Inline;> <!-- local change to font -->
762<!ATTLIST font
763 %coreattrs;
764 %i18n;
765 size CDATA #IMPLIED
766 color %Color; #IMPLIED
767 face CDATA #IMPLIED
768 >
769
770<!--==================== Object ======================================-->
771<!--
772 object is used to embed objects as part of HTML pages.
773 param elements should precede other content. Parameters
774 can also be expressed as attribute/value pairs on the
775 object element itself when brevity is desired.
776-->
777
778<!ELEMENT object (#PCDATA | param | %block; | form |%inline; | %misc;)*>
779<!ATTLIST object
780 %attrs;
781 declare (declare) #IMPLIED
782 classid %URI; #IMPLIED
783 codebase %URI; #IMPLIED
784 data %URI; #IMPLIED
785 type %ContentType; #IMPLIED
786 codetype %ContentType; #IMPLIED
787 archive %UriList; #IMPLIED
788 standby %Text; #IMPLIED
789 height %Length; #IMPLIED
790 width %Length; #IMPLIED
791 usemap %URI; #IMPLIED
792 name NMTOKEN #IMPLIED
793 tabindex %Number; #IMPLIED
794 align %ImgAlign; #IMPLIED
795 border %Pixels; #IMPLIED
796 hspace %Pixels; #IMPLIED
797 vspace %Pixels; #IMPLIED
798 >
799
800<!--
801 param is used to supply a named property value.
802 In XML it would seem natural to follow RDF and support an
803 abbreviated syntax where the param elements are replaced
804 by attribute value pairs on the object start tag.
805-->
806<!ELEMENT param EMPTY>
807<!ATTLIST param
808 id ID #IMPLIED
809 name CDATA #REQUIRED
810 value CDATA #IMPLIED
811 valuetype (data|ref|object) "data"
812 type %ContentType; #IMPLIED
813 >
814
815<!--=================== Java applet ==================================-->
816<!--
817 One of code or object attributes must be present.
818 Place param elements before other content.
819-->
820<!ELEMENT applet (#PCDATA | param | %block; | form | %inline; | %misc;)*>
821<!ATTLIST applet
822 %coreattrs;
823 codebase %URI; #IMPLIED
824 archive CDATA #IMPLIED
825 code CDATA #IMPLIED
826 object CDATA #IMPLIED
827 alt %Text; #IMPLIED
828 name NMTOKEN #IMPLIED
829 width %Length; #REQUIRED
830 height %Length; #REQUIRED
831 align %ImgAlign; #IMPLIED
832 hspace %Pixels; #IMPLIED
833 vspace %Pixels; #IMPLIED
834 >
835
836<!--=================== Images ===========================================-->
837
838<!--
839 To avoid accessibility problems for people who aren't
840 able to see the image, you should provide a text
841 description using the alt and longdesc attributes.
842 In addition, avoid the use of server-side image maps.
843-->
844
845<!ELEMENT img EMPTY>
846<!ATTLIST img
847 %attrs;
848 src %URI; #REQUIRED
849 alt %Text; #REQUIRED
850 name NMTOKEN #IMPLIED
851 longdesc %URI; #IMPLIED
852 height %Length; #IMPLIED
853 width %Length; #IMPLIED
854 usemap %URI; #IMPLIED
855 ismap (ismap) #IMPLIED
856 align %ImgAlign; #IMPLIED
857 border %Pixels; #IMPLIED
858 hspace %Pixels; #IMPLIED
859 vspace %Pixels; #IMPLIED
860 >
861
862<!-- usemap points to a map element which may be in this document
863 or an external document, although the latter is not widely supported -->
864
865<!--================== Client-side image maps ============================-->
866
867<!-- These can be placed in the same document or grouped in a
868 separate document although this isn't yet widely supported -->
869
870<!ELEMENT map ((%block; | form | %misc;)+ | area+)>
871<!ATTLIST map
872 %i18n;
873 %events;
874 id ID #REQUIRED
875 class CDATA #IMPLIED
876 style %StyleSheet; #IMPLIED
877 title %Text; #IMPLIED
878 name NMTOKEN #IMPLIED
879 >
880
881<!ELEMENT area EMPTY>
882<!ATTLIST area
883 %attrs;
884 shape %Shape; "rect"
885 coords %Coords; #IMPLIED
886 href %URI; #IMPLIED
887 nohref (nohref) #IMPLIED
888 alt %Text; #REQUIRED
889 tabindex %Number; #IMPLIED
890 accesskey %Character; #IMPLIED
891 onfocus %Script; #IMPLIED
892 onblur %Script; #IMPLIED
893 target %FrameTarget; #IMPLIED
894 >
895
896<!--================ Forms ===============================================-->
897
898<!ELEMENT form %form.content;> <!-- forms shouldn't be nested -->
899
900<!ATTLIST form
901 %attrs;
902 action %URI; #REQUIRED
903 method (get|post) "get"
904 name NMTOKEN #IMPLIED
905 enctype %ContentType; "application/x-www-form-urlencoded"
906 onsubmit %Script; #IMPLIED
907 onreset %Script; #IMPLIED
908 accept %ContentTypes; #IMPLIED
909 accept-charset %Charsets; #IMPLIED
910 target %FrameTarget; #IMPLIED
911 >
912
913<!--
914 Each label must not contain more than ONE field
915 Label elements shouldn't be nested.
916-->
917<!ELEMENT label %Inline;>
918<!ATTLIST label
919 %attrs;
920 for IDREF #IMPLIED
921 accesskey %Character; #IMPLIED
922 onfocus %Script; #IMPLIED
923 onblur %Script; #IMPLIED
924 >
925
926<!ENTITY % InputType
927 "(text | password | checkbox |
928 radio | submit | reset |
929 file | hidden | image | button)"
930 >
931
932<!-- the name attribute is required for all but submit & reset -->
933
934<!ELEMENT input EMPTY> <!-- form control -->
935<!ATTLIST input
936 %attrs;
937 type %InputType; "text"
938 name CDATA #IMPLIED
939 value CDATA #IMPLIED
940 checked (checked) #IMPLIED
941 disabled (disabled) #IMPLIED
942 readonly (readonly) #IMPLIED
943 size CDATA #IMPLIED
944 maxlength %Number; #IMPLIED
945 src %URI; #IMPLIED
946 alt CDATA #IMPLIED
947 usemap %URI; #IMPLIED
948 tabindex %Number; #IMPLIED
949 accesskey %Character; #IMPLIED
950 onfocus %Script; #IMPLIED
951 onblur %Script; #IMPLIED
952 onselect %Script; #IMPLIED
953 onchange %Script; #IMPLIED
954 accept %ContentTypes; #IMPLIED
955 align %ImgAlign; #IMPLIED
956 >
957
958<!ELEMENT select (optgroup|option)+> <!-- option selector -->
959<!ATTLIST select
960 %attrs;
961 name CDATA #IMPLIED
962 size %Number; #IMPLIED
963 multiple (multiple) #IMPLIED
964 disabled (disabled) #IMPLIED
965 tabindex %Number; #IMPLIED
966 onfocus %Script; #IMPLIED
967 onblur %Script; #IMPLIED
968 onchange %Script; #IMPLIED
969 >
970
971<!ELEMENT optgroup (option)+> <!-- option group -->
972<!ATTLIST optgroup
973 %attrs;
974 disabled (disabled) #IMPLIED
975 label %Text; #REQUIRED
976 >
977
978<!ELEMENT option (#PCDATA)> <!-- selectable choice -->
979<!ATTLIST option
980 %attrs;
981 selected (selected) #IMPLIED
982 disabled (disabled) #IMPLIED
983 label %Text; #IMPLIED
984 value CDATA #IMPLIED
985 >
986
987<!ELEMENT textarea (#PCDATA)> <!-- multi-line text field -->
988<!ATTLIST textarea
989 %attrs;
990 name CDATA #IMPLIED
991 rows %Number; #REQUIRED
992 cols %Number; #REQUIRED
993 disabled (disabled) #IMPLIED
994 readonly (readonly) #IMPLIED
995 tabindex %Number; #IMPLIED
996 accesskey %Character; #IMPLIED
997 onfocus %Script; #IMPLIED
998 onblur %Script; #IMPLIED
999 onselect %Script; #IMPLIED
1000 onchange %Script; #IMPLIED
1001 >
1002
1003<!--
1004 The fieldset element is used to group form fields.
1005 Only one legend element should occur in the content
1006 and if present should only be preceded by whitespace.
1007-->
1008<!ELEMENT fieldset (#PCDATA | legend | %block; | form | %inline; | %misc;)*>
1009<!ATTLIST fieldset
1010 %attrs;
1011 >
1012
1013<!ENTITY % LAlign "(top|bottom|left|right)">
1014
1015<!ELEMENT legend %Inline;> <!-- fieldset label -->
1016<!ATTLIST legend
1017 %attrs;
1018 accesskey %Character; #IMPLIED
1019 align %LAlign; #IMPLIED
1020 >
1021
1022<!--
1023 Content is %Flow; excluding a, form, form controls, iframe
1024-->
1025<!ELEMENT button %button.content;> <!-- push button -->
1026<!ATTLIST button
1027 %attrs;
1028 name CDATA #IMPLIED
1029 value CDATA #IMPLIED
1030 type (button|submit|reset) "submit"
1031 disabled (disabled) #IMPLIED
1032 tabindex %Number; #IMPLIED
1033 accesskey %Character; #IMPLIED
1034 onfocus %Script; #IMPLIED
1035 onblur %Script; #IMPLIED
1036 >
1037
1038<!-- single-line text input control (DEPRECATED) -->
1039<!ELEMENT isindex EMPTY>
1040<!ATTLIST isindex
1041 %coreattrs;
1042 %i18n;
1043 prompt %Text; #IMPLIED
1044 >
1045
1046<!--======================= Tables =======================================-->
1047
1048<!-- Derived from IETF HTML table standard, see [RFC1942] -->
1049
1050<!--
1051 The border attribute sets the thickness of the frame around the
1052 table. The default units are screen pixels.
1053
1054 The frame attribute specifies which parts of the frame around
1055 the table should be rendered. The values are not the same as
1056 CALS to avoid a name clash with the valign attribute.
1057-->
1058<!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
1059
1060<!--
1061 The rules attribute defines which rules to draw between cells:
1062
1063 If rules is absent then assume:
1064 "none" if border is absent or border="0" otherwise "all"
1065-->
1066
1067<!ENTITY % TRules "(none | groups | rows | cols | all)">
1068
1069<!-- horizontal placement of table relative to document -->
1070<!ENTITY % TAlign "(left|center|right)">
1071
1072<!-- horizontal alignment attributes for cell contents
1073
1074 char alignment char, e.g. char=":"
1075 charoff offset for alignment char
1076-->
1077<!ENTITY % cellhalign
1078 "align (left|center|right|justify|char) #IMPLIED
1079 char %Character; #IMPLIED
1080 charoff %Length; #IMPLIED"
1081 >
1082
1083<!-- vertical alignment attributes for cell contents -->
1084<!ENTITY % cellvalign
1085 "valign (top|middle|bottom|baseline) #IMPLIED"
1086 >
1087
1088<!ELEMENT table
1089 (caption?, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+))>
1090<!ELEMENT caption %Inline;>
1091<!ELEMENT thead (tr)+>
1092<!ELEMENT tfoot (tr)+>
1093<!ELEMENT tbody (tr)+>
1094<!ELEMENT colgroup (col)*>
1095<!ELEMENT col EMPTY>
1096<!ELEMENT tr (th|td)+>
1097<!ELEMENT th %Flow;>
1098<!ELEMENT td %Flow;>
1099
1100<!ATTLIST table
1101 %attrs;
1102 summary %Text; #IMPLIED
1103 width %Length; #IMPLIED
1104 border %Pixels; #IMPLIED
1105 frame %TFrame; #IMPLIED
1106 rules %TRules; #IMPLIED
1107 cellspacing %Length; #IMPLIED
1108 cellpadding %Length; #IMPLIED
1109 align %TAlign; #IMPLIED
1110 bgcolor %Color; #IMPLIED
1111 >
1112
1113<!ENTITY % CAlign "(top|bottom|left|right)">
1114
1115<!ATTLIST caption
1116 %attrs;
1117 align %CAlign; #IMPLIED
1118 >
1119
1120<!--
1121colgroup groups a set of col elements. It allows you to group
1122several semantically related columns together.
1123-->
1124<!ATTLIST colgroup
1125 %attrs;
1126 span %Number; "1"
1127 width %MultiLength; #IMPLIED
1128 %cellhalign;
1129 %cellvalign;
1130 >
1131
1132<!--
1133 col elements define the alignment properties for cells in
1134 one or more columns.
1135
1136 The width attribute specifies the width of the columns, e.g.
1137
1138 width=64 width in screen pixels
1139 width=0.5* relative width of 0.5
1140
1141 The span attribute causes the attributes of one
1142 col element to apply to more than one column.
1143-->
1144<!ATTLIST col
1145 %attrs;
1146 span %Number; "1"
1147 width %MultiLength; #IMPLIED
1148 %cellhalign;
1149 %cellvalign;
1150 >
1151
1152<!--
1153 Use thead to duplicate headers when breaking table
1154 across page boundaries, or for static headers when
1155 tbody sections are rendered in scrolling panel.
1156
1157 Use tfoot to duplicate footers when breaking table
1158 across page boundaries, or for static footers when
1159 tbody sections are rendered in scrolling panel.
1160
1161 Use multiple tbody sections when rules are needed
1162 between groups of table rows.
1163-->
1164<!ATTLIST thead
1165 %attrs;
1166 %cellhalign;
1167 %cellvalign;
1168 >
1169
1170<!ATTLIST tfoot
1171 %attrs;
1172 %cellhalign;
1173 %cellvalign;
1174 >
1175
1176<!ATTLIST tbody
1177 %attrs;
1178 %cellhalign;
1179 %cellvalign;
1180 >
1181
1182<!ATTLIST tr
1183 %attrs;
1184 %cellhalign;
1185 %cellvalign;
1186 bgcolor %Color; #IMPLIED
1187 >
1188
1189<!-- Scope is simpler than headers attribute for common tables -->
1190<!ENTITY % Scope "(row|col|rowgroup|colgroup)">
1191
1192<!-- th is for headers, td for data and for cells acting as both -->
1193
1194<!ATTLIST th
1195 %attrs;
1196 abbr %Text; #IMPLIED
1197 axis CDATA #IMPLIED
1198 headers IDREFS #IMPLIED
1199 scope %Scope; #IMPLIED
1200 rowspan %Number; "1"
1201 colspan %Number; "1"
1202 %cellhalign;
1203 %cellvalign;
1204 nowrap (nowrap) #IMPLIED
1205 bgcolor %Color; #IMPLIED
1206 width %Pixels; #IMPLIED
1207 height %Pixels; #IMPLIED
1208 >
1209
1210<!ATTLIST td
1211 %attrs;
1212 abbr %Text; #IMPLIED
1213 axis CDATA #IMPLIED
1214 headers IDREFS #IMPLIED
1215 scope %Scope; #IMPLIED
1216 rowspan %Number; "1"
1217 colspan %Number; "1"
1218 %cellhalign;
1219 %cellvalign;
1220 nowrap (nowrap) #IMPLIED
1221 bgcolor %Color; #IMPLIED
1222 width %Pixels; #IMPLIED
1223 height %Pixels; #IMPLIED
1224 >
1225