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