dom/tests/mochitest/dom-level1-core/files/xhtml1-transitional.dtd

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

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

mercurial