home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1996 May / PCW596.iso / internet / browser / hotmetal / dtds.z / HTML-NET.DTD next >
Text File  |  1995-04-28  |  15KB  |  563 lines

  1.  
  2. <!--    html-mcom.dtd
  3.  
  4.         Document Type Definition for the HyperText Markup Language (HTML DTD)
  5.     with Mosaic Communications Copr Extensions
  6.  
  7.     SoftQuad SCCS @(#)pro-net.dtd    1.6 95/03/17
  8.     $Id: html-mcom.dtd,v 1.1 1994/10/06 17:42:49 connolly Exp $
  9.  
  10.     Author: Daniel W. Connolly <connolly@hal.com>
  11.     See Also: html.decl, ISOlat1.sgml
  12.           http://home.mcom.com/home/frosting.html
  13.           http://www.hal.com/%7Econnolly/html-spec/index.html
  14.           http://info.cern.ch/hypertext/WWW/MarkUp2/MarkUp.html
  15. -->
  16.  
  17. <!--     Modified by SoftQuad to add BLINK element, and START attribute on
  18.         UL, LI
  19. -->
  20.  
  21. <!ENTITY % HTML.Version
  22.     "-//Mosaic Comm. Corp.//DTD HTML//EN//2.0mcom"
  23.  
  24.         -- Typical usage:
  25.  
  26.             <!DOCTYPE HTML PUBLIC "-//Mosaic Comm. Corp.//DTD HTML//EN">
  27.         <html>
  28.         ...
  29.         </html>
  30.     --
  31.     >
  32.  
  33.  
  34. <!--================== Feature Test Entities ==============================-->
  35.  
  36. <!ENTITY % HTML.Recommended "IGNORE"
  37.     -- Certain features of the language are necessary for compatibility
  38.        with widespread usage, but they may compromise the structural
  39.        integrity of a document. This feature test entity enables
  40.        a more prescriptive document type definition that eliminates
  41.        the above features.
  42.     -->
  43.  
  44. <![ %HTML.Recommended [
  45.     <!ENTITY % HTML.Deprecated "IGNORE">
  46. ]]>
  47.  
  48. <!ENTITY % HTML.Deprecated "INCLUDE"
  49.     -- Certain features of the language are necessary for compatibility
  50.        with earlier versions of the specification, but they tend
  51.        to be used an implemented inconsistently, and their use is
  52.        deprecated. This feature test entity enables a document type
  53.        definition that eliminates these features.
  54.     -->
  55.  
  56. <!ENTITY % HTML.Highlighting "INCLUDE">
  57. <!ENTITY % HTML.Forms "INCLUDE">
  58.  
  59. <!--================== Imported Names =====================================-->
  60.  
  61. <!ENTITY % Content-Type "CDATA"
  62.     -- meaning a MIME content type, as per RFC1521
  63.     -->
  64.  
  65. <!ENTITY % HTTP-Method "GET | POST"
  66.     -- as per HTTP specification
  67.     -->
  68.  
  69. <!ENTITY % URI "CDATA"
  70.         -- The term URI means a CDATA attribute
  71.            whose value is a Uniform Resource Identifier,
  72.            as defined by 
  73.     "Universal Resource Identifiers" by Tim Berners-Lee
  74.     aka http://info.cern.ch/hypertext/WWW/Addressing/URL/URI_Overview.html
  75.     aka RFC 1630
  76.  
  77.     Note that CDATA attributes are limited by the LITLEN
  78.     capacity (1024 in the current version of html.decl),
  79.     so that URIs in HTML have a bounded length.
  80.  
  81.         -->
  82.  
  83.  
  84. <!-- DTD "macros" -->
  85.  
  86. <!ENTITY % heading "H1|H2|H3|H4|H5|H6">
  87.  
  88. <!ENTITY % list " UL | OL | DIR | MENU " >
  89.  
  90.  
  91. <!--================ Character mnemonic entities ==========================-->
  92.  
  93. <!ENTITY % ISOlat1 SYSTEM "lat1html.ent">
  94. %ISOlat1;
  95.  
  96. <!ENTITY amp SDATA "&"     -- ampersand          -->
  97. <!ENTITY gt SDATA ">"      -- greater than       -->
  98. <!ENTITY lt SDATA "<"      -- less than          -->
  99. <!ENTITY quot SDATA '"'    -- double quote       -->
  100.  
  101. <!ENTITY reg  CDATA "®"    -- registered trademark -->
  102. <!ENTITY copy CDATA "©"    -- copyright            -->
  103.  
  104. <!--=================== Text Markup =======================================-->
  105.  
  106. <![ %HTML.Highlighting [
  107.  
  108. <!ENTITY % font " TT | B | I | FONT">
  109.  
  110. <!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | CITE ">
  111.  
  112. <!ENTITY % text "#PCDATA | A | IMG | BR | WBR | NOBR | CENTER | BASEFONT
  113.          | BLINK | %phrase | %font">
  114.  
  115. <!ENTITY % pre.content "#PCDATA | A | HR | BR | %font | %phrase">
  116.  
  117. <!ELEMENT (%font;|%phrase) - - (%text)+>
  118.  
  119. <!ELEMENT basefont - - ANY>
  120. <!ATTLIST (font|basefont)
  121.     SIZE CDATA #REQUIRED -- should be NUTOKEN, using size=plus3, e.g.-->
  122. ]]>
  123.  
  124. <!ENTITY % text "#PCDATA | A | IMG | BR | WBR | NOBR | CENTER">
  125.  
  126. <!ELEMENT BLINK - - ANY>
  127.  
  128. <!ELEMENT CENTER - - ANY>
  129.  
  130. <!ELEMENT BR    - O EMPTY>
  131. <!ATTLIST BR
  132.     CLEAR (left|right|all) #IMPLIED>
  133.  
  134. <!ELEMENT NOBR - - (%text)+>
  135. <!ELEMENT WBR  - O EMPTY>
  136.  
  137. <!--================== Link Markup ========================================-->
  138.  
  139. <![ %HTML.Recommended [
  140.     <!ENTITY % linkName "ID">
  141. ]]>
  142.  
  143. <!ENTITY % linkName "CDATA">
  144.  
  145. <!ENTITY % linkType "NAME"
  146.     -- a list of these will be specified at a later date -->
  147.  
  148. <!ENTITY % linkExtraAttributes
  149.         "REL %linkType #IMPLIED -- forward relationship type --
  150.         REV %linkType #IMPLIED -- reversed relationship type
  151.                               to referent data --
  152.         URN CDATA #IMPLIED -- universal resource number --
  153.  
  154.         TITLE CDATA #IMPLIED -- advisory only --
  155.         METHODS NAMES #IMPLIED -- supported public methods of the object:
  156.                                         TEXTSEARCH, GET, HEAD, ... --
  157.         ">
  158.  
  159. <![ %HTML.Recommended [
  160.     <!ENTITY % A.content   "(%text)+"
  161.     -- <H1><a name="xxx">Heading</a></H1>
  162.         is preferred to
  163.        <a name="xxx"><H1>Heading</H1></a>
  164.     -->
  165. ]]>
  166.  
  167. <!ENTITY % A.content   "(%heading|%text)+">
  168.  
  169. <!ELEMENT A     - - %A.content -(A)>
  170.  
  171. <!ATTLIST A
  172.     HREF %URI #IMPLIED
  173.     NAME %linkName #IMPLIED
  174.         %linkExtraAttributes;
  175.         >
  176.  
  177. <!--=================== Images ============================================-->
  178.  
  179. <!ENTITY % img.alt.default "#IMPLIED"
  180.     -- ALT attribute required in Level 0 docs -->
  181.  
  182. <!ELEMENT IMG    - O EMPTY --  Embedded image -->
  183. <!ATTLIST IMG
  184.         SRC %URI;  #REQUIRED     -- URI of document to embed --
  185.     ALT CDATA %img.alt.default;
  186.     ALIGN (left|right|top|texttop|middle|
  187.         absmiddle|baseline|bottom|absbottom) baseline
  188.     WIDTH NUMBER #IMPLIED
  189.     HEIGHT NUMBER #IMPLIED
  190.     BORDER NUMBER #IMPLIED
  191.     VSPACE NUMBER #IMPLIED
  192.     HSPACE NUMBER #IMPLIED
  193.         ISMAP (ISMAP) #IMPLIED
  194.         >
  195.  
  196.  
  197. <!--=================== Paragraphs=========================================-->
  198.  
  199. <!ELEMENT P     - O (%text)+>
  200.  
  201.  
  202. <!--=================== Headings, Titles, Sections ========================-->
  203.  
  204. <!ELEMENT HR    - O EMPTY -- horizontal rule -->
  205. <!ATTLIST HR
  206.     SIZE NUMBER #IMPLIED
  207.     WIDTH NUTOKEN #IMPLIED
  208.     ALIGN (left|right|center) #IMPLIED
  209.     NOSHADE (NOSHADE) #IMPLIED>
  210.  
  211. <!ELEMENT ( %heading )  - -  (%text;)+>
  212.  
  213. <!ELEMENT TITLE - -  (#PCDATA) -(META|LINK)
  214.           -- The TITLE element is not considered part of the flow of text.
  215.              It should be displayed, for example as the page header or
  216.              window title.
  217.           -->
  218.  
  219.  
  220. <!--=================== Text Flows ========================================-->
  221.  
  222. <![ %HTML.Forms [
  223.     <!ENTITY % block.forms "| FORM | ISINDEX">
  224. ]]>
  225.  
  226. <!ENTITY % block.forms "">
  227.  
  228. <![ %HTML.Deprecated [
  229.     <!ENTITY % preformatted "PRE | XMP | LISTING">
  230. ]]>
  231.  
  232. <!ENTITY % preformatted "PRE">
  233.  
  234. <!ENTITY % block "P | %list | DL
  235.     | %preformatted
  236.     | BLOCKQUOTE %block.forms">
  237.  
  238. <!ENTITY % flow "(%text|%block)*">
  239.  
  240. <!ENTITY % pre.content "#PCDATA | A | HR | BR">
  241. <!ELEMENT PRE - - (%pre.content)+>
  242.  
  243. <!ATTLIST PRE
  244.         WIDTH NUMBER #implied
  245.         >
  246.  
  247. <![ %HTML.Deprecated [
  248.  
  249. <!ENTITY % literal "CDATA"
  250.     -- special non-conforming parsing mode where
  251.        the only markup signal is the end tag
  252.        in full
  253.     -->
  254.  
  255. <!ELEMENT XMP - -  %literal>
  256. <!ELEMENT LISTING - -  %literal>
  257. <!ELEMENT PLAINTEXT - O %literal>
  258.  
  259. ]]>
  260.  
  261.  
  262. <!--=================== Lists =============================================-->
  263.  
  264. <!ELEMENT DL    - -  (DT*, DD?)+>
  265. <!ATTLIST DL
  266.     COMPACT (COMPACT) #IMPLIED>
  267.  
  268. <!ELEMENT DT    - O (%text)+>
  269. <!ELEMENT DD    - O %flow>
  270.  
  271. <!ELEMENT (OL|UL) - -  (LI)+>
  272. <!ELEMENT (DIR|MENU) - -  (LI)+ -(%block)>
  273. <!ATTLIST (UL)
  274.     COMPACT (COMPACT) #IMPLIED
  275.     TYPE CDATA #IMPLIED
  276.         START NUMBER #IMPLIED
  277.     >
  278. <!ATTLIST (OL)
  279.     COMPACT (COMPACT) #IMPLIED
  280.     TYPE CDATA "1"
  281.     >
  282.  
  283. <!ELEMENT LI    - O %flow>
  284. <!ATTLIST LI
  285.     TYPE CDATA #IMPLIED
  286.     VALUE CDATA #implied
  287.         START NUMBER #IMPLIED
  288. >
  289.  
  290. <!--=================== Document Body =====================================-->
  291.  
  292. <![ %HTML.Recommended [
  293.     <!ENTITY % body.content "(%heading|%block|HR|ADDRESS)*"
  294.     -- <h1>Heading</h1>
  295.        <p>Text ...
  296.         is preferred to
  297.        <h1>Heading</h1>
  298.        Text ...
  299.     -->
  300. ]]>
  301.  
  302. <!ENTITY % body.content "(%heading | %text | %block | HR | ADDRESS | TABLE )*">
  303.  
  304. <!ELEMENT BODY O O  %body.content>
  305.  
  306. <!ELEMENT BLOCKQUOTE - - %body.content>
  307.  
  308. <![ %HTML.Recommended [
  309.     <!ENTITY % address.content "(%text)*">
  310. ]]>
  311. <!ENTITY % address.content "(%text|P)*">
  312. <!ELEMENT ADDRESS - - %address.content>
  313.  
  314.  
  315. <!--================ Forms ===============================================-->
  316.  
  317. <![ %HTML.Forms [
  318.  
  319. <!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)>
  320. <!ATTLIST FORM
  321.     ACTION %URI #REQUIRED
  322.     METHOD (%HTTP-Method) GET
  323.     ENCTYPE %Content-Type; "application/x-www-form-urlencoded"
  324.     >
  325.  
  326. <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX |
  327.             RADIO | SUBMIT | RESET |
  328.             IMAGE | HIDDEN )">
  329. <!ELEMENT INPUT - O EMPTY>
  330. <!ATTLIST INPUT
  331.     TYPE %InputType TEXT
  332.     NAME CDATA #IMPLIED -- required for all but submit and reset --
  333.     VALUE CDATA #IMPLIED
  334.     SRC %URI #IMPLIED -- for image inputs -- 
  335.     CHECKED (CHECKED) #IMPLIED
  336.     SIZE CDATA #IMPLIED -- like NUMBERS,
  337.                  but delimited with comma, not space --
  338.     MAXLENGTH NUMBER #IMPLIED
  339.     ALIGN (top|middle|bottom) #IMPLIED
  340.     >
  341.  
  342. <!ELEMENT SELECT - - (OPTION+)>
  343. <!ATTLIST SELECT
  344.     NAME CDATA #REQUIRED
  345.     SIZE NUMBER #IMPLIED
  346.     MULTIPLE (MULTIPLE) #IMPLIED
  347.     >
  348.  
  349. <!ELEMENT OPTION - O (#PCDATA)>
  350. <!ATTLIST OPTION
  351.     SELECTED (SELECTED) #IMPLIED
  352.     VALUE CDATA #IMPLIED
  353.     >
  354.  
  355. <!ELEMENT TEXTAREA - - (#PCDATA)>
  356. <!ATTLIST TEXTAREA
  357.     NAME CDATA #REQUIRED
  358.     ROWS NUMBER #REQUIRED
  359.     COLS NUMBER #REQUIRED
  360.     >
  361.  
  362. ]]>
  363.  
  364.  
  365. <!--================ Document Head ========================================-->
  366.  
  367. <!ENTITY % head.link "& LINK*">
  368.  
  369. <![ %HTML.Recommended [
  370.     <!ENTITY % head.nextid "">
  371. ]]>
  372. <!ENTITY % head.nextid "& NEXTID?">
  373.  
  374. <!ENTITY % head.content "TITLE & ISINDEX? & BASE? %head.nextid">
  375.  
  376. <!ELEMENT HEAD O O  (%head.content) +(META|LINK)>
  377.  
  378. <!ELEMENT LINK - O EMPTY>
  379. <!ATTLIST LINK
  380.     HREF %URI #REQUIRED
  381.         %linkExtraAttributes; >
  382.  
  383. <!ELEMENT ISINDEX - O EMPTY>
  384. <!ATTLIST ISINDEX
  385.     PROMPT CDATA "This is a searchable index. Enter search keywords:">
  386.  
  387. <!ELEMENT BASE - O EMPTY>
  388. <!ATTLIST BASE
  389.         HREF %URI; #REQUIRED
  390.         >
  391.  
  392. <!ELEMENT NEXTID - O EMPTY>
  393. <!ATTLIST NEXTID N %linkName #REQUIRED>
  394.  
  395. <!ELEMENT META - O EMPTY    -- Generic Metainformation -->
  396. <!ATTLIST META
  397.         HTTP-EQUIV  NAME    #IMPLIED  -- HTTP response header name  --
  398.         NAME        NAME    #IMPLIED  -- metainformation name       --
  399.         CONTENT     CDATA   #REQUIRED -- associated information     --
  400.         >
  401.  
  402. <!--================= Tables : Added Support for HoTMetaL =================-->
  403.  
  404. <!-- Tables -->
  405.  
  406. <!--   
  407.     SoftQuad's Canonical Table DTD fragment modified for compatibility
  408.     with the proposed ICADD-HTML harmonized table model.
  409.  
  410.     Copyright (c) 1991, 1994, 1995 by SoftQuad Inc.
  411.  
  412.     This DTD fragment defines the table structure used internally by
  413.     SoftQuad Author/Editor and uses names from the proposed
  414.     ICADD-HTML model.
  415.  
  416.     It expects there to be a table.map file point to by SQCONFIG
  417.     and containing the following lines:
  418. THEAD COLDEFS COLDEF HDROWS HDROW TH
  419. TBODY COLDEFS COLDEF ROWS TR  TH
  420. TBODY COLDEFS COLDEF ROWS TR  THSUB
  421. TBODY COLDEFS COLDEF ROWS TR  TD
  422.  
  423. The CellMdl parameter entity should be modified to the current proposed
  424. model for table cells.
  425. -->
  426.  
  427. <!ENTITY % TblBody    "(THead | TBody | TFoot)">
  428. <!ENTITY % TblCDfs    "ColDefs">
  429. <!ENTITY % TblCDef    "ColDef">
  430. <!ENTITY % TblRows    "(HdRows|Rows)">
  431. <!ENTITY % TblRow          "(HdRow|TR)">
  432. <!ENTITY % TblCell    "(TD|TH|THSUB)">
  433. <!ENTITY % CellMdl    "(#PCDATA|P|%heading|%list)* ">
  434.  
  435. <!ENTITY % VBorder
  436.     "(VSingle|VDouble|VTriple|VDash|VDot|VBold|VBlank|VNone)">
  437. <!ENTITY % HBorder
  438.     "(HSingle|HDouble|HTriple|HDash|HDot|HBold|HBlank|HNone)">
  439. <!ENTITY % VAlign  "(Top|Middle|Bottom)">
  440. <!ENTITY % HAlign  "(Left|Both|Center|Right|Char)">
  441.  
  442. <!ENTITY % TblUnit    "(percent|pixels|points|picas|mm|cm|inches)">
  443.  
  444. <!ENTITY % RProps
  445.     'RowSep        %HBorder;  #IMPLIED
  446.      VAlign        %VAlign;   #IMPLIED'>
  447. <!ENTITY % CProps
  448.     'ColSep        %VBorder;    #IMPLIED
  449.      HAlign        %HAlign;    #IMPLIED
  450.      AlignChr    CDATA        #IMPLIED
  451.      CharPos    CDATA        #IMPLIED'>
  452.  
  453. <!ELEMENT TABLE    - O (Caption?, THead?, TBody, TFoot?) >
  454. <!ATTLIST TABLE
  455.     Border    (Border|0|1|2|3|4|5|6|8|10|12|16|24)    #REQUIRED
  456.  
  457.     CellSpacing    NUMBER    #IMPLIED
  458.     CellPadding    NUMBER    #IMPLIED
  459.     Width    CDATA    #IMPLIED
  460. >
  461.  
  462. <!-- TblBody is the top-level table element -->
  463. <!ELEMENT (TFoot|TBody)     O O    ((%TblCDfs;), (Rows))>
  464. <!ELEMENT THead    O O    ((%TblCDfs;), (HdRows))>
  465. <!ATTLIST %TblBody;
  466.     TblWd        CDATA        #IMPLIED
  467.     TblHt        CDATA        #IMPLIED
  468.     TblUnits    %TblUnit;    #IMPLIED
  469. >
  470.  
  471. <!-- Table Column Definitions: -->
  472. <!ELEMENT %TblCDfs;     O O    (%TblCDef;)+>
  473. <!ATTLIST %TblCDfs;
  474.     -- CProps with default values to apply to all columns --
  475.     ColSep        %VBorder;    "VSingle"
  476.     HAlign        %HAlign;    "Left"
  477.     AlignChr    CDATA        #IMPLIED
  478.     CharPos        CDATA        #IMPLIED
  479.     -- default width for all cells in all columns --
  480.     ColWd        CDATA        #IMPLIED
  481.     TblUnits    %TblUnit;    #IMPLIED
  482.     -- default top border for all cells in row 1 --
  483.     TopSep        %HBorder;    "HSingle"
  484. >
  485. <!-- there is exactly one TblCDef for each column in the table -->
  486. <!ELEMENT %TblCDef;     O O    EMPTY -- Only exists to hold attributes -->
  487. <!ATTLIST %TblCDef;
  488.     %CProps;        -- overrides settings in TblCDfs --
  489.     -- width for all cells in this column --
  490.     ColWd        CDATA        #IMPLIED
  491.     TblUnits    %TblUnit;    #IMPLIED
  492.     -- top border for cell in row 1 --
  493.     TopSep        %HBorder;    #IMPLIED    -- overrides TblCDfs defn --
  494. >
  495.  
  496. <!-- Table Rows: -->
  497. <!ELEMENT Rows     O O    (TR)+>
  498. <!ELEMENT HdRows    O O    (HdRow)+>
  499. <!ATTLIST %TblRows;
  500.     -- RProps with default values to apply to all rows --
  501.     RowSep        %HBorder;    "HSingle"
  502.     VAlign        %VAlign;    "Top"
  503.     -- default height of all rows --
  504.     RowHt        CDATA        #IMPLIED
  505.     TblUnits    %TblUnit;    #IMPLIED
  506.     -- default left border for all cells in column 1 --
  507.     LeftSep        %VBorder    "VSingle"
  508. >
  509. <!ELEMENT %TblRow;     - O    (TH*,THSUB*,TD*)>
  510. <!ATTLIST %TblRow;
  511.     %RProps;    -- can override settings in TblRows --
  512.     -- height of this row --
  513.     RowHt        CDATA        #IMPLIED
  514.     TblUnits    %TblUnit;    #IMPLIED
  515.     -- left border for cell in column 1 --
  516.     LeftSep        %VBorder    #IMPLIED    -- overrides TblRows setting --
  517. >
  518.  
  519. <!-- Table Cells -->
  520. <!ELEMENT %TblCell;     - -    %CellMdl;>
  521. <!ATTLIST TD
  522.     %RProps;        -- can override settings in TblRow --
  523.     %CProps;        -- can override settings in TblCDef --
  524.     -- cell positioning --
  525.     ColStart    NUMBER        #IMPLIED
  526.     ColSpan        NUMBER        "1"        -- span >= 1 --
  527.     RowStart    NUMBER        #IMPLIED
  528.     RowSpan        NUMBER        "1"        -- span >= 1 --
  529.     axes CDATA #IMPLIED -- comma separated list of axis names --
  530. >
  531.  
  532. <!ATTLIST (TH | THSUB)
  533.     %RProps;        -- can override settings in TblRow --
  534.     %CProps;        -- can override settings in TblCDef --
  535.     -- cell positioning --
  536.     ColStart    NUMBER        #IMPLIED
  537.     ColSpan        NUMBER        "1"        -- span >= 1 --
  538.     RowStart    NUMBER        #IMPLIED
  539.     RowSpan        NUMBER        "1"        -- span >= 1 --
  540.     axis CDATA #IMPLIED -- axis name, defaults to element content --
  541. >
  542.  
  543. <!ELEMENT  caption        - O  (#PCDATA) >
  544. <!ATTLIST caption
  545.     Align    (top|bottom)    top
  546. >
  547.  
  548. <!--================ Document Structure ===================================-->
  549.  
  550. <![ %HTML.Deprecated [
  551.     <!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
  552. ]]>
  553. <!ENTITY % html.content "HEAD, BODY">
  554.  
  555. <!ELEMENT HTML O O  (%html.content)>
  556. <!ENTITY % version.attr "VERSION CDATA #FIXED "%HTML.Version;"">
  557.  
  558. <!ATTLIST HTML
  559.     %version.attr;-- report DTD version to application --
  560.     >
  561.  
  562.  
  563.