/[pub]/test/html.dtd
Suika

Diff of /test/html.dtd

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.9 by connolly, Thu Apr 14 01:23:26 1994 UTC revision 1.13 by connolly, Wed May 18 17:23:29 1994 UTC
# Line 1  Line 1 
1  <!--    html.dtd  <!--    html.dtd
2    
3          Document Type Definition for the HyperText Markup Language          Document Type Definition for the HyperText Markup Language
4          as used by the World Wide Web application (HTML DTD).          as used by the World Wide Web (HTML DTD).
5    
6          $Id$          $Id$
7    
8            Author: Daniel W. Connolly <connolly@hal.com>
9            See Also: http://www.hal.com/%7Econnolly/html-spec/HTML.html
10                      http://info.cern.ch/hypertext/WWW/MarkUp/MarkUp.html
11  -->  -->
12    
13    <!ENTITY HTML.Version
14            "-//connolly hal.com//DTD WWW HTML $Date 1994/04/19 17:24:06 $//EN"
15            -- public identifier for "current pracitice" version             --
16            -- actually, take the $'s out to get the real public identifer,  --
17            -- since $ is illegal in public identifier. When DTD stabilizes, --
18            -- we'll need to stop using RCS keywords to version the pub id   --
19    
20            -- Typical usage:
21    
22                <!DOCTYPE HTML PUBLIC "-//connolly hal.com//DTD WWW HTML
23                                                    $Date$//EN">
24                <html>
25                ...
26                </html>
27            --
28            >
29    
30    
31  <!-- Feature Test Entities -->  <!-- Feature Test Entities -->
32    
33  <!-- To use these, write your document like:  <!-- To use these, write your document like:
# Line 25  Line 47 
47    
48  <!ENTITY % HTML.Minimal  "IGNORE">  <!ENTITY % HTML.Minimal  "IGNORE">
49  <!ENTITY % HTML.Obsolete "IGNORE">  <!ENTITY % HTML.Obsolete "IGNORE">
50    <!ENTITY % HTML.Prescriptive "IGNORE">
51    
52  <![ %HTML.Minimal [  <![ %HTML.Minimal [
53          <!ENTITY % HTML.linkRelationships "IGNORE">          <!ENTITY % HTML.linkRelationships "IGNORE">
# Line 33  Line 56 
56          <!ENTITY % HTML.forms "IGNORE">          <!ENTITY % HTML.forms "IGNORE">
57          <!-- @@ nested lists -->          <!-- @@ nested lists -->
58          <!-- @@ phrases -->          <!-- @@ phrases -->
59            <!-- @@ headers inside A -->
60            <!-- @@ nested phrases, fonts -->
61          ]]>          ]]>
62                    
63  <![ %HTML.Obsolete [  <![ %HTML.Obsolete [
         <!ENTITY % HTML.PLAINTEXT "INCLUDE">  
64          <!ENTITY % HTML.titleCDATA "INCLUDE">          <!ENTITY % HTML.titleCDATA "INCLUDE">
65          <!ENTITY % HTML.litCDATA "INCLUDE">          <!ENTITY % HTML.litCDATA "INCLUDE">
         <!ENTITY % HTML.font-phrase "INCLUDE">  
         <!ENTITY % HTML.anchorNameCDATA "INCLUDE">  
66          <!ENTITY % HTML.pSeparator "INCLUDE">          <!ENTITY % HTML.pSeparator "INCLUDE">
67          ]]>          ]]>
68    
69  <!ENTITY % HTML.GO "IGNORE"  <![ %HTML.Prescriptive [
70          -- The GO element used in ORA GNN. What is this??? -->          <!--
71            This feature test entity prescribes that certain
72  <!ENTITY % HTML.aEndOmissable "IGNORE"          idioms detract from the structural integrity of an
73          -- infer </A> tags, as in ORA GNN stuff -->          HTML document, and are therefore disallowed.
74            -->
75            <!ENTITY % HTML.font-phrase "IGNORE">
76            <!ENTITY % HTML.anchorNameCDATA "IGNORE">
77            <!ENTITY % HTML.PLAINTEXT "IGNORE">
78            <!ENTITY % HTML.bodyBlockOnly "INCLUDE">
79            ]]>
80    
81  <!ENTITY % HTML.isindexAtEnd "IGNORE"  <!ENTITY % HTML.bodyBlockOnly "IGNORE"
82          -- allow ISINDEX after HEAD and BODY, as in ORA GNN stuff -->          -- only allow block elements in the BODY element
83            This means all paragraphs need to start with a <P> tag.
84            -->
85    
86  <!ENTITY % HTML.pSeparator "IGNORE"  <!ENTITY % HTML.pSeparator "IGNORE"
87          -- use P element as paragraph separator, rather that container.          -- use P element as paragraph separator, rather that container.
         This means not all paragraphs need to start with a <P> tag.  
