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