home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 2000 April / VPR0004A.BIN / OLS / HTMLLINT / htmllint.lzh / ie30b.dtd < prev    next >
Text File  |  1998-08-29  |  36KB  |  1,037 lines

  1. <!--
  2.         Microsoft Document Type Definition for Internet Explorer 3.0 HTML.
  3.  
  4.                 Version: 0.9    Date: 11/7/96
  5.  
  6.                 Author: Mark Buckley <mbuckley@microsoft.com>
  7.  
  8.                 This markup is based as much as possible on the DTD for HTML 3.2
  9.                 published by W3C (also known as the Wilbur DTD), dated 5/31/96.
  10. -->
  11.  
  12. <!ENTITY % HTML.Version
  13.         "-//Microsoft//DTD Internet Explorer 3.0 HTML//EN" >
  14.  
  15. <!--================== Deprecated Features Switch =========================-->
  16.  
  17. <!ENTITY % HTML.Recommended "IGNORE" >
  18.  
  19. <![ %HTML.Recommended [
  20.         <!ENTITY % HTML.Deprecated "IGNORE">
  21. ]]>
  22.  
  23. <!ENTITY % HTML.Deprecated "INCLUDE">
  24.  
  25. <!--================== Imported Names =====================================-->
  26.  
  27. <!ENTITY % Content-Type "CDATA"
  28.         -- meaning a MIME content type, as per RFC1521
  29.         -->
  30.  
  31. <!ENTITY % HTTP-Method "GET | POST"
  32.         -- as per HTTP specification
  33.         -->
  34.  
  35. <!ENTITY % URL "CDATA"
  36.         -- The term URL means a CDATA attribute
  37.            whose value is a Uniform Resource Locator,
  38.            See RFC1808 (June 95) and RFC1738 (Dec 94).
  39.         -->
  40.  
  41. <!--========= Common attributes ============================================-->
  42.  
  43. <!ENTITY % attrs  -- common attributes. Taken from the HTML 3 DTD --
  44.         'id     ID      #IMPLIED -- as target for hrefs (link ends) --
  45.          lang   CDATA   "en.us"  -- ISO language, country code --
  46.          class  NAMES   #IMPLIED -- for subclassing elements --
  47.          style  CDATA   #IMPLIED'>
  48.  
  49. <!--========= Color attribute ============================================-->
  50.  
  51. <!ENTITY % color "CDATA" -- a color specification: #HHHHHH @@ details? -->
  52.  
  53.  
  54. <!--================ Character mnemonic entities ==========================-->
  55.  
  56. <!ENTITY % ISOlat1 PUBLIC
  57.        "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
  58. %ISOlat1;
  59.  
  60. <!--================ Entities for special symbols =========================-->
  61. <!-- &trade ­ and &cbsp are not widely deployed and so not included here -->
  62.  
  63. <!ENTITY copy   CDATA "©"   -- copyright sign     -->
  64. <!ENTITY reg    CDATA "®"   -- registered sign    -->
  65. <!ENTITY amp    CDATA "&"   -- ampersand          -->
  66. <!ENTITY gt     CDATA ">"   -- greater than       -->
  67. <!ENTITY lt     CDATA "<"   -- less than          -->
  68. <!ENTITY quot   CDATA """   -- double quote       -->
  69. <!ENTITY nbsp   CDATA " "  -- non breaking space -->
  70.  
  71. <!-- Parameter Entities -->
  72.  
  73. <!ENTITY % heading "H1|H2|H3|H4|H5|H6">
  74.  
  75.  
  76. <!--=================== Text Content =======================================-->
  77.  
  78. <![ %HTML.Deprecated [
  79. <!ENTITY % font "TT | I | B  | U | STRIKE | BIG | SMALL | SUB | SUP | FONT | S">
  80. ]]>
  81.  
  82. <!ENTITY % font "TT | I | B  | U | STRIKE | BIG | SMALL | SUB | SUP | FONT">
  83.  
  84. <![ %HTML.Deprecated [
  85.         <!ENTITY % phrase "EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE | ENTITY | SPAN">
  86. ]]>
  87.  
  88. <!ENTITY % phrase "EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE | SPAN">
  89.  
  90. <!ENTITY % break        "BR | NOBR | WBR" >
  91.  
  92. <!ENTITY % anchors "A" >
  93.  
  94. <![ %HTML.Deprecated [
  95. <!ENTITY % mmobjects "IMG | APPLET | SCRIPT | NOSCRIPT | MAP | BGSOUND | MARQUEE | OBJECT | EMBED" >
  96. ]]>
  97.  
  98. <!ENTITY % mmobjects "IMG | APPLET | SCRIPT | NOSCRIPT | MAP | BGSOUND | MARQUEE | OBJECT" >
  99.  
  100. <!ENTITY % formitems "INPUT | SELECT | TEXTAREA">
  101.  
  102. <![ %HTML.Deprecated [
  103.         <!ENTITY % text "#PCDATA | %font | %phrase | %break | %anchors | %mmobjects | %formitems">
  104. ]]>
  105.  
  106. <!ENTITY % text "#PCDATA | %font | %phrase | %break | %anchors | %mmobjects">
  107.  
  108. <!--=================== Flow Content =======================================-->
  109.  
  110. <!ENTITY % list "UL | OL | DL | DIR | MENU">
  111.  
  112. <![ %HTML.Deprecated [
  113.     <!ENTITY % preformatted "PRE | XMP | LISTING | PLAINTEXT">
  114. ]]>
  115.  
  116. <!ENTITY % preformatted "PRE">
  117.  
  118.  
  119. <![ %HTML.Deprecated [
  120. <!ENTITY % block
  121.      "P | %list | %preformatted | DIV | BLOCKQUOTE | FORM | ISINDEX |
  122.          HR | TABLE | IFRAME | CENTER">
  123. ]]>
  124.  
  125. <!ENTITY % block
  126.      "P | %list | %preformatted | DIV | BLOCKQUOTE | FORM | ISINDEX |
  127.          HR | TABLE | IFRAME">
  128.  
  129.  
  130. <![ %HTML.Deprecated [
  131. <!ENTITY % mixed.content "(%heading|%text|%block|ADDRESS|BASEFONT)*" >
  132. ]]>
  133.  
  134. <!-- %flow is used for DD and LI -->
  135.  
  136. <![ %HTML.Deprecated [
  137. <!ENTITY % flow "(%mixed.content)*">
  138. ]]>
  139.  
  140. <!ENTITY % flow "(%text | %block)*">
  141.  
  142. <![ %HTML.Deprecated [
  143. <!ENTITY % font.content "(%mixed.content)*">
  144. ]]>
  145.  
  146. <!ENTITY % font.content "(%text)*">
  147.  
  148.  
  149. <!-- Text Elements -->
  150.  
  151. <!ELEMENT (%font) - -  %font.content >
  152.  
  153. <!ATTLIST FONT
  154.         %attrs;
  155.     size    CDATA   #IMPLIED    -- [+]nn e.g. size="+1", size=4 --
  156.     color   %color      #IMPLIED    -- #RRGGBB in hex, e.g. red: color="#FF0000" --
  157.         face    CDATA   #IMPLIED
  158.     >
  159.  
  160. <!ATTLIST (TT | I | B  | U | STRIKE | BIG | SMALL | SUB | SUP)
  161.         %attrs;
  162.     size    CDATA   #IMPLIED    -- [+]nn e.g. size="+1", size=4 --
  163.     color   %color      #IMPLIED    -- #RRGGBB in hex, e.g. red: color="#FF0000" --
  164.         face    CDATA   #IMPLIED
  165.         >
  166.  
  167. <![ %HTML.Deprecated [
  168.         <!ATTLIST S
  169.                 %attrs;
  170.                 >
  171. ]]>
  172.  
  173. <!ELEMENT (%phrase) - - (%text)*>
  174. <!ATTLIST (%phrase)
  175.         %attrs;
  176.         >
  177.  
  178. <!ELEMENT (%break)    - O EMPTY   -- forced line break -->
  179.  
  180. <!ATTLIST BR
  181.         %attrs;
  182.         clear (left|all|right|none) none -- control of text flow --
  183.         >
  184.  
  185. <!ATTLIST (NOBR | WBR)
  186.         %attrs;
  187.         >
  188.  
  189. <!--=================== Document Body =====================================-->
  190.  
  191. <![ %HTML.Recommended [
  192.         <!ENTITY % body.content "(%heading|%block|%mmobjects|ADDRESS|BASEFONT)*" >
  193. ]]>
  194.  
  195. <![ %HTML.Deprecated [
  196. <!ENTITY % body.content "%mixed.content" >
  197. ]]>
  198.  
  199. <!ENTITY % body-color-attrs "
  200.     bgcolor %color #IMPLIED
  201.     text %color #IMPLIED
  202.     link %color #IMPLIED
  203.     vlink %color #IMPLIED
  204.     alink %color #IMPLIED
  205.         ">
  206.  
  207. <!ELEMENT BODY O O  %body.content>
  208. <!ATTLIST BODY
  209.         %attrs;
  210.     background          %URL    #IMPLIED  -- texture tile for document background --
  211.     %body-color-attrs;          -- bgcolor, text, link, vlink, alink --
  212.         bgproperties    CDATA   #IMPLIED
  213.         leftmargin      NUMBER  #IMPLIED
  214.         topmargin       NUMBER  #IMPLIED
  215.         >
  216.  
  217. <![ %HTML.Deprecated [
  218.         <!ENTITY % address.content "((%text;) | P | CENTER)*">
  219. ]]>
  220.  
  221. <!ENTITY % address.content "((%text;) | P )*">
  222.  
  223. <!ELEMENT ADDRESS - - %address.content>
  224. <!ATTLIST  ADDRESS
  225.         %attrs;
  226.         >
  227.  
  228. <!ELEMENT DIV - - %body.content>
  229. <!ATTLIST DIV
  230.                 %attrs
  231.         align   (left|center|right) left -- alignment of following text --
  232.         >
  233.  
  234. <![ %HTML.Deprecated [
  235.         <!-- CENTER is a shorthand for DIV with ALIGN=CENTER -->
  236.         <!ELEMENT center - - %mixed.content>
  237.         <!ATTLIST center
  238.                 %attrs
  239.                 >
  240. ]]>
  241.  
  242. <!--================== The Anchor Element =================================-->
  243.  
  244. <!ELEMENT A - - (%text)* -(A)>
  245. <!ATTLIST A
  246.                 %attrs
  247.         name    CDATA   #IMPLIED    -- named link end --
  248.         href    %URL    #IMPLIED    -- URL for linked resource --
  249.         rel     CDATA   #IMPLIED    -- forward link types --
  250.         rev     CDATA   #IMPLIED    -- reverse link types --
  251.         title   CDATA   #IMPLIED    -- advisory title string --
  252.                 target  CDATA   #IMPLIED        -- frame target --
  253.         >
  254.  
  255. <!--================== Client-side image maps ============================-->
  256.  
  257. <!-- These can be placed in the same document or grouped in a
  258.      separate document although this isn't yet widely supported -->
  259.  
  260. <!ENTITY % SHAPE "(rect|rectangle|circ|circle|poly|polygon|default)">
  261. <!ENTITY % COORDS "CDATA" -- comma separated list of numbers -->
  262.  
  263. <!ELEMENT MAP - - (AREA)*>
  264. <!ATTLIST MAP
  265.     name    CDATA   #IMPLIED
  266.     >
  267.  
  268. <!ELEMENT AREA - O EMPTY>
  269. <!ATTLIST AREA
  270.         %attrs
  271.     shape   %SHAPE  rect
  272.     coords  %COORDS #IMPLIED  -- always needed except for shape=default --
  273.     href    %URL    #IMPLIED  -- this region acts as hypertext link --
  274.     nohref (nohref) #IMPLIED  -- this region has no action --
  275.     alt     CDATA   #IMPLIED
  276.         target  CDATA   #IMPLIED
  277.     >
  278.  
  279. <!--================== The LINK Element ==================================-->
  280.  
  281. <!ENTITY % Types "CDATA"
  282.         -- See Internet Draft: draft-ietf-html-relrev-00.txt
  283.            LINK has been part of HTML since the early days
  284.            although few browsers as yet take advantage of it.
  285.  
  286.            Relationship values can be used in principle:
  287.  
  288.                 a) for document specific toolbars/menus when used
  289.                    with the LINK element in document head:
  290.                 b) to link to a separate style sheet (rel=stylesheet)
  291.                 c) to make a link to a script (rel=script)
  292.                 d) by stylesheets to control how collections of
  293.                    html nodes are rendered into printed documents
  294.                 e) to make a link to a printable version of this document
  295.                    e.g. a postscript or pdf version (rel=print)
  296. -->
  297.  
  298. <!ELEMENT LINK - O EMPTY>
  299. <!ATTLIST LINK
  300.         %attrs;
  301.     href    %URL    #IMPLIED    -- URL for linked resource --
  302.     rel     %Types  #IMPLIED    -- forward link types --
  303.     rev     %Types  #IMPLIED    -- reverse link types --
  304.     title   CDATA   #IMPLIED    -- advisory title string --
  305.         >
  306.  
  307. <!--=================== Images ============================================-->
  308.  
  309. <!ENTITY % Length "CDATA" -- nn for pixels or nn% for percentage length -->
  310. <!ENTITY % Pixels "CDATA" -- integer representing length in pixels -->
  311.  
  312. <!-- Suggested widths are used for negotiating image size
  313.      with the module responsible for painting the image.
  314.      align=left or right cause image to float to margin
  315.      and for subsequent text to wrap around image -->
  316.  
  317. <!ENTITY % IAlign "(top|middle|bottom|left|right)">
  318.  
  319. <!ELEMENT IMG    - O EMPTY --  Embedded image -->
  320. <!ATTLIST IMG
  321.         %attrs;
  322.     src         %URL     #REQUIRED  -- URL of image to embed --
  323.     alt         CDATA    #IMPLIED   -- for display in place of image --
  324.     align       %IAlign  #IMPLIED   -- vertical or horizontal alignment --
  325.     height      %Pixels  #IMPLIED   -- suggested height in pixels --
  326.     width       %Pixels  #IMPLIED   -- suggested width in pixels --
  327.     border      %Pixels  #IMPLIED   -- suggested link border width --
  328.     hspace      %Pixels  #IMPLIED   -- suggested horizontal gutter --
  329.     vspace      %Pixels  #IMPLIED   -- suggested vertical gutter --
  330.     usemap      %URL     #IMPLIED   -- use client-side image map --
  331.     ismap       (ismap)  #IMPLIED   -- use server image map --
  332.     dynsrc      %URL     #IMPLIED  -- URL of image to embed --
  333.         start   NAMES   #IMPLIED
  334.         loop    NMTOKEN #IMPLIED
  335.         controls        (controls)      #IMPLIED
  336.         vrml    CDATA   #IMPLIED
  337.     >
  338.  
  339. <!-- USEMAP points to a MAP element which may be in this document
  340.   or an external document, although the latter is not widely supported -->
  341.  
  342. <!--=================== Java APPLET tag ===================================-->
  343. <!--
  344.   This tag is supported by all java enabled browsers. Applet resources
  345.   (including their classes) are normally loaded relative to the document
  346.   URL (or <BASE> element if it is defined). The CODEBASE attribute is used
  347.   to change this default behavior. If the CODEBASE attribute is defined then
  348.   it specifies a different location to find applet resources. The value
  349.   can be an absolute URL or a relative URL. The absolute URL is used as is
  350.   without modification and is not effected by the documents <BASE> element.
  351.   When the codebase attribute is relative, then it is relative to the
  352.   document URL (or <BASE> tag if defined). <TEXTFLOW> avoids the problems
  353.   with SGML mixed content. It can always be omitted *except* when the APPLET
  354.   element hasn't any content. White space, comments and PARAM elements
  355.   don't count as content for this purpose. TEXTFLOW was introduced into
  356.   the DTD to satisfy SGML parsers, but is ignored by current Web browsers.
  357. -->
  358. <!ELEMENT APPLET - - (PARAM*, TEXTFLOW)>
  359. <!ATTLIST APPLET
  360.                 %attrs
  361.         codebase %URL     #IMPLIED   -- code base --
  362.         code     CDATA    #REQUIRED  -- class file --
  363.         name     CDATA    #IMPLIED   -- applet name --
  364.         alt      CDATA    #IMPLIED   -- for display in place of applet --
  365.         align    %IAlign  #IMPLIED   -- vertical or horizontal alignment --
  366.         height   %Pixels  #REQUIRED  -- suggested height in pixels --
  367.         width    %Pixels  #REQUIRED  -- suggested width in pixels --
  368.         hspace   %Pixels  #IMPLIED   -- suggested horizontal gutter --
  369.         vspace   %Pixels  #IMPLIED   -- suggested vertical gutter --
  370.                 border  NUMBER  #IMPLIED
  371.         >
  372.  
  373.  
  374. <!ELEMENT TEXTFLOW O O (%text)* -- needed to bypass mixed content model -->
  375.  
  376. <!--
  377. Here is an example:
  378.  
  379.     <applet codebase="applets/NervousText"
  380.         code=NervousText.class
  381.         width=300
  382.         height=50>
  383.     <param name=text value="Java is Cool!">
  384.     <img src=sorry.gif alt="This looks better with Java support">
  385.     </applet>
  386. -->
  387.  
  388. <!--=================== Horizontal Rule ===================================-->
  389.  
  390. <!ELEMENT HR    - O EMPTY>
  391. <!ATTLIST HR
  392.         %attrs;
  393.     align (left|right|center) #IMPLIED
  394.     noshade (noshade) #IMPLIED
  395.     size        %Pixels #IMPLIED
  396.     width       %Length #IMPLIED
  397.         color   %color  #IMPLIED
  398.     >
  399.  
  400. <!--=================== Paragraphs=========================================-->
  401.  
  402. <![ %HTML.Deprecated [
  403.         <!ENTITY % P.content    "(%text|CENTER)*" >
  404. ]]>
  405.  
  406. <!ENTITY % P.content    "(%text)*" >
  407.  
  408. <!ELEMENT P     - O %P.content >
  409. <!ATTLIST P
  410.         %attrs;
  411.     align  (left|center|right) #IMPLIED
  412.     >
  413.  
  414.  
  415. <!--=================== Base Font =========================================-->
  416.  
  417. <!ELEMENT BASEFONT      - O EMPTY>
  418. <!ATTLIST BASEFONT
  419.         %attrs;
  420.         size    NUMBER  #IMPLIED
  421.         color   %color  #IMPLIED
  422.         face    CDATA   #IMPLIED
  423.         >
  424.  
  425. <!--=================== Background Sound =================================-->
  426.  
  427. <!ELEMENT BGSOUND  - O EMPTY>
  428. <!ATTLIST BGSOUND
  429.         %attrs;
  430.         src             %URL    #IMPLIED
  431.         loop    NMTOKEN #IMPLIED
  432.         start   CDATA   #IMPLIED
  433.         >
  434.  
  435. <!--=================== Marquee =========================================-->
  436.  
  437. <!ELEMENT MARQUEE  - O (%text)*>
  438. <!ATTLIST MARQUEE
  439.         %attrs;
  440.         align (top|middle|bottom) top
  441.         behavior        (scroll|slide|alternate)        SCROLL
  442.         bgcolor %color  #IMPLIED
  443.         direction       (left|right)    LEFT
  444.         height  CDATA   #IMPLIED
  445.         hspace  NUMBER  #IMPLIED
  446.         loop    CDATA   #IMPLIED
  447.         scrollamount    NUMBER  #IMPLIED
  448.         scrolldelay     NUMBER  #IMPLIED
  449.         vspace  NUMBER  #IMPLIED
  450.         width   CDATA   #IMPLIED
  451.         border  NUMBER  #IMPLIED
  452.     background  %URL    #IMPLIED  -- texture tile for document background --
  453.         >
  454.  
  455. <!--=================== Headings ==========================================-->
  456.  
  457. <!--
  458.   There are six levels of headers from H1 (the most important)
  459.   to H6 (the least important).
  460. -->
  461.  
  462. <!ELEMENT ( %heading )  - -  %P.content >
  463. <!ATTLIST ( %heading )
  464.                 %attrs
  465.         align  (left|center|right) #IMPLIED
  466.         >
  467.  
  468. <!--=================== Preformatted Text =================================-->
  469.  
  470. <!-- excludes images and changes in font size -->
  471.  
  472. <!ENTITY % pre.exclusion "IMG|BIG|SMALL|SUB|SUP|FONT">
  473.  
  474. <!ELEMENT PRE - - (%text)* -(%pre.exclusion)>
  475. <!ATTLIST PRE
  476.         %attrs;
  477.         width NUMBER #implied
  478.         >
  479.  
  480. <![ %HTML.Deprecated [
  481.  
  482. <!ENTITY % literal "CDATA"
  483.         -- historical, non-conforming parsing mode where
  484.            the only markup signal is the end tag
  485.            in full
  486.         -->
  487.  
  488. <!ELEMENT (XMP|LISTING) - -  %literal>
  489. <!ELEMENT PLAINTEXT - O %literal>
  490.  
  491. <!ATTLIST (XMP|LISTING|PLAINTEXT)
  492.         %attrs;
  493.         >
  494.  
  495. ]]>
  496.  
  497. <!--=================== Block-like Quotes =================================-->
  498.  
  499. <!ELEMENT BLOCKQUOTE - - %body.content>
  500. <!ATTLIST BLOCKQUOTE
  501.         %attrs;
  502.         >
  503.  
  504. <!--=================== Lists =============================================-->
  505.  
  506. <!--
  507.     HTML 3.2 allows you to control the sequence number for ordered lists.
  508.     You can set the sequence number with the START and VALUE attributes.
  509.     The TYPE attribute may be used to specify the rendering of ordered
  510.     and unordered lists.
  511. -->
  512.  
  513. <!-- definition lists - DT for term, DD for its definition -->
  514.  
  515. <!ELEMENT DL    - -  (DT|DD)*>
  516. <!ATTLIST DL
  517.         %attrs;
  518.         compact (compact) #IMPLIED -- more compact style --
  519.         >
  520.  
  521. <!ELEMENT DT - O  (%text)*>
  522. <!ATTLIST DT
  523.         %attrs;
  524.         >
  525.  
  526. <!ELEMENT DD - O  %flow;>
  527. <!ATTLIST DD
  528.         %attrs;
  529.         >
  530.  
  531. <!-- Ordered lists OL, and unordered lists UL -->
  532. <!ELEMENT (OL|UL) - -  (LI)*>
  533.  
  534. <!--
  535.        Numbering style
  536.     1   arabic numbers      1, 2, 3, ...
  537.     a   lower alpha         a, b, c, ...
  538.     A   upper alpha         A, B, C, ...
  539.     i   lower roman         i, ii, iii, ...
  540.     I   upper roman         I, II, III, ...
  541.  
  542.     The style is applied to the sequence number which by default
  543.     is reset to 1 for the first list item in an ordered list.
  544.  
  545.     This can't be expressed directly in SGML due to case folding.
  546. -->
  547.  
  548. <!ENTITY % OLStyle "CDATA" -- constrained to: [1|a|A|i|I] -->
  549.  
  550. <!ATTLIST OL -- ordered lists --
  551.         %attrs;
  552.     type      %OLStyle   #IMPLIED   -- numbering style --
  553.     start     NUMBER     #IMPLIED   -- starting sequence number --
  554.     compact  (compact)   #IMPLIED   -- reduced interitem spacing --
  555.         >
  556.  
  557. <!-- bullet styles -->
  558.  
  559. <!ENTITY % ULStyle "disc|square|circle">
  560.  
  561. <!ATTLIST UL -- unordered lists --
  562.         %attrs;
  563.     type    (%ULStyle)   #IMPLIED   -- bullet style --
  564.     compact (compact)    #IMPLIED   -- reduced interitem spacing --
  565.     >
  566.  
  567. <!ELEMENT (DIR|MENU) - -  (LI)* -(%block)>
  568. <!ATTLIST (DIR|MENU)
  569.         %attrs;
  570.     compact (compact) #IMPLIED
  571.     >
  572.  
  573. <!-- The type attribute can be used to change the bullet style
  574.      in unordered lists and the numbering style in ordered lists -->
  575.  
  576. <!ENTITY % LIStyle "CDATA" -- constrained to: "(%ULStyle|%OLStyle)" -->
  577.  
  578. <!ELEMENT LI - O %flow -- list item -->
  579. <!ATTLIST LI
  580.         %attrs;
  581.     type    %LIStyle     #IMPLIED   -- list item style --
  582.     value    NUMBER      #IMPLIED   -- reset sequence number --
  583.     >
  584.  
  585. <!--================ Forms ===============================================-->
  586.  
  587. <!ELEMENT FORM - - %body.content -(FORM) +(%formitems)>
  588. <!ATTLIST FORM
  589.         %attrs;
  590.     action %URL #REQUIRED -- server-side form handler --
  591.     method (%HTTP-Method) GET -- see HTTP specification --
  592.     enctype %Content-Type; "application/x-www-form-urlencoded"
  593.         name    CDATA   #IMPLIED
  594.         target  CDATA   #IMPLIED
  595.         >
  596.  
  597. <!ENTITY % InputType
  598.         "(TEXT | TEXTAREA | PASSWORD | CHECKBOX | RADIO | SUBMIT
  599.             | RESET | FILE | HIDDEN | IMAGE)">
  600.  
  601. <!ELEMENT INPUT - O EMPTY>
  602. <!ATTLIST INPUT
  603.         %attrs;
  604.     type %InputType TEXT     -- what kind of widget is needed --
  605.     name  CDATA #IMPLIED     -- required for all but submit and reset --
  606.     value CDATA #IMPLIED     -- required for radio and checkboxes --
  607.         checked (checked|true|false) #IMPLIED -- for radio buttons and check boxes --
  608.     size CDATA  #IMPLIED     -- specific to each type of field --
  609.     maxlength NUMBER #IMPLIED
  610.     src   %URL  #IMPLIED     -- for fields with background images --
  611.     align  (top|middle|bottom|left|right) top -- image alignment --
  612.     >
  613.  
  614. <!ELEMENT SELECT - - (OPTION+)>
  615. <!ATTLIST SELECT
  616.         %attrs;
  617.     name CDATA #REQUIRED
  618.     size NUMBER #IMPLIED
  619.     multiple (multiple) #IMPLIED
  620.     >
  621.  
  622. <!ELEMENT OPTION - O (#PCDATA)*>
  623. <!ATTLIST OPTION
  624.         %attrs;
  625.     selected (selected) #IMPLIED
  626.     value  CDATA  #IMPLIED -- defaults to element content --
  627.     >
  628.  
  629. <!-- Multi-line text input field. -->
  630.  
  631. <!ELEMENT TEXTAREA - - (#PCDATA)* -(INPUT|SELECT|TEXTAREA)>
  632. <!ATTLIST TEXTAREA
  633.         %attrs;
  634.     name CDATA #REQUIRED
  635.     rows NUMBER #REQUIRED
  636.     cols NUMBER #REQUIRED
  637.     >
  638.  
  639. <!--======================= Tables ========================================-->
  640.  
  641. <!-- Invoke TABLES DTD  -->
  642. <!--
  643. <!ENTITY % ietables PUBLIC "-//Microsoft//DTD Internet Explorer 3.0 Tables//EN" >
  644. %ietables; -->
  645.  
  646. <!-- Note: I originally excerpted this from the document entitled
  647. "The HTML3 Table Model" by Dave Raggett, which I found at
  648. http://www.w3.org/hypertext/WWW/TR/WD-tables. This file
  649. identified itself as W3C Working Draft, dated 12/22/95. There are
  650. slight modifications.
  651.  
  652. Added width attribute to th and td elements.
  653.  
  654. Version: 11/11/96
  655.  
  656. -->
  657.  
  658. <!-- Content model entities imported from parent DTD:
  659.  
  660.   %body.content; allows table cells to contain headers, paras,
  661.   lists, form elements and even arbitrarily nested tables.
  662.  
  663.   %text; is text characters, including character entities and
  664.   character emphasis elements, IMG and anchors
  665. -->
  666.  
  667. <!ENTITY % attrs
  668.        "id      ID       #IMPLIED  -- element identifier --
  669.         class   NAMES    #IMPLIED  -- for subclassing elements --
  670.         style   CDATA    #IMPLIED  -- rendering annotation --
  671.         lang    NAME     #IMPLIED  -- as per RFC 1766 --
  672.         -- dir   (ltr|rtl)  #IMPLIED --  -- I18N text direction --">
  673.  
  674. <!--
  675.  The BORDER attribute sets the thickness of the frame around the
  676.  table. The default units are screen pixels.
  677.  
  678.  The FRAME attribute specifies which parts of the frame around
  679.  the table should be rendered. The values are not the same as
  680.  CALS to avoid a name clash with the VALIGN attribute.
  681.  
  682.  The value "border" is included for backwards compatibility with
  683.  <TABLE BORDER> which yields frame=border and border=implied
  684.  For <TABLE BORDER=1> you get border=1 and frame=implied. In this
  685.  case, its appropriate to treat this as frame=border for backwards
  686.  compatibility with deployed browsers.
  687. -->
  688.  
  689. <!ENTITY % Frame "(void|above|below|hsides|lhs|rhs|vsides|box|border)">
  690.  
  691. <!--
  692.  The RULES attribute defines which rules to draw between cells:
  693.  
  694.  If RULES is absent then assume:
  695.      "none" if BORDER is absent or BORDER=0 otherwise "all"
  696. -->
  697.  
  698. <!ENTITY % Rules "(none | groups | rows | cols | all)">
  699.  
  700. <!-- horizontal placement of table relative to window -->
  701. <!ENTITY % Where "(left|center|right)">
  702. <!-- horizontal alignment attributes for cell contents -->
  703. <!ENTITY % cell.halign
  704.         "align  (left|center|right|justify|char) #IMPLIED
  705.          char    CDATA   #IMPLIED -- alignment char, e.g. char=':' --
  706.          charoff CDATA   #IMPLIED -- offset for alignment char --"
  707.         >
  708.  
  709. <!-- vertical alignment attributes for cell contents -->
  710. <!ENTITY % cell.valign
  711.         "valign  (top|middle|bottom|baseline)  #IMPLIED"
  712.         >
  713.  
  714. <!ELEMENT table - - (caption?, colgroup*, thead?, tfoot?, tbody+)>
  715. <!ELEMENT caption - - (%text;)+>
  716. <!ELEMENT thead - O (tr+)>
  717. <!ELEMENT tfoot - O (tr+)>
  718. <!ELEMENT tbody O O (tr+)>
  719. <!ELEMENT colgroup - O (col*)>
  720. <!ELEMENT col - O EMPTY>
  721. <!ELEMENT tr - O (th|td)+>
  722. <!ELEMENT (th|td) - O %body.content>
  723.  
  724. <!ATTLIST table                    -- table element --
  725.         %attrs;                    -- id, lang, style, dir and class --
  726.         align   %Where;  #IMPLIED  -- table position relative to window --
  727.         width   CDATA    #IMPLIED  -- table width relative to window --
  728.         cols    NUMBER   #IMPLIED  -- used for immediate display mode --
  729.         border  CDATA    #IMPLIED  -- controls frame width around table --
  730.         frame   %Frame;  #IMPLIED  -- which parts of table frame to include --
  731.         rules   %Rules;  #IMPLIED  -- rulings between rows and cols --
  732.         cellspacing CDATA #IMPLIED -- spacing between cells --
  733.         cellpadding CDATA #IMPLIED -- spacing within cells --
  734.                 background      %URL    #IMPLIED        -- background picture --
  735.                 bgcolor          CDATA    #IMPLIED  -- table background color --
  736.                 bordercolor      CDATA    #IMPLIED  -- table border color --
  737.                 bordercolorlight CDATA    #IMPLIED  -- 3D table border color --
  738.                 bordercolordark  CDATA    #IMPLIED  -- 3D table border color --
  739.         >
  740.  
  741. <!-- ALIGN is used here for compatibility with deployed browsers -->
  742. <!ENTITY % Caption "(top|bottom)">
  743.  
  744. <!ATTLIST caption                  -- table caption --
  745.         %attrs;                    -- id, lang, style, dir and class --
  746.         align  %Caption; #IMPLIED  -- relative to table --
  747.                 height  CDATA   #IMPLIED   -- added for IE3 --
  748.         width   CDATA   #IMPLIED   -- added for IE3 --
  749.         >
  750.  
  751. <!--
  752. COLGROUP groups a set of COL elements. It allows you to group
  753. several columns together.
  754. -->
  755.  
  756. <!ATTLIST colgroup
  757.         %attrs;                    -- id, lang, style, dir and class --
  758.         span    NUMBER   1         -- default number of columns in group --
  759.         width   CDATA    #IMPLIED  -- default width for enclosed COLs --
  760.         %cell.halign;              -- horizontal alignment in cells --
  761.         %cell.valign;              -- vertical alignment in cells --
  762.         >
  763.  
  764. <!--
  765.  COL elements define the alignment properties for cells in a given
  766.  column or spanned columns. The WIDTH attribute specifies the
  767.  width of the columns, e.g.
  768.  
  769.      width=64        width in screen pixels
  770.      width=0.5*      relative width of 0.5
  771. -->
  772.  
  773. <!ATTLIST col                      -- column groups and properties --
  774.         %attrs;                    -- id, lang, style, dir and class --
  775.         span    NUMBER   1         -- number of columns spanned by group --
  776.         width   CDATA    #IMPLIED  -- column width specification --
  777.         %cell.halign;              -- horizontal alignment in cells --
  778.         %cell.valign;              -- vertical alignment in cells --
  779.         >
  780.  
  781. <!--
  782.     Use THEAD to duplicate headers when breaking table
  783.     across page boundaries, or for static headers when
  784.     body sections are rendered in scrolling panel.
  785.  
  786.     Use TFOOT to duplicate footers when breaking table
  787.     across page boundaries, or for static footers when
  788.     body sections are rendered in scrolling panel.
  789.  
  790.     Use multiple TBODY sections when rules are needed
  791.     between groups of table rows.
  792. -->
  793. <!ATTLIST (thead|tbody|tfoot)      -- table section --
  794.         %attrs;                    -- id, lang, style, dir and class --
  795.         %cell.halign;              -- horizontal alignment in cells --
  796.         %cell.valign;              -- vertical alignment in cells --
  797.         >
  798.  
  799. <!ATTLIST tr                       -- table row --
  800.         %attrs;                    -- id, lang, style, dir and class --
  801.         %cell.halign;              -- horizontal alignment in cells --
  802.         %cell.valign;              -- vertical alignment in cells --
  803.                 bgcolor          CDATA    #IMPLIED  -- table background color --
  804.                 bordercolor      CDATA    #IMPLIED  -- table border color --
  805.                 bordercolorlight CDATA    #IMPLIED  -- 3D table border color --
  806.                 bordercolordark  CDATA    #IMPLIED  -- 3D table border color --
  807.         >
  808.  
  809. <!ATTLIST (th|td)                  -- header or data cell --
  810.         %attrs;                    -- id, lang, style, dir and class --
  811.         axis    CDATA    #IMPLIED  -- defaults to cell content --
  812.         axes    CDATA    #IMPLIED  -- list of axis names --
  813.         nowrap (nowrap)  #IMPLIED  -- suppress word wrap --
  814.         rowspan NUMBER   1         -- number of rows spanned by cell --
  815.         colspan NUMBER   1         -- number of cols spanned by cell --
  816.         %cell.halign;              -- horizontal alignment in cells --
  817.         %cell.valign;              -- vertical alignment in cells --
  818.                 background      CDATA   #IMPLIED        -- background graphic --
  819.                 bgcolor                 CDATA   #IMPLIED  -- background color for cell --
  820.                 bordercolor             CDATA   #IMPLIED  -- cell border color --
  821.                 bordercolorlight        CDATA   #IMPLIED  -- 3D cell border color --
  822.                 bordercolordark         CDATA   #IMPLIED  -- 3D cell border color --
  823.                 height  CDATA   #IMPLIED
  824.         width   CDATA   #IMPLIED
  825.        >
  826.  
  827.  
  828. <!--================ Document Head ========================================-->
  829.  
  830. <!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|BGSOUND" -- repeatable head elements -->
  831.  
  832. <![ %HTML.Deprecated [
  833.         <!ENTITY % head.content "TITLE & ISINDEX? & BASE? & NEXTID?">
  834. ]]>
  835.  
  836. <!ENTITY % head.content "TITLE & ISINDEX? & BASE?">
  837.  
  838. <!ELEMENT HEAD O O  (%head.content) +(%head.misc)>
  839.  
  840. <!ELEMENT TITLE - -  (#PCDATA)* -(%head.misc)
  841.           -- The TITLE element is not considered part of the flow of text.
  842.              It should be displayed, for example as the page header or
  843.              window title.
  844.           -->
  845.  
  846. <!ELEMENT ISINDEX - O EMPTY>
  847. <!ATTLIST ISINDEX
  848.         %attrs
  849.     prompt      CDATA   #IMPLIED -- prompt message --
  850.         action  CDATA   #IMPLIED >
  851.  
  852. <!--
  853.     The BASE element gives an absolute URL for dereferencing relative
  854.     URLs, e.g.
  855.  
  856.          <BASE href="http://foo.com/index.html">
  857.          ...
  858.          <IMG SRC="images/bar.gif">
  859.  
  860.     The image is deferenced to
  861.  
  862.          http://foo.com/images/bar.gif
  863.  
  864.    In the absence of a BASE element the document URL should be used.
  865.    Note that this is not necessarily the same as the URL used to
  866.    request the document, as the base URL may be overridden by an HTTP
  867.    header accompanying the document.
  868. -->
  869.  
  870. <!ELEMENT BASE - O EMPTY>
  871. <!ATTLIST BASE
  872.         href %URL  #REQUIRED
  873.                 target  CDATA   #IMPLIED
  874.         >
  875.  
  876. <![ %HTML.Deprecated [
  877.         <!ELEMENT NEXTID - O EMPTY>
  878.         <!ATTLIST NEXTID
  879.                 N       CDATA #REQUIRED >
  880. ]]>
  881.  
  882. <!ELEMENT META - O EMPTY -- Generic Metainformation -->
  883. <!ATTLIST META
  884.         http-equiv  NAME    #IMPLIED  -- HTTP response header name  --
  885.         name        NAME    #IMPLIED  -- metainformation name       --
  886.         content     CDATA   #REQUIRED -- associated information     --
  887.                 charset         CDATA   #IMPLIED
  888.         >
  889.  
  890. <!-- SCRIPT/STYLE are place holders for transition to next version of HTML -->
  891.  
  892. <!ELEMENT STYLE  - - (#PCDATA)*  -(%head.misc) -- style info -->
  893. <!ATTLIST STYLE
  894.         type            CDATA   #IMPLIED
  895.         title           CDATA   #IMPLIED   >
  896.  
  897. <!-- Script markup taken from WD-script-960208 found at
  898.      http://www.w3.org/pub/WWW/TR/WD-script.html -->
  899.  
  900. <!-- SCRIPT is a character-like element for embedding script code
  901.       that can be placed anywhere in the document HEAD or BODY -->
  902.  
  903. <!ENTITY % Event "CDATA" -- event name and optional param list -->
  904.  
  905. <!ELEMENT SCRIPT        - - (#PCDATA)*   -(%head.misc)>
  906. <!ATTLIST SCRIPT
  907.         %attrs;
  908.     type         CDATA    #IMPLIED -- script language media type --
  909.     language     CDATA    #IMPLIED -- predefined script language name --
  910.     src          %URL     #IMPLIED -- URL for an external script --
  911.     name             CDATA    #IMPLIED
  912.         >
  913.  
  914. <!ELEMENT NOSCRIPT - - (%body.content)>
  915. <!ATTLIST NOSCRIPT
  916.         %attrs;
  917.         >
  918.  
  919. <!--================ Document Structure ===================================-->
  920.  
  921. <!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'">
  922.  
  923. <!ELEMENT HTML O O  (HEAD, (BODY|FRAMESET) )>
  924. <!ATTLIST HTML
  925.                 %attrs
  926.         %version.attr
  927.         >
  928.  
  929. <!-- Frames -->
  930.  
  931. <!ELEMENT FRAMESET      - -     (FRAMESET|FRAME|NOFRAMES)+ >
  932. <!ATTLIST FRAMESET
  933.         %attrs;
  934.         layout  (TILES|PAGES)   TILES
  935.         rows    CDATA   #IMPLIED
  936.         cols    CDATA   #IMPLIED
  937.         framespacing    CDATA   #IMPLIED
  938.         frameborder     NUMBER  #IMPLIED
  939.         >
  940.  
  941. <!ELEMENT FRAME - O     EMPTY >
  942. <!ATTLIST FRAME
  943.         %attrs;
  944.         src             CDATA   #REQUIRED
  945.         name    CDATA   #IMPLIED
  946.         height  NUMBER  #IMPLIED
  947.         hspace  NUMBER  #IMPLIED
  948.         width   NUMBER  #IMPLIED
  949.         vspace  NUMBER  #IMPLIED
  950.         marginwidth     NUMBER #IMPLIED -- check this --
  951.         marginheight    NUMBER #IMPLIED -- check this --
  952.         frameborder     CDATA   #IMPLIED        -- need to check with IE --
  953.         framespacing    NUMBER  #IMPLIED
  954.         scrolling       (YES|NO|AUTO)   AUTO
  955.         noresize        (NORESIZE)      #IMPLIED
  956.         align   (LEFT|CENTER|RIGHT|TOP|TEXTTOP|MIDDLE|ABSMIDDLE|
  957.                 BASELINE|BOTTOM|ABSBOTTOM)      #IMPLIED
  958.         >
  959.  
  960. <!ELEMENT IFRAME        - O     EMPTY >
  961. <!ATTLIST IFRAME
  962.         %attrs;
  963.         src             CDATA   #REQUIRED
  964.         name    CDATA   #IMPLIED
  965.         marginwidth     NUMBER #IMPLIED
  966.         marginheight    NUMBER #IMPLIED
  967.         border  CDATA   #IMPLIED
  968.         frameborder     CDATA   #IMPLIED
  969.         framespacing    NUMBER  #IMPLIED
  970.         scrolling       (YES|NO|AUTO)   AUTO
  971.         noresize        (NORESIZE)      #IMPLIED
  972.         align   (LEFT|CENTER|RIGHT|TOP|MIDDLE|BOTTOM)   #IMPLIED
  973.         >
  974.  
  975. <!ELEMENT NOFRAMES      - -     %body.content >
  976.  
  977. <!-- Objects
  978.  
  979. Adapted from
  980. WD-object-960422: Inserting objects into HTM
  981. http://www.w3.org/pub/WWW/TR/WD-object.html
  982. 5/9/96
  983.  
  984. -->
  985.  
  986. <!ENTITY % OAlign "(texttop|middle|textmiddle|baseline|
  987.                             textbottom|left|center|right)">
  988.  
  989. <!-- OBJECT is a character-like element for inserting objects -->
  990. <!ELEMENT OBJECT - - (PARAM | %body.content;)*>
  991. <!ATTLIST OBJECT
  992.         %attrs      -- id, class, style, lang, dir --
  993.         declare (declare) #IMPLIED  -- declare but don't instantiate flag --
  994.         classid %URL     #IMPLIED   -- identifies an implementation --
  995.         codebase %URL    #IMPLIED   -- some systems need an additional URL --
  996.         data    %URL     #IMPLIED   -- reference to object's data --
  997.         type    CDATA    #IMPLIED   -- Internet media type for data --
  998.         codetype CDATA   #IMPLIED   -- Internet media type for code --
  999.         standby CDATA    #IMPLIED   -- message to show while loading --
  1000.         align   %OAlign #IMPLIED   -- positioning inside document --
  1001.         height  %Length  #IMPLIED   -- suggested height --
  1002.         width   %Length  #IMPLIED   -- suggested width --
  1003.         border  %Length  #IMPLIED   -- suggested link border width --
  1004.         hspace  %Length  #IMPLIED   -- suggested horizontal gutter --
  1005.         vspace  %Length  #IMPLIED   -- suggested vertical gutter --
  1006.                 ismap   (ismap)  #IMPLIED   -- use server image map --
  1007.         usemap  %URL     #IMPLIED   -- reference to image map --
  1008.         shapes  (shapes) #IMPLIED   -- object has shaped hypertext links --
  1009.         name    %URL     #IMPLIED   -- submit as part of form --
  1010.         >
  1011.  
  1012. <!ELEMENT PARAM - O EMPTY -- named property value -->
  1013. <!ATTLIST PARAM
  1014.         name      CDATA             #REQUIRED  -- property name --
  1015.         value     CDATA             #IMPLIED   -- property value --
  1016.         valuetype (DATA|REF|OBJECT) DATA       -- How to interpret value --
  1017.         type      CDATA             #IMPLIED   -- Internet media type --
  1018.         >
  1019.  
  1020. <![ %HTML.Deprecated [
  1021.  
  1022. <!ELEMENT EMBED - - (NOEMBED | %body.content;)* >
  1023. <!ATTLIST EMBED
  1024.         %attrs;
  1025.     name        CDATA   #IMPLIED
  1026.         height  CDATA   #IMPLIED
  1027.         width   CDATA   #IMPLIED
  1028.         param   CDATA   #IMPLIED
  1029.     src         %URL    #REQUIRED  -- URL of image to embed --
  1030.                 >
  1031.  
  1032. <!ELEMENT NOEMBED       - -     EMPTY>
  1033.  
  1034. ]]>
  1035.  
  1036.  
  1037.