88          -->          -->
89    
90  <!ENTITY % HTML.linkRelationships "INCLUDE"  <!ENTITY % HTML.linkRelationships "INCLUDE"
# Line 75  Line 104 
104          like URN, content type, title...          like URN, content type, title...
105          -->          -->
106    
107  <!ENTITY % HTML.anchorNameCDATA "IGNORE"  <!ENTITY % HTML.anchorNameCDATA "INCLUDE"
108          -- Anchor names should be distinct. SGML parser can validate          -- Anchor names should be distinct. SGML parser can validate
109          this if the NAME attribute of the A element is declared as ID.          this if the NAME attribute of the A element is declared as ID.
110          But that restricts the syntax of an anchor name to an SGML name,          But that restricts the syntax of an anchor name to an SGML name,
# Line 83  Line 112 
112          up to NAMELEN (34) characters long.          up to NAMELEN (34) characters long.
113          -->          -->
114    
115  <!ENTITY % HTML.PLAINTEXT "IGNORE"  <!ENTITY % HTML.PLAINTEXT "INCLUDE"
116          -- Support for the <PLAINTEXT> tag as a sign of the          -- Support for the <PLAINTEXT> tag as a sign of the
117          end of th HTML data stream and the beginning of a stream          end of th HTML data stream and the beginning of a stream
118          of text/plain data          of text/plain data
# Line 100  Line 129 
129          next anchor id to use          next anchor id to use
130          -->          -->
131    
132  <!ENTITY % HTML.font-phrase "IGNORE"  <!ENTITY % HTML.font-phrase "INCLUDE"
133          -- allow B, I, TT, U outside PRE,          -- allow B, I, TT, U outside PRE,
134          CITE, VAR, etc. inside PRE          CITE, VAR, etc. inside PRE
135          -->          -->
136    
137    <!ENTITY % HTML.KEY "IGNORE"
138            -- There was once a KEY element, for keyboard keys, menu items,
139            buttons, etc. but it's not supported or widely documented
140            -->
141    
142    <!ENTITY % HTML.U "IGNORE"
143            -- There was also a U element, but since it clashes with
144            the common pracitce of underlining hypertext links, it is
145            not widely supported
146            -->
147    
148  <!ENTITY % HTML.litCDATA "IGNORE"  <!ENTITY % HTML.litCDATA "IGNORE"
149          -- treat XMP, LISTING as CDATA, as per linemodeWWW          -- treat XMP, LISTING as CDATA, as per linemodeWWW
150          -->          -->
# Line 130  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 170  http://www.ncsa.uiuc.edu/SDG/Software/Mo
170          Note that CDATA attributes are limited by the LITLEN          Note that CDATA attributes are limited by the LITLEN
171          capacity (1024 in the current version of html.decl),          capacity (1024 in the current version of html.decl),
172          so that URIs in HTML have a bounded length.          so that URIs in HTML have a bounded length.
173    
174            @@ Need to discuss relative addresses.
175          -->          -->
176    
177  <!ENTITY % Content-Type "CDATA"  <!ENTITY % Content-Type "CDATA"
178          -- meaning a MIME content type, as per RFC1341 or any of its updates.          -- meaning a MIME content type, as per RFC1521
179          -->          -->
180    
181  <![ %HTML.anchorNameCDATA [ <!ENTITY % anchor-name "CDATA"> ]]>  <![ %HTML.anchorNameCDATA [ <!ENTITY % anchor-name "CDATA"> ]]>
# Line 176  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 218  http://www.ncsa.uiuc.edu/SDG/Software/Mo
218    
219  <![ %HTML.PLAINTEXT [ <!ENTITY % obsolete-plaintext ", PLAINTEXT?"> ]]>  <![ %HTML.PLAINTEXT [ <!ENTITY % obsolete-plaintext ", PLAINTEXT?"> ]]>
220  <!ENTITY % obsolete-plaintext "">  <!ENTITY % obsolete-plaintext "">
 <![ %HTML.isindexAtEnd [ <!ENTITY % end-isindex ", ISINDEX?"> ]]>  
 <!ENTITY % end-isindex "">  
221    
222  <!ENTITY % html-content "HEAD, BODY %obsolete-plaintext; %end-isindex">  <!ENTITY % html-content "HEAD, BODY %obsolete-plaintext;">
223  <!ELEMENT HTML O O  (%html-content)>  <!ELEMENT HTML O O  (%html-content)>
224    
225  <![ %HTML.NEXTID [  <!ENTITY % head-content "TITLE? & ISINDEX? & LINK* & BASE?  <![ %HTML.NEXTID [  <!ENTITY % head-content "TITLE? & ISINDEX? & LINK* & BASE?
# Line 213  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 253  http://www.ncsa.uiuc.edu/SDG/Software/Mo
253  <!ELEMENT BASE - O EMPTY    -- Reference context for URIs -->  <!ELEMENT BASE - O EMPTY    -- Reference context for URIs -->
254  <!ATTLIST BASE  <!ATTLIST BASE
255    
256          HREF %URI; #IMPLIED          HREF %URI; #REQUIRED
257    
258          >          >
259    
260  <!ENTITY % font "TT | B | I | U ">  <![ %HTML.KEY [
261  <!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | KEY | VAR | DFN | CITE">          <!ENTITY % key-emph "| KEY">
262            ]]>
263    <!ENTITY % key-emph "">
264    
265    <![ %HTML.U [
266            <!ENTITY % u-font "| U">
267            ]]>
268    <!ENTITY % u-font "">
269    
270    <!ENTITY % font "TT | B | I %u-font">
271    <!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | DFN | CITE
272             | STRIKE %key-emph">
273    
274    
275  <![ %HTML.font-phrase [  <![ %HTML.font-phrase [
276          <!ENTITY % obsolete-font "| %font">          <!ENTITY % obsolete-font "| %font">
# Line 234  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 286  http://www.ncsa.uiuc.edu/SDG/Software/Mo
286  <!ENTITY % inline "%phrase %obsolete-font">  <!ENTITY % inline "%phrase %obsolete-font">
287  <!ENTITY % pre-inline "%font %obsolete-phrase %obsolete-p">  <!ENTITY % pre-inline "%font %obsolete-phrase %obsolete-p">
288    
289  <![ %HTML.GO [  <!ENTITY % text "#PCDATA | IMG | %inline | BR %obsolete-p">
         <!ELEMENT GO - O EMPTY>  
         <!ENTITY % go-text "| GO">  
         ]]>  
 <!ENTITY % go-text "">  
   
 <!ENTITY % text "#PCDATA | IMG | %inline | BR %go-text %obsolete-p">  
290    
291  <!ENTITY % htext "A | %text"    -- Plus links, no structure -->  <!ENTITY % htext "A | %text"    -- Plus links, no structure -->
292    
# Line 267  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 313  http://www.ncsa.uiuc.edu/SDG/Software/Mo
313                  %block-form %block-p">                  %block-form %block-p">
314    
315    
316  <!ENTITY % body-content "%heading | %block %obsolete-htext">  <![ %HTML.bodyBlockOnly [
317  <!ELEMENT BODY O O  (%body-content)*>          <!ENTITY % current-htext "">
318            ]]>
319    <!ENTITY % current-htext "| %htext">
320    
321    <!ENTITY % body-content "%heading | %block %current-htext">
322    <!ELEMENT BODY O O  (%body-content)*>
323    
 <![ %HTML.aEndOmissable [ <!ENTITY % a-end "O"> ]]>  
 <!ENTITY % a-end "-">  
324    
325  <!ELEMENT A     - %a-end (%heading|%block|%text)+ -(A)  <!ELEMENT A     - - (%heading|%block|%text)+ -(A)
326          -- @# Technically, this allows silliness like:          -- @# Technically, this allows silliness like:
327                  <H2><A>xyz<H1>h1</H1></A></H2>                  <H2><A>xyz<H1>h1</H1></A></H2>
328          The right way to do anchors outside of %htext is more like:          The right way to do anchors outside of %htext is more like:
# Line 303  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 351  http://www.ncsa.uiuc.edu/SDG/Software/Mo
351    
352  <!ELEMENT DL    - -  (DT*, DD?)+>  <!ELEMENT DL    - -  (DT*, DD?)+>
353  <!ATTLIST DL  <!ATTLIST DL
354          STYLE (COMPACT) #IMPLIED>          COMPACT (COMPACT) #IMPLIED>
355    
356  <!ELEMENT DT    - O (%htext)+>  <!ELEMENT DT    - O (%htext)+>
357  <!ELEMENT DD    - O (%htext|%block)+>  <!ELEMENT DD    - O (%htext|%block)+>
# Line 315  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 363  http://www.ncsa.uiuc.edu/SDG/Software/Mo
363  <!ELEMENT BLOCKQUOTE - - (%htext|%block)+ -- @# Hmm... --  <!ELEMENT BLOCKQUOTE - - (%htext|%block)+ -- @# Hmm... --
364          -- for quoting some other source -->          -- for quoting some other source -->
365    
366  <!ELEMENT ADDRESS - - (%htext;)+>  <!ELEMENT ADDRESS - - (%htext;|%block)+>
367    
368  <!ELEMENT PRE - - (#PCDATA|%pre-inline|A)+>  <!ELEMENT PRE - - (#PCDATA|%pre-inline|A)+>
369  <!ATTLIST PRE  <!ATTLIST PRE
# Line 328  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 376  http://www.ncsa.uiuc.edu/SDG/Software/Mo
376    "ISO 8879:1986//ENTITIES Added Latin 1//EN">    "ISO 8879:1986//ENTITIES Added Latin 1//EN">
377  %ISOlat1;  %ISOlat1;
378    
379  <!ENTITY amp "&#38;"     -- ampersand -->  <!ENTITY #DEFAULT SDATA "&#38;unkown;" --display the markup-->
380  <!ENTITY gt "&#62;"      -- greater than -->  <!ENTITY amp CDATA "&#38;"     -- ampersand -->
381  <!ENTITY lt "&#60;"      -- less than -->  <!ENTITY gt CDATA "&#62;"      -- greater than -->
382    <!ENTITY lt CDATA "&#60;"      -- less than -->
383    <!ENTITY quot CDATA "&#34;"    -- double quote -->
384    
385    <!-- Processing Entities -->
386    
387  <!ENTITY nbsp "<? nonbreaking-space>">  <!ENTITY nbsp "<? nonbreaking-space>">
388  <!-- @# should add entites for processing instructions  <!-- @# should add entites for processing instructions
389          for line break, centering, etc. -->          for line break, centering, etc. -->
390    
391    
 <![ %HTML.litCDATA [ <!ENTITY % lit-content "CDATA"> ]]>  
 <!ENTITY % lit-content "RCDATA">  
 <!ELEMENT (%literal) - -  %lit-content>  
   
 <![ %HTML.PLAINTEXT [  
 <!ELEMENT PLAINTEXT - O EMPTY>  
 ]]>  
   
   
392  <!-- Forms  -->  <!-- Forms  -->
393  <![ %HTML.forms [  <![ %HTML.forms [
394    
# Line 365  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 409  http://www.ncsa.uiuc.edu/SDG/Software/Mo
409          NAME CDATA #IMPLIED -- required for all but submit and reset --          NAME CDATA #IMPLIED -- required for all but submit and reset --
410          VALUE CDATA #IMPLIED          VALUE CDATA #IMPLIED
411          SRC %URI #IMPLIED -- for image inputs --          SRC %URI #IMPLIED -- for image inputs --
412          STATE (CHECKED) #IMPLIED          CHECKED (CHECKED) #IMPLIED
413          SIZE CDATA #IMPLIED -- @# should be NUMBERS: delimit with space, not comma --          SIZE CDATA #IMPLIED -- @# should be NUMBERS: delimit with space, not comma --
414          MAXLENGTH NUMBER #IMPLIED          MAXLENGTH NUMBER #IMPLIED
415          ALIGN (top|middle|bottom|left|center|right) #IMPLIED --@#supported?--          ALIGN (top|middle|bottom|left|center|right) #IMPLIED --@#supported?--
# Line 375  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 419  http://www.ncsa.uiuc.edu/SDG/Software/Mo
419  <!ATTLIST SELECT  <!ATTLIST SELECT
420          NAME CDATA #REQUIRED          NAME CDATA #REQUIRED
421          SIZE NUMBER #IMPLIED          SIZE NUMBER #IMPLIED
422          SELECTIONS (MULTIPLE) #IMPLIED          MULTIPLE (MULTIPLE) #IMPLIED
423          >          >
424    
425  <!ELEMENT OPTION - O (#PCDATA)>  <!ELEMENT OPTION - O (#PCDATA)>
426  <!ATTLIST OPTION  <!ATTLIST OPTION
427          STATE (SELECTED) #IMPLIED          SELECTED (SELECTED) #IMPLIED
428          VALUE CDATA #IMPLIED          VALUE CDATA #IMPLIED
429          >          >
430    
# Line 392  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 436  http://www.ncsa.uiuc.edu/SDG/Software/Mo
436          >          >
437  ]]>  ]]>
438    
439    <!-- Obsolete Elements  -->
440    
441    <![ %HTML.litCDATA [ <!ENTITY % lit-content "CDATA"> ]]>
442    <!ENTITY % lit-content "RCDATA">
443    <!ELEMENT (%literal) - -  %lit-content>
444    
445    <![ %HTML.PLAINTEXT [
446    <!ELEMENT PLAINTEXT - O EMPTY>
447    ]]>

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.13

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24