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