dom/tests/mochitest/dom-level2-html/files/xhtml1-strict.dtd

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/dom/tests/mochitest/dom-level2-html/files/xhtml1-strict.dtd	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,978 @@
     1.4 +<!--
     1.5 +   Extensible HTML version 1.0 Strict DTD
     1.6 +
     1.7 +   This is the same as HTML 4 Strict except for
     1.8 +   changes due to the differences between XML and SGML.
     1.9 +
    1.10 +   Namespace = http://www.w3.org/1999/xhtml
    1.11 +
    1.12 +   For further information, see: http://www.w3.org/TR/xhtml1
    1.13 +
    1.14 +   Copyright (c) 1998-2002 W3C (MIT, INRIA, Keio),
    1.15 +   All Rights Reserved. 
    1.16 +
    1.17 +   This DTD module is identified by the PUBLIC and SYSTEM identifiers:
    1.18 +
    1.19 +   PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    1.20 +   SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
    1.21 +
    1.22 +   $Revision: 1.1 $
    1.23 +   $Date: 2008/03/29 19:06:30 $
    1.24 +
    1.25 +-->
    1.26 +
    1.27 +<!--================ Character mnemonic entities =========================-->
    1.28 +
    1.29 +<!ENTITY % HTMLlat1 PUBLIC
    1.30 +   "-//W3C//ENTITIES Latin 1 for XHTML//EN"
    1.31 +   "xhtml-lat1.ent">
    1.32 +%HTMLlat1;
    1.33 +
    1.34 +<!ENTITY % HTMLsymbol PUBLIC
    1.35 +   "-//W3C//ENTITIES Symbols for XHTML//EN"
    1.36 +   "xhtml-symbol.ent">
    1.37 +%HTMLsymbol;
    1.38 +
    1.39 +<!ENTITY % HTMLspecial PUBLIC
    1.40 +   "-//W3C//ENTITIES Special for XHTML//EN"
    1.41 +   "xhtml-special.ent">
    1.42 +%HTMLspecial;
    1.43 +
    1.44 +<!--================== Imported Names ====================================-->
    1.45 +
    1.46 +<!ENTITY % ContentType "CDATA">
    1.47 +    <!-- media type, as per [RFC2045] -->
    1.48 +
    1.49 +<!ENTITY % ContentTypes "CDATA">
    1.50 +    <!-- comma-separated list of media types, as per [RFC2045] -->
    1.51 +
    1.52 +<!ENTITY % Charset "CDATA">
    1.53 +    <!-- a character encoding, as per [RFC2045] -->
    1.54 +
    1.55 +<!ENTITY % Charsets "CDATA">
    1.56 +    <!-- a space separated list of character encodings, as per [RFC2045] -->
    1.57 +
    1.58 +<!ENTITY % LanguageCode "NMTOKEN">
    1.59 +    <!-- a language code, as per [RFC3066] -->
    1.60 +
    1.61 +<!ENTITY % Character "CDATA">
    1.62 +    <!-- a single character, as per section 2.2 of [XML] -->
    1.63 +
    1.64 +<!ENTITY % Number "CDATA">
    1.65 +    <!-- one or more digits -->
    1.66 +
    1.67 +<!ENTITY % LinkTypes "CDATA">
    1.68 +    <!-- space-separated list of link types -->
    1.69 +
    1.70 +<!ENTITY % MediaDesc "CDATA">
    1.71 +    <!-- single or comma-separated list of media descriptors -->
    1.72 +
    1.73 +<!ENTITY % URI "CDATA">
    1.74 +    <!-- a Uniform Resource Identifier, see [RFC2396] -->
    1.75 +
    1.76 +<!ENTITY % UriList "CDATA">
    1.77 +    <!-- a space separated list of Uniform Resource Identifiers -->
    1.78 +
    1.79 +<!ENTITY % Datetime "CDATA">
    1.80 +    <!-- date and time information. ISO date format -->
    1.81 +
    1.82 +<!ENTITY % Script "CDATA">
    1.83 +    <!-- script expression -->
    1.84 +
    1.85 +<!ENTITY % StyleSheet "CDATA">
    1.86 +    <!-- style sheet data -->
    1.87 +
    1.88 +<!ENTITY % Text "CDATA">
    1.89 +    <!-- used for titles etc. -->
    1.90 +
    1.91 +<!ENTITY % Length "CDATA">
    1.92 +    <!-- nn for pixels or nn% for percentage length -->
    1.93 +
    1.94 +<!ENTITY % MultiLength "CDATA">
    1.95 +    <!-- pixel, percentage, or relative -->
    1.96 +
    1.97 +<!ENTITY % Pixels "CDATA">
    1.98 +    <!-- integer representing length in pixels -->
    1.99 +
   1.100 +<!-- these are used for image maps -->
   1.101 +
   1.102 +<!ENTITY % Shape "(rect|circle|poly|default)">
   1.103 +
   1.104 +<!ENTITY % Coords "CDATA">
   1.105 +    <!-- comma separated list of lengths -->
   1.106 +
   1.107 +<!--=================== Generic Attributes ===============================-->
   1.108 +
   1.109 +<!-- core attributes common to most elements
   1.110 +  id       document-wide unique id
   1.111 +  class    space separated list of classes
   1.112 +  style    associated style info
   1.113 +  title    advisory title/amplification
   1.114 +-->
   1.115 +<!ENTITY % coreattrs
   1.116 + "id          ID             #IMPLIED
   1.117 +  class       CDATA          #IMPLIED
   1.118 +  style       %StyleSheet;   #IMPLIED
   1.119 +  title       %Text;         #IMPLIED"
   1.120 +  >
   1.121 +
   1.122 +<!-- internationalization attributes
   1.123 +  lang        language code (backwards compatible)
   1.124 +  xml:lang    language code (as per XML 1.0 spec)
   1.125 +  dir         direction for weak/neutral text
   1.126 +-->
   1.127 +<!ENTITY % i18n
   1.128 + "lang        %LanguageCode; #IMPLIED
   1.129 +  xml:lang    %LanguageCode; #IMPLIED
   1.130 +  dir         (ltr|rtl)      #IMPLIED"
   1.131 +  >
   1.132 +
   1.133 +<!-- attributes for common UI events
   1.134 +  onclick     a pointer button was clicked
   1.135 +  ondblclick  a pointer button was double clicked
   1.136 +  onmousedown a pointer button was pressed down
   1.137 +  onmouseup   a pointer button was released
   1.138 +  onmousemove a pointer was moved onto the element
   1.139 +  onmouseout  a pointer was moved away from the element
   1.140 +  onkeypress  a key was pressed and released
   1.141 +  onkeydown   a key was pressed down
   1.142 +  onkeyup     a key was released
   1.143 +-->
   1.144 +<!ENTITY % events
   1.145 + "onclick     %Script;       #IMPLIED
   1.146 +  ondblclick  %Script;       #IMPLIED
   1.147 +  onmousedown %Script;       #IMPLIED
   1.148 +  onmouseup   %Script;       #IMPLIED
   1.149 +  onmouseover %Script;       #IMPLIED
   1.150 +  onmousemove %Script;       #IMPLIED
   1.151 +  onmouseout  %Script;       #IMPLIED
   1.152 +  onkeypress  %Script;       #IMPLIED
   1.153 +  onkeydown   %Script;       #IMPLIED
   1.154 +  onkeyup     %Script;       #IMPLIED"
   1.155 +  >
   1.156 +
   1.157 +<!-- attributes for elements that can get the focus
   1.158 +  accesskey   accessibility key character
   1.159 +  tabindex    position in tabbing order
   1.160 +  onfocus     the element got the focus
   1.161 +  onblur      the element lost the focus
   1.162 +-->
   1.163 +<!ENTITY % focus
   1.164 + "accesskey   %Character;    #IMPLIED
   1.165 +  tabindex    %Number;       #IMPLIED
   1.166 +  onfocus     %Script;       #IMPLIED
   1.167 +  onblur      %Script;       #IMPLIED"
   1.168 +  >
   1.169 +
   1.170 +<!ENTITY % attrs "%coreattrs; %i18n; %events;">
   1.171 +
   1.172 +<!--=================== Text Elements ====================================-->
   1.173 +
   1.174 +<!ENTITY % special.pre
   1.175 +   "br | span | bdo | map">
   1.176 +
   1.177 +
   1.178 +<!ENTITY % special
   1.179 +   "%special.pre; | object | img ">
   1.180 +
   1.181 +<!ENTITY % fontstyle "tt | i | b | big | small ">
   1.182 +
   1.183 +<!ENTITY % phrase "em | strong | dfn | code | q |
   1.184 +                   samp | kbd | var | cite | abbr | acronym | sub | sup ">
   1.185 +
   1.186 +<!ENTITY % inline.forms "input | select | textarea | label | button">
   1.187 +
   1.188 +<!-- these can occur at block or inline level -->
   1.189 +<!ENTITY % misc.inline "ins | del | script">
   1.190 +
   1.191 +<!-- these can only occur at block level -->
   1.192 +<!ENTITY % misc "noscript | %misc.inline;">
   1.193 +
   1.194 +<!ENTITY % inline "a | %special; | %fontstyle; | %phrase; | %inline.forms;">
   1.195 +
   1.196 +<!-- %Inline; covers inline or "text-level" elements -->
   1.197 +<!ENTITY % Inline "(#PCDATA | %inline; | %misc.inline;)*">
   1.198 +
   1.199 +<!--================== Block level elements ==============================-->
   1.200 +
   1.201 +<!ENTITY % heading "h1|h2|h3|h4|h5|h6">
   1.202 +<!ENTITY % lists "ul | ol | dl">
   1.203 +<!ENTITY % blocktext "pre | hr | blockquote | address">
   1.204 +
   1.205 +<!ENTITY % block
   1.206 +     "p | %heading; | div | %lists; | %blocktext; | fieldset | table">
   1.207 +
   1.208 +<!ENTITY % Block "(%block; | form | %misc;)*">
   1.209 +
   1.210 +<!-- %Flow; mixes block and inline and is used for list items etc. -->
   1.211 +<!ENTITY % Flow "(#PCDATA | %block; | form | %inline; | %misc;)*">
   1.212 +
   1.213 +<!--================== Content models for exclusions =====================-->
   1.214 +
   1.215 +<!-- a elements use %Inline; excluding a -->
   1.216 +
   1.217 +<!ENTITY % a.content
   1.218 +   "(#PCDATA | %special; | %fontstyle; | %phrase; | %inline.forms; | %misc.inline;)*">
   1.219 +
   1.220 +<!-- pre uses %Inline excluding big, small, sup or sup -->
   1.221 +
   1.222 +<!ENTITY % pre.content
   1.223 +   "(#PCDATA | a | %fontstyle; | %phrase; | %special.pre; | %misc.inline;
   1.224 +      | %inline.forms;)*">
   1.225 +
   1.226 +<!-- form uses %Block; excluding form -->
   1.227 +
   1.228 +<!ENTITY % form.content "(%block; | %misc;)*">
   1.229 +
   1.230 +<!-- button uses %Flow; but excludes a, form and form controls -->
   1.231 +
   1.232 +<!ENTITY % button.content
   1.233 +   "(#PCDATA | p | %heading; | div | %lists; | %blocktext; |
   1.234 +    table | %special; | %fontstyle; | %phrase; | %misc;)*">
   1.235 +
   1.236 +<!--================ Document Structure ==================================-->
   1.237 +
   1.238 +<!-- the namespace URI designates the document profile -->
   1.239 +
   1.240 +<!ELEMENT html (head, body)>
   1.241 +<!ATTLIST html
   1.242 +  %i18n;
   1.243 +  id          ID             #IMPLIED
   1.244 +  xmlns       %URI;          #FIXED 'http://www.w3.org/1999/xhtml'
   1.245 +  >
   1.246 +
   1.247 +<!--================ Document Head =======================================-->
   1.248 +
   1.249 +<!ENTITY % head.misc "(script|style|meta|link|object)*">
   1.250 +
   1.251 +<!-- content model is %head.misc; combined with a single
   1.252 +     title and an optional base element in any order -->
   1.253 +
   1.254 +<!ELEMENT head (%head.misc;,
   1.255 +     ((title, %head.misc;, (base, %head.misc;)?) |
   1.256 +      (base, %head.misc;, (title, %head.misc;))))>
   1.257 +
   1.258 +<!ATTLIST head
   1.259 +  %i18n;
   1.260 +  id          ID             #IMPLIED
   1.261 +  profile     %URI;          #IMPLIED
   1.262 +  >
   1.263 +
   1.264 +<!-- The title element is not considered part of the flow of text.
   1.265 +       It should be displayed, for example as the page header or
   1.266 +       window title. Exactly one title is required per document.
   1.267 +    -->
   1.268 +<!ELEMENT title (#PCDATA)>
   1.269 +<!ATTLIST title 
   1.270 +  %i18n;
   1.271 +  id          ID             #IMPLIED
   1.272 +  >
   1.273 +
   1.274 +<!-- document base URI -->
   1.275 +
   1.276 +<!ELEMENT base EMPTY>
   1.277 +<!ATTLIST base
   1.278 +  href        %URI;          #REQUIRED
   1.279 +  id          ID             #IMPLIED
   1.280 +  >
   1.281 +
   1.282 +<!-- generic metainformation -->
   1.283 +<!ELEMENT meta EMPTY>
   1.284 +<!ATTLIST meta
   1.285 +  %i18n;
   1.286 +  id          ID             #IMPLIED
   1.287 +  http-equiv  CDATA          #IMPLIED
   1.288 +  name        CDATA          #IMPLIED
   1.289 +  content     CDATA          #REQUIRED
   1.290 +  scheme      CDATA          #IMPLIED
   1.291 +  >
   1.292 +
   1.293 +<!--
   1.294 +  Relationship values can be used in principle:
   1.295 +
   1.296 +   a) for document specific toolbars/menus when used
   1.297 +      with the link element in document head e.g.
   1.298 +        start, contents, previous, next, index, end, help
   1.299 +   b) to link to a separate style sheet (rel="stylesheet")
   1.300 +   c) to make a link to a script (rel="script")
   1.301 +   d) by stylesheets to control how collections of
   1.302 +      html nodes are rendered into printed documents
   1.303 +   e) to make a link to a printable version of this document
   1.304 +      e.g. a PostScript or PDF version (rel="alternate" media="print")
   1.305 +-->
   1.306 +
   1.307 +<!ELEMENT link EMPTY>
   1.308 +<!ATTLIST link
   1.309 +  %attrs;
   1.310 +  charset     %Charset;      #IMPLIED
   1.311 +  href        %URI;          #IMPLIED
   1.312 +  hreflang    %LanguageCode; #IMPLIED
   1.313 +  type        %ContentType;  #IMPLIED
   1.314 +  rel         %LinkTypes;    #IMPLIED
   1.315 +  rev         %LinkTypes;    #IMPLIED
   1.316 +  media       %MediaDesc;    #IMPLIED
   1.317 +  >
   1.318 +
   1.319 +<!-- style info, which may include CDATA sections -->
   1.320 +<!ELEMENT style (#PCDATA)>
   1.321 +<!ATTLIST style
   1.322 +  %i18n;
   1.323 +  id          ID             #IMPLIED
   1.324 +  type        %ContentType;  #REQUIRED
   1.325 +  media       %MediaDesc;    #IMPLIED
   1.326 +  title       %Text;         #IMPLIED
   1.327 +  xml:space   (preserve)     #FIXED 'preserve'
   1.328 +  >
   1.329 +
   1.330 +<!-- script statements, which may include CDATA sections -->
   1.331 +<!ELEMENT script (#PCDATA)>
   1.332 +<!ATTLIST script
   1.333 +  id          ID             #IMPLIED
   1.334 +  charset     %Charset;      #IMPLIED
   1.335 +  type        %ContentType;  #REQUIRED
   1.336 +  src         %URI;          #IMPLIED
   1.337 +  defer       (defer)        #IMPLIED
   1.338 +  xml:space   (preserve)     #FIXED 'preserve'
   1.339 +  >
   1.340 +
   1.341 +<!-- alternate content container for non script-based rendering -->
   1.342 +
   1.343 +<!ELEMENT noscript %Block;>
   1.344 +<!ATTLIST noscript
   1.345 +  %attrs;
   1.346 +  >
   1.347 +
   1.348 +<!--=================== Document Body ====================================-->
   1.349 +
   1.350 +<!ELEMENT body %Block;>
   1.351 +<!ATTLIST body
   1.352 +  %attrs;
   1.353 +  onload          %Script;   #IMPLIED
   1.354 +  onunload        %Script;   #IMPLIED
   1.355 +  >
   1.356 +
   1.357 +<!ELEMENT div %Flow;>  <!-- generic language/style container -->
   1.358 +<!ATTLIST div
   1.359 +  %attrs;
   1.360 +  >
   1.361 +
   1.362 +<!--=================== Paragraphs =======================================-->
   1.363 +
   1.364 +<!ELEMENT p %Inline;>
   1.365 +<!ATTLIST p
   1.366 +  %attrs;
   1.367 +  >
   1.368 +
   1.369 +<!--=================== Headings =========================================-->
   1.370 +
   1.371 +<!--
   1.372 +  There are six levels of headings from h1 (the most important)
   1.373 +  to h6 (the least important).
   1.374 +-->
   1.375 +
   1.376 +<!ELEMENT h1  %Inline;>
   1.377 +<!ATTLIST h1
   1.378 +   %attrs;
   1.379 +   >
   1.380 +
   1.381 +<!ELEMENT h2 %Inline;>
   1.382 +<!ATTLIST h2
   1.383 +   %attrs;
   1.384 +   >
   1.385 +
   1.386 +<!ELEMENT h3 %Inline;>
   1.387 +<!ATTLIST h3
   1.388 +   %attrs;
   1.389 +   >
   1.390 +
   1.391 +<!ELEMENT h4 %Inline;>
   1.392 +<!ATTLIST h4
   1.393 +   %attrs;
   1.394 +   >
   1.395 +
   1.396 +<!ELEMENT h5 %Inline;>
   1.397 +<!ATTLIST h5
   1.398 +   %attrs;
   1.399 +   >
   1.400 +
   1.401 +<!ELEMENT h6 %Inline;>
   1.402 +<!ATTLIST h6
   1.403 +   %attrs;
   1.404 +   >
   1.405 +
   1.406 +<!--=================== Lists ============================================-->
   1.407 +
   1.408 +<!-- Unordered list -->
   1.409 +
   1.410 +<!ELEMENT ul (li)+>
   1.411 +<!ATTLIST ul
   1.412 +  %attrs;
   1.413 +  >
   1.414 +
   1.415 +<!-- Ordered (numbered) list -->
   1.416 +
   1.417 +<!ELEMENT ol (li)+>
   1.418 +<!ATTLIST ol
   1.419 +  %attrs;
   1.420 +  >
   1.421 +
   1.422 +<!-- list item -->
   1.423 +
   1.424 +<!ELEMENT li %Flow;>
   1.425 +<!ATTLIST li
   1.426 +  %attrs;
   1.427 +  >
   1.428 +
   1.429 +<!-- definition lists - dt for term, dd for its definition -->
   1.430 +
   1.431 +<!ELEMENT dl (dt|dd)+>
   1.432 +<!ATTLIST dl
   1.433 +  %attrs;
   1.434 +  >
   1.435 +
   1.436 +<!ELEMENT dt %Inline;>
   1.437 +<!ATTLIST dt
   1.438 +  %attrs;
   1.439 +  >
   1.440 +
   1.441 +<!ELEMENT dd %Flow;>
   1.442 +<!ATTLIST dd
   1.443 +  %attrs;
   1.444 +  >
   1.445 +
   1.446 +<!--=================== Address ==========================================-->
   1.447 +
   1.448 +<!-- information on author -->
   1.449 +
   1.450 +<!ELEMENT address %Inline;>
   1.451 +<!ATTLIST address
   1.452 +  %attrs;
   1.453 +  >
   1.454 +
   1.455 +<!--=================== Horizontal Rule ==================================-->
   1.456 +
   1.457 +<!ELEMENT hr EMPTY>
   1.458 +<!ATTLIST hr
   1.459 +  %attrs;
   1.460 +  >
   1.461 +
   1.462 +<!--=================== Preformatted Text ================================-->
   1.463 +
   1.464 +<!-- content is %Inline; excluding "img|object|big|small|sub|sup" -->
   1.465 +
   1.466 +<!ELEMENT pre %pre.content;>
   1.467 +<!ATTLIST pre
   1.468 +  %attrs;
   1.469 +  xml:space (preserve) #FIXED 'preserve'
   1.470 +  >
   1.471 +
   1.472 +<!--=================== Block-like Quotes ================================-->
   1.473 +
   1.474 +<!ELEMENT blockquote %Block;>
   1.475 +<!ATTLIST blockquote
   1.476 +  %attrs;
   1.477 +  cite        %URI;          #IMPLIED
   1.478 +  >
   1.479 +
   1.480 +<!--=================== Inserted/Deleted Text ============================-->
   1.481 +
   1.482 +<!--
   1.483 +  ins/del are allowed in block and inline content, but its
   1.484 +  inappropriate to include block content within an ins element
   1.485 +  occurring in inline content.
   1.486 +-->
   1.487 +<!ELEMENT ins %Flow;>
   1.488 +<!ATTLIST ins
   1.489 +  %attrs;
   1.490 +  cite        %URI;          #IMPLIED
   1.491 +  datetime    %Datetime;     #IMPLIED
   1.492 +  >
   1.493 +
   1.494 +<!ELEMENT del %Flow;>
   1.495 +<!ATTLIST del
   1.496 +  %attrs;
   1.497 +  cite        %URI;          #IMPLIED
   1.498 +  datetime    %Datetime;     #IMPLIED
   1.499 +  >
   1.500 +
   1.501 +<!--================== The Anchor Element ================================-->
   1.502 +
   1.503 +<!-- content is %Inline; except that anchors shouldn't be nested -->
   1.504 +
   1.505 +<!ELEMENT a %a.content;>
   1.506 +<!ATTLIST a
   1.507 +  %attrs;
   1.508 +  %focus;
   1.509 +  charset     %Charset;      #IMPLIED
   1.510 +  type        %ContentType;  #IMPLIED
   1.511 +  name        NMTOKEN        #IMPLIED
   1.512 +  href        %URI;          #IMPLIED
   1.513 +  hreflang    %LanguageCode; #IMPLIED
   1.514 +  rel         %LinkTypes;    #IMPLIED
   1.515 +  rev         %LinkTypes;    #IMPLIED
   1.516 +  shape       %Shape;        "rect"
   1.517 +  coords      %Coords;       #IMPLIED
   1.518 +  >
   1.519 +
   1.520 +<!--===================== Inline Elements ================================-->
   1.521 +
   1.522 +<!ELEMENT span %Inline;> <!-- generic language/style container -->
   1.523 +<!ATTLIST span
   1.524 +  %attrs;
   1.525 +  >
   1.526 +
   1.527 +<!ELEMENT bdo %Inline;>  <!-- I18N BiDi over-ride -->
   1.528 +<!ATTLIST bdo
   1.529 +  %coreattrs;
   1.530 +  %events;
   1.531 +  lang        %LanguageCode; #IMPLIED
   1.532 +  xml:lang    %LanguageCode; #IMPLIED
   1.533 +  dir         (ltr|rtl)      #REQUIRED
   1.534 +  >
   1.535 +
   1.536 +<!ELEMENT br EMPTY>   <!-- forced line break -->
   1.537 +<!ATTLIST br
   1.538 +  %coreattrs;
   1.539 +  >
   1.540 +
   1.541 +<!ELEMENT em %Inline;>   <!-- emphasis -->
   1.542 +<!ATTLIST em %attrs;>
   1.543 +
   1.544 +<!ELEMENT strong %Inline;>   <!-- strong emphasis -->
   1.545 +<!ATTLIST strong %attrs;>
   1.546 +
   1.547 +<!ELEMENT dfn %Inline;>   <!-- definitional -->
   1.548 +<!ATTLIST dfn %attrs;>
   1.549 +
   1.550 +<!ELEMENT code %Inline;>   <!-- program code -->
   1.551 +<!ATTLIST code %attrs;>
   1.552 +
   1.553 +<!ELEMENT samp %Inline;>   <!-- sample -->
   1.554 +<!ATTLIST samp %attrs;>
   1.555 +
   1.556 +<!ELEMENT kbd %Inline;>  <!-- something user would type -->
   1.557 +<!ATTLIST kbd %attrs;>
   1.558 +
   1.559 +<!ELEMENT var %Inline;>   <!-- variable -->
   1.560 +<!ATTLIST var %attrs;>
   1.561 +
   1.562 +<!ELEMENT cite %Inline;>   <!-- citation -->
   1.563 +<!ATTLIST cite %attrs;>
   1.564 +
   1.565 +<!ELEMENT abbr %Inline;>   <!-- abbreviation -->
   1.566 +<!ATTLIST abbr %attrs;>
   1.567 +
   1.568 +<!ELEMENT acronym %Inline;>   <!-- acronym -->
   1.569 +<!ATTLIST acronym %attrs;>
   1.570 +
   1.571 +<!ELEMENT q %Inline;>   <!-- inlined quote -->
   1.572 +<!ATTLIST q
   1.573 +  %attrs;
   1.574 +  cite        %URI;          #IMPLIED
   1.575 +  >
   1.576 +
   1.577 +<!ELEMENT sub %Inline;> <!-- subscript -->
   1.578 +<!ATTLIST sub %attrs;>
   1.579 +
   1.580 +<!ELEMENT sup %Inline;> <!-- superscript -->
   1.581 +<!ATTLIST sup %attrs;>
   1.582 +
   1.583 +<!ELEMENT tt %Inline;>   <!-- fixed pitch font -->
   1.584 +<!ATTLIST tt %attrs;>
   1.585 +
   1.586 +<!ELEMENT i %Inline;>   <!-- italic font -->
   1.587 +<!ATTLIST i %attrs;>
   1.588 +
   1.589 +<!ELEMENT b %Inline;>   <!-- bold font -->
   1.590 +<!ATTLIST b %attrs;>
   1.591 +
   1.592 +<!ELEMENT big %Inline;>   <!-- bigger font -->
   1.593 +<!ATTLIST big %attrs;>
   1.594 +
   1.595 +<!ELEMENT small %Inline;>   <!-- smaller font -->
   1.596 +<!ATTLIST small %attrs;>
   1.597 +
   1.598 +<!--==================== Object ======================================-->
   1.599 +<!--
   1.600 +  object is used to embed objects as part of HTML pages.
   1.601 +  param elements should precede other content. Parameters
   1.602 +  can also be expressed as attribute/value pairs on the
   1.603 +  object element itself when brevity is desired.
   1.604 +-->
   1.605 +
   1.606 +<!ELEMENT object (#PCDATA | param | %block; | form | %inline; | %misc;)*>
   1.607 +<!ATTLIST object
   1.608 +  %attrs;
   1.609 +  declare     (declare)      #IMPLIED
   1.610 +  classid     %URI;          #IMPLIED
   1.611 +  codebase    %URI;          #IMPLIED
   1.612 +  data        %URI;          #IMPLIED
   1.613 +  type        %ContentType;  #IMPLIED
   1.614 +  codetype    %ContentType;  #IMPLIED
   1.615 +  archive     %UriList;      #IMPLIED
   1.616 +  standby     %Text;         #IMPLIED
   1.617 +  height      %Length;       #IMPLIED
   1.618 +  width       %Length;       #IMPLIED
   1.619 +  usemap      %URI;          #IMPLIED
   1.620 +  name        NMTOKEN        #IMPLIED
   1.621 +  tabindex    %Number;       #IMPLIED
   1.622 +  >
   1.623 +
   1.624 +<!--
   1.625 +  param is used to supply a named property value.
   1.626 +  In XML it would seem natural to follow RDF and support an
   1.627 +  abbreviated syntax where the param elements are replaced
   1.628 +  by attribute value pairs on the object start tag.
   1.629 +-->
   1.630 +<!ELEMENT param EMPTY>
   1.631 +<!ATTLIST param
   1.632 +  id          ID             #IMPLIED
   1.633 +  name        CDATA          #IMPLIED
   1.634 +  value       CDATA          #IMPLIED
   1.635 +  valuetype   (data|ref|object) "data"
   1.636 +  type        %ContentType;  #IMPLIED
   1.637 +  >
   1.638 +
   1.639 +<!--=================== Images ===========================================-->
   1.640 +
   1.641 +<!--
   1.642 +   To avoid accessibility problems for people who aren't
   1.643 +   able to see the image, you should provide a text
   1.644 +   description using the alt and longdesc attributes.
   1.645 +   In addition, avoid the use of server-side image maps.
   1.646 +   Note that in this DTD there is no name attribute. That
   1.647 +   is only available in the transitional and frameset DTD.
   1.648 +-->
   1.649 +
   1.650 +<!ELEMENT img EMPTY>
   1.651 +<!ATTLIST img
   1.652 +  %attrs;
   1.653 +  src         %URI;          #REQUIRED
   1.654 +  alt         %Text;         #REQUIRED
   1.655 +  longdesc    %URI;          #IMPLIED
   1.656 +  height      %Length;       #IMPLIED
   1.657 +  width       %Length;       #IMPLIED
   1.658 +  usemap      %URI;          #IMPLIED
   1.659 +  ismap       (ismap)        #IMPLIED
   1.660 +  >
   1.661 +
   1.662 +<!-- usemap points to a map element which may be in this document
   1.663 +  or an external document, although the latter is not widely supported -->
   1.664 +
   1.665 +<!--================== Client-side image maps ============================-->
   1.666 +
   1.667 +<!-- These can be placed in the same document or grouped in a
   1.668 +     separate document although this isn't yet widely supported -->
   1.669 +
   1.670 +<!ELEMENT map ((%block; | form | %misc;)+ | area+)>
   1.671 +<!ATTLIST map
   1.672 +  %i18n;
   1.673 +  %events;
   1.674 +  id          ID             #REQUIRED
   1.675 +  class       CDATA          #IMPLIED
   1.676 +  style       %StyleSheet;   #IMPLIED
   1.677 +  title       %Text;         #IMPLIED
   1.678 +  name        NMTOKEN        #IMPLIED
   1.679 +  >
   1.680 +
   1.681 +<!ELEMENT area EMPTY>
   1.682 +<!ATTLIST area
   1.683 +  %attrs;
   1.684 +  %focus;
   1.685 +  shape       %Shape;        "rect"
   1.686 +  coords      %Coords;       #IMPLIED
   1.687 +  href        %URI;          #IMPLIED
   1.688 +  nohref      (nohref)       #IMPLIED
   1.689 +  alt         %Text;         #REQUIRED
   1.690 +  >
   1.691 +
   1.692 +<!--================ Forms ===============================================-->
   1.693 +<!ELEMENT form %form.content;>   <!-- forms shouldn't be nested -->
   1.694 +
   1.695 +<!ATTLIST form
   1.696 +  %attrs;
   1.697 +  action      %URI;          #REQUIRED
   1.698 +  method      (get|post)     "get"
   1.699 +  enctype     %ContentType;  "application/x-www-form-urlencoded"
   1.700 +  onsubmit    %Script;       #IMPLIED
   1.701 +  onreset     %Script;       #IMPLIED
   1.702 +  accept      %ContentTypes; #IMPLIED
   1.703 +  accept-charset %Charsets;  #IMPLIED
   1.704 +  >
   1.705 +
   1.706 +<!--
   1.707 +  Each label must not contain more than ONE field
   1.708 +  Label elements shouldn't be nested.
   1.709 +-->
   1.710 +<!ELEMENT label %Inline;>
   1.711 +<!ATTLIST label
   1.712 +  %attrs;
   1.713 +  for         IDREF          #IMPLIED
   1.714 +  accesskey   %Character;    #IMPLIED
   1.715 +  onfocus     %Script;       #IMPLIED
   1.716 +  onblur      %Script;       #IMPLIED
   1.717 +  >
   1.718 +
   1.719 +<!ENTITY % InputType
   1.720 +  "(text | password | checkbox |
   1.721 +    radio | submit | reset |
   1.722 +    file | hidden | image | button)"
   1.723 +   >
   1.724 +
   1.725 +<!-- the name attribute is required for all but submit & reset -->
   1.726 +
   1.727 +<!ELEMENT input EMPTY>     <!-- form control -->
   1.728 +<!ATTLIST input
   1.729 +  %attrs;
   1.730 +  %focus;
   1.731 +  type        %InputType;    "text"
   1.732 +  name        CDATA          #IMPLIED
   1.733 +  value       CDATA          #IMPLIED
   1.734 +  checked     (checked)      #IMPLIED
   1.735 +  disabled    (disabled)     #IMPLIED
   1.736 +  readonly    (readonly)     #IMPLIED
   1.737 +  size        CDATA          #IMPLIED
   1.738 +  maxlength   %Number;       #IMPLIED
   1.739 +  src         %URI;          #IMPLIED
   1.740 +  alt         CDATA          #IMPLIED
   1.741 +  usemap      %URI;          #IMPLIED
   1.742 +  onselect    %Script;       #IMPLIED
   1.743 +  onchange    %Script;       #IMPLIED
   1.744 +  accept      %ContentTypes; #IMPLIED
   1.745 +  >
   1.746 +
   1.747 +<!ELEMENT select (optgroup|option)+>  <!-- option selector -->
   1.748 +<!ATTLIST select
   1.749 +  %attrs;
   1.750 +  name        CDATA          #IMPLIED
   1.751 +  size        %Number;       #IMPLIED
   1.752 +  multiple    (multiple)     #IMPLIED
   1.753 +  disabled    (disabled)     #IMPLIED
   1.754 +  tabindex    %Number;       #IMPLIED
   1.755 +  onfocus     %Script;       #IMPLIED
   1.756 +  onblur      %Script;       #IMPLIED
   1.757 +  onchange    %Script;       #IMPLIED
   1.758 +  >
   1.759 +
   1.760 +<!ELEMENT optgroup (option)+>   <!-- option group -->
   1.761 +<!ATTLIST optgroup
   1.762 +  %attrs;
   1.763 +  disabled    (disabled)     #IMPLIED
   1.764 +  label       %Text;         #REQUIRED
   1.765 +  >
   1.766 +
   1.767 +<!ELEMENT option (#PCDATA)>     <!-- selectable choice -->
   1.768 +<!ATTLIST option
   1.769 +  %attrs;
   1.770 +  selected    (selected)     #IMPLIED
   1.771 +  disabled    (disabled)     #IMPLIED
   1.772 +  label       %Text;         #IMPLIED
   1.773 +  value       CDATA          #IMPLIED
   1.774 +  >
   1.775 +
   1.776 +<!ELEMENT textarea (#PCDATA)>     <!-- multi-line text field -->
   1.777 +<!ATTLIST textarea
   1.778 +  %attrs;
   1.779 +  %focus;
   1.780 +  name        CDATA          #IMPLIED
   1.781 +  rows        %Number;       #REQUIRED
   1.782 +  cols        %Number;       #REQUIRED
   1.783 +  disabled    (disabled)     #IMPLIED
   1.784 +  readonly    (readonly)     #IMPLIED
   1.785 +  onselect    %Script;       #IMPLIED
   1.786 +  onchange    %Script;       #IMPLIED
   1.787 +  >
   1.788 +
   1.789 +<!--
   1.790 +  The fieldset element is used to group form fields.
   1.791 +  Only one legend element should occur in the content
   1.792 +  and if present should only be preceded by whitespace.
   1.793 +-->
   1.794 +<!ELEMENT fieldset (#PCDATA | legend | %block; | form | %inline; | %misc;)*>
   1.795 +<!ATTLIST fieldset
   1.796 +  %attrs;
   1.797 +  >
   1.798 +
   1.799 +<!ELEMENT legend %Inline;>     <!-- fieldset label -->
   1.800 +<!ATTLIST legend
   1.801 +  %attrs;
   1.802 +  accesskey   %Character;    #IMPLIED
   1.803 +  >
   1.804 +
   1.805 +<!--
   1.806 + Content is %Flow; excluding a, form and form controls
   1.807 +--> 
   1.808 +<!ELEMENT button %button.content;>  <!-- push button -->
   1.809 +<!ATTLIST button
   1.810 +  %attrs;
   1.811 +  %focus;
   1.812 +  name        CDATA          #IMPLIED
   1.813 +  value       CDATA          #IMPLIED
   1.814 +  type        (button|submit|reset) "submit"
   1.815 +  disabled    (disabled)     #IMPLIED
   1.816 +  >
   1.817 +
   1.818 +<!--======================= Tables =======================================-->
   1.819 +
   1.820 +<!-- Derived from IETF HTML table standard, see [RFC1942] -->
   1.821 +
   1.822 +<!--
   1.823 + The border attribute sets the thickness of the frame around the
   1.824 + table. The default units are screen pixels.
   1.825 +
   1.826 + The frame attribute specifies which parts of the frame around
   1.827 + the table should be rendered. The values are not the same as
   1.828 + CALS to avoid a name clash with the valign attribute.
   1.829 +-->
   1.830 +<!ENTITY % TFrame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
   1.831 +
   1.832 +<!--
   1.833 + The rules attribute defines which rules to draw between cells:
   1.834 +
   1.835 + If rules is absent then assume:
   1.836 +     "none" if border is absent or border="0" otherwise "all"
   1.837 +-->
   1.838 +
   1.839 +<!ENTITY % TRules "(none | groups | rows | cols | all)">
   1.840 +  
   1.841 +<!-- horizontal alignment attributes for cell contents
   1.842 +
   1.843 +  char        alignment char, e.g. char=':'
   1.844 +  charoff     offset for alignment char
   1.845 +-->
   1.846 +<!ENTITY % cellhalign
   1.847 +  "align      (left|center|right|justify|char) #IMPLIED
   1.848 +   char       %Character;    #IMPLIED
   1.849 +   charoff    %Length;       #IMPLIED"
   1.850 +  >
   1.851 +
   1.852 +<!-- vertical alignment attributes for cell contents -->
   1.853 +<!ENTITY % cellvalign
   1.854 +  "valign     (top|middle|bottom|baseline) #IMPLIED"
   1.855 +  >
   1.856 +
   1.857 +<!ELEMENT table
   1.858 +     (caption?, (col*|colgroup*), thead?, tfoot?, (tbody+|tr+))>
   1.859 +<!ELEMENT caption  %Inline;>
   1.860 +<!ELEMENT thead    (tr)+>
   1.861 +<!ELEMENT tfoot    (tr)+>
   1.862 +<!ELEMENT tbody    (tr)+>
   1.863 +<!ELEMENT colgroup (col)*>
   1.864 +<!ELEMENT col      EMPTY>
   1.865 +<!ELEMENT tr       (th|td)+>
   1.866 +<!ELEMENT th       %Flow;>
   1.867 +<!ELEMENT td       %Flow;>
   1.868 +
   1.869 +<!ATTLIST table
   1.870 +  %attrs;
   1.871 +  summary     %Text;         #IMPLIED
   1.872 +  width       %Length;       #IMPLIED
   1.873 +  border      %Pixels;       #IMPLIED
   1.874 +  frame       %TFrame;       #IMPLIED
   1.875 +  rules       %TRules;       #IMPLIED
   1.876 +  cellspacing %Length;       #IMPLIED
   1.877 +  cellpadding %Length;       #IMPLIED
   1.878 +  >
   1.879 +
   1.880 +<!ATTLIST caption
   1.881 +  %attrs;
   1.882 +  >
   1.883 +
   1.884 +<!--
   1.885 +colgroup groups a set of col elements. It allows you to group
   1.886 +several semantically related columns together.
   1.887 +-->
   1.888 +<!ATTLIST colgroup
   1.889 +  %attrs;
   1.890 +  span        %Number;       "1"
   1.891 +  width       %MultiLength;  #IMPLIED
   1.892 +  %cellhalign;
   1.893 +  %cellvalign;
   1.894 +  >
   1.895 +
   1.896 +<!--
   1.897 + col elements define the alignment properties for cells in
   1.898 + one or more columns.
   1.899 +
   1.900 + The width attribute specifies the width of the columns, e.g.
   1.901 +
   1.902 +     width=64        width in screen pixels
   1.903 +     width=0.5*      relative width of 0.5
   1.904 +
   1.905 + The span attribute causes the attributes of one
   1.906 + col element to apply to more than one column.
   1.907 +-->
   1.908 +<!ATTLIST col
   1.909 +  %attrs;
   1.910 +  span        %Number;       "1"
   1.911 +  width       %MultiLength;  #IMPLIED
   1.912 +  %cellhalign;
   1.913 +  %cellvalign;
   1.914 +  >
   1.915 +
   1.916 +<!--
   1.917 +    Use thead to duplicate headers when breaking table
   1.918 +    across page boundaries, or for static headers when
   1.919 +    tbody sections are rendered in scrolling panel.
   1.920 +
   1.921 +    Use tfoot to duplicate footers when breaking table
   1.922 +    across page boundaries, or for static footers when
   1.923 +    tbody sections are rendered in scrolling panel.
   1.924 +
   1.925 +    Use multiple tbody sections when rules are needed
   1.926 +    between groups of table rows.
   1.927 +-->
   1.928 +<!ATTLIST thead
   1.929 +  %attrs;
   1.930 +  %cellhalign;
   1.931 +  %cellvalign;
   1.932 +  >
   1.933 +
   1.934 +<!ATTLIST tfoot
   1.935 +  %attrs;
   1.936 +  %cellhalign;
   1.937 +  %cellvalign;
   1.938 +  >
   1.939 +
   1.940 +<!ATTLIST tbody
   1.941 +  %attrs;
   1.942 +  %cellhalign;
   1.943 +  %cellvalign;
   1.944 +  >
   1.945 +
   1.946 +<!ATTLIST tr
   1.947 +  %attrs;
   1.948 +  %cellhalign;
   1.949 +  %cellvalign;
   1.950 +  >
   1.951 +
   1.952 +
   1.953 +<!-- Scope is simpler than headers attribute for common tables -->
   1.954 +<!ENTITY % Scope "(row|col|rowgroup|colgroup)">
   1.955 +
   1.956 +<!-- th is for headers, td for data and for cells acting as both -->
   1.957 +
   1.958 +<!ATTLIST th
   1.959 +  %attrs;
   1.960 +  abbr        %Text;         #IMPLIED
   1.961 +  axis        CDATA          #IMPLIED
   1.962 +  headers     IDREFS         #IMPLIED
   1.963 +  scope       %Scope;        #IMPLIED
   1.964 +  rowspan     %Number;       "1"
   1.965 +  colspan     %Number;       "1"
   1.966 +  %cellhalign;
   1.967 +  %cellvalign;
   1.968 +  >
   1.969 +
   1.970 +<!ATTLIST td
   1.971 +  %attrs;
   1.972 +  abbr        %Text;         #IMPLIED
   1.973 +  axis        CDATA          #IMPLIED
   1.974 +  headers     IDREFS         #IMPLIED
   1.975 +  scope       %Scope;        #IMPLIED
   1.976 +  rowspan     %Number;       "1"
   1.977 +  colspan     %Number;       "1"
   1.978 +  %cellhalign;
   1.979 +  %cellvalign;
   1.980 +  >
   1.981 +

mercurial