/[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.22 by connolly, Wed Nov 30 23:45:40 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 (HTML DTD)
         as used by the World Wide Web application (HTML DTD).  
4    
5          $Id$          $Id$
6    
7            Author: Daniel W. Connolly <connolly@hal.com>
8            See Also: html.decl, html-0.dtd, html-1.dtd
9                      http://www.hal.com/%7Econnolly/html-spec/index.html
10                      http://info.cern.ch/hypertext/WWW/MarkUp2/MarkUp.html
11  -->  -->
12    
13  <!-- Feature Test Entities -->  <!ENTITY % HTML.Version
14            "-//IETF//DTD HTML 2.0//EN"
15    
16  <!-- To use these, write your document like:          -- Typical usage:
         <!DOCTYPE HTML [  
         <!ENTITY % HTML.Optional "INCLUDE">  
         <!ENTITY % html PUBLIC "-//connolly hal.com//DTD WWW HTML 1.8//EN">  
         %html;  
         ]>  
         <TITLE>Here's my doc</TITLE>  
         <p>It uses lots of optional features  
   
  In practice, if you're using sgmls to validate your docs,  
  you can stick the <!DOCTYPE [...]> in a separate file and  
  validate with:  
         sgmls -s doctype.sgml foo.html  
  -->  
   
 <!ENTITY % HTML.Minimal  "IGNORE">  
 <!ENTITY % HTML.Obsolete "IGNORE">  
   
 <![ %HTML.Minimal [  
         <!ENTITY % HTML.linkRelationships "IGNORE">  
         <!ENTITY % HTML.linkMethods "IGNORE">  
         <!ENTITY % HTML.linkRedundantInfo "IGNORE">  
         <!ENTITY % HTML.forms "IGNORE">  
         <!-- @@ nested lists -->  
         <!-- @@ phrases -->  
         ]]>  
           
 <![ %HTML.Obsolete [  
         <!ENTITY % HTML.PLAINTEXT "INCLUDE">  
         <!ENTITY % HTML.titleCDATA "INCLUDE">  
         <!ENTITY % HTML.litCDATA "INCLUDE">  
         <!ENTITY % HTML.font-phrase "INCLUDE">  
         <!ENTITY % HTML.anchorNameCDATA "INCLUDE">  
         <!ENTITY % HTML.pSeparator "INCLUDE">  
         ]]>  
   
 <!ENTITY % HTML.GO "IGNORE"  
         -- The GO element used in ORA GNN. What is this??? -->  
   
 <!ENTITY % HTML.aEndOmissable "IGNORE"  
         -- infer </A> tags, as in ORA GNN stuff -->  
   
 <!ENTITY % HTML.isindexAtEnd "IGNORE"  
         -- allow ISINDEX after HEAD and BODY, as in ORA GNN stuff -->  
   
 <!ENTITY % HTML.pSeparator "IGNORE"  
         -- use P element as paragraph separator, rather that container.  
         This means not all paragraphs need to start with a <P> tag.  
         -->  
17    
18  <!ENTITY % HTML.linkRelationships "INCLUDE"              <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
19          -- Adding markup to links to show the relationship between              <html>
20          ends of a link              ...
21          see http://info.cern.ch/hypertext/WWW/MarkUp/Relationships.html              </html>
22          -->          --
23            >
24    
 <!ENTITY % HTML.linkMethods "INCLUDE"  
         -- Adding markup to links to show the methods supported  
         by the referent object  
         see http://info.cern.ch/hypertext/WWW/MarkUp/Elements/A.html  
         -->  
25    
26  <!ENTITY % HTML.linkRedundantInfo "INCLUDE"  <!--================== Feature Test Entities ==============================-->
         -- Adding markup to links to give redundant information  
         like URN, content type, title...  
         -->  
27    
28  <!ENTITY % HTML.anchorNameCDATA "IGNORE"  <!ENTITY % HTML.Recommended "IGNORE"
29          -- Anchor names should be distinct. SGML parser can validate          -- Certain features of the language are necessary for compatibility
30          this if the NAME attribute of the A element is declared as ID.             with widespread usage, but they may compromise the structural
31          But that restricts the syntax of an anchor name to an SGML name,             integrity of a document. This feature test entity enables
32          i.e. a letter followed by letters, numbers, periods and dashes,             a more prescriptive document type definition that eliminates
33          up to NAMELEN (34) characters long.             those features.
34          -->          -->
35    
36  <!ENTITY % HTML.PLAINTEXT "IGNORE"  <![ %HTML.Recommended [
37          -- Support for the <PLAINTEXT> tag as a sign of the          <!ENTITY % HTML.Deprecated "IGNORE">
38          end of th HTML data stream and the beginning of a stream  ]]>
         of text/plain data  
         -->  
39    
40  <!ENTITY % HTML.titleCDATA "IGNORE"  <!ENTITY % HTML.Deprecated "INCLUDE"
41          -- Is the TITLE element #PCDATA, RCDATA, or CDATA content?          -- Certain features of the language are necessary for compatibility
42          On Mosaic, it's #PCDATA, but in the linemode browser,             with earlier versions of the specification, but they tend
43          it's more like CDATA, but not quite.             to be used an implemented inconsistently, and their use is
44               deprecated. This feature test entity enables a document type
45               definition that eliminates these features.
46          -->          -->
47    
48  <!ENTITY % HTML.NEXTID "INCLUDE"  <!ENTITY % HTML.Highlighting "INCLUDE"
49          -- Used by the NeXT implementation to keep track of the          -- Use this feature test entity to validate that a document
50          next anchor id to use             uses no highlighting tags, which may be ignored on minimal
51               implementations.
52          -->          -->
53    
54  <!ENTITY % HTML.font-phrase "IGNORE"  <!ENTITY % HTML.Forms "INCLUDE"
55          -- allow B, I, TT, U outside PRE,          -- Use this feature test entity to validate that a document
56          CITE, VAR, etc. inside PRE             contains no forms, which may not be supported in minimal
57               implementations
58          -->          -->
59    
60  <!ENTITY % HTML.litCDATA "IGNORE"  <!--================== Imported Names =====================================-->
         -- treat XMP, LISTING as CDATA, as per linemodeWWW  
         -->  
61    
62  <!ENTITY % HTML.forms "INCLUDE"  <!ENTITY % Content-Type "CDATA"
63          -- Support for forms as per          -- meaning an internet media type
64  http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/fill-out-forms/overview.html             (aka MIME content type, as per RFC1521)
65          -->          -->
66    
67  <!-- DTD definitions -->  <!ENTITY % HTTP-Method "GET | POST"
68            -- as per HTTP specification, in progress
69  <!ENTITY % heading "H1|H2|H3|H4|H5|H6" >          -->
 <!ENTITY % list " UL | OL | DIR | MENU ">  
 <!ENTITY % literal " XMP | LISTING ">  
70    
71  <!ENTITY % URI "CDATA"  <!ENTITY % URI "CDATA"
72          -- The term URI means a CDATA attribute          -- The term URI means a CDATA attribute
# Line 126  http://www.ncsa.uiuc.edu/SDG/Software/Mo Line 74  http://www.ncsa.uiuc.edu/SDG/Software/Mo
74             as defined by             as defined by
75          "Universal Resource Identifiers" by Tim Berners-Lee          "Universal Resource Identifiers" by Tim Berners-Lee
76          aka http://info.cern.ch/hypertext/WWW/Addressing/URL/URI_Overview.html          aka http://info.cern.ch/hypertext/WWW/Addressing/URL/URI_Overview.html
77            aka RFC 1630
78    
79          Note that CDATA attributes are limited by the LITLEN          Note that CDATA attributes are limited by the LITLEN
80          capacity (1024 in the current version of html.decl),          capacity (1024 in the current version of html.decl),
81          so that URIs in HTML have a bounded length.          so that URIs in HTML have a bounded length.
82    
83          -->          -->
84    
 <!ENTITY % Content-Type "CDATA"  
         -- meaning a MIME content type, as per RFC1341 or any of its updates.  
         -->  
85    
86  <![ %HTML.anchorNameCDATA [ <!ENTITY % anchor-name "CDATA"> ]]>  <!--================== DTD "Macros" =======================================-->
 <!ENTITY % anchor-name "ID">  
87    
88  <![ %HTML.linkRelationships [ <!ENTITY % linkRelAttrs "  <!ENTITY % heading "H1|H2|H3|H4|H5|H6">
         REL CDATA #IMPLIED -- forward relationship type --  
         REV CDATA #IMPLIED -- reversed relationship type  
                               to referent data:  
   
                                 PARENT CHILD, SIBLING, NEXT, TOP,  
                                 DEFINITION, UPDATE, ORIGINAL etc. --  
         "> ]]>  
 <!ENTITY % linkRelAttrs "">  
   
 <![ %HTML.linkRedundantInfo [ <!ENTITY % linkRedundantAttrs "  
         URN CDATA #IMPLIED -- universal resource number --  
   
         TITLE CDATA #IMPLIED -- advisory only --  
         "> ]]>  
 <!ENTITY % linkRedundantAttrs "">  
   
 <![ %HTML.linkMethods [ <!ENTITY % linkMethodAttrs "  
         METHODS NAMES #IMPLIED -- supported public methods of the object:  
                                         TEXTSEARCH, GET, HEAD, ... --  
         "> ]]>  
 <!ENTITY % linkMethodAttrs "">  
   
 <!ENTITY % linkattributes  
         "NAME %anchor-name #IMPLIED  
         HREF %URI;  #IMPLIED  
         %linkRelAttrs;  
         %linkRedundantAttrs;  
         %linkMethodAttrs;  
         ">  
89    
90    <!ENTITY % list " UL | OL | DIR | MENU " >
91    
 <!-- Document Element -->  
92    
93    <!--================ Character mnemonic entities ==========================-->
94    
95  <![ %HTML.PLAINTEXT [ <!ENTITY % obsolete-plaintext ", PLAINTEXT?"> ]]>  <!ENTITY % ISOlat1 PUBLIC
96  <!ENTITY % obsolete-plaintext "">    "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML">
97  <![ %HTML.isindexAtEnd [ <!ENTITY % end-isindex ", ISINDEX?"> ]]>  %ISOlat1;
 <!ENTITY % end-isindex "">  
   
 <!ENTITY % html-content "HEAD, BODY %obsolete-plaintext; %end-isindex">  
 <!ELEMENT HTML O O  (%html-content)>  
   
 <![ %HTML.NEXTID [  <!ENTITY % head-content "TITLE? & ISINDEX? & LINK* & BASE?  
                         & NEXTID?"> ]]>  
 <!ENTITY % head-content "TITLE & ISINDEX? & LINK* & BASE?">  
 <!ELEMENT HEAD O O  (%head-content)>  
   
 <![ %HTML.titleCDATA [ <!ENTITY % title-content "CDATA"> ]]>  
 <!ENTITY % title-content "(#PCDATA)">  
 <!ELEMENT TITLE - -  %title-content  
           -- The TITLE element is not considered part of the flow of text.  
              It should be displayed, for example as the page header or  
              window title.  
           -->  
   
 <!ELEMENT ISINDEX - O EMPTY  
           -- WWW clients should offer the option to perform a search on  
              documents containing ISINDEX.  
           -->  
98    
99  <!ELEMENT NEXTID - O EMPTY>  <!ENTITY amp CDATA "&#38;"     -- ampersand          -->
100  <!ATTLIST NEXTID N %anchor-name #REQUIRED  <!ENTITY gt CDATA "&#62;"      -- greater than       -->
101            -- The number should be a name suitable for use  <!ENTITY lt CDATA "&#60;"      -- less than          -->
102               for the ID of a new element. When used, the value  <!ENTITY quot CDATA "&#34;"    -- double quote       -->
103               has its numeric part incremented. EG Z67 becomes Z68  
104            -->  
105  <!ELEMENT LINK - O EMPTY>  <!--=================== SGML Document Access (SDA) Parameter Entities =====-->
106  <!ATTLIST LINK  
107          %linkattributes>  <!-- HTML 2.0 contains SGML Document Access (SDA) fixed attributes in
108            support of easy transformation to the International Committee for
109  <!ELEMENT BASE - O EMPTY    -- Reference context for URIs -->  Accessible Document Design (ICADD) DTD "-//EC-USA-CDA/ICADD//DTD
110  <!ATTLIST BASE  ICADD22//EN".  ICADD applications are designed to support usable access
111    to structured information by print-impaired individuals through Braille,
112    large print and voice synthesis.  For more information on SDA & ICADD:  
113            - ISO 12083:1993, Annex A.8, Facilities for Braille, large print
114              and computer voice
115            - ICADD ListServ <ICADD%ASUACAD.BITNET@ARIZVM1.ccit.arizona.edu>
116            - Usenet news group bit.listserv.easi
117            - Recording for the Blind, +1 800 221 4792
118    -->
119    
120          HREF %URI; #IMPLIED  <!ENTITY % SDAFORM  "SDAFORM  CDATA  #FIXED"  -- one to one mapping        -->
121    <!ENTITY % SDARULE  "SDARULE  CDATA  #FIXED"  -- context-sensitive mapping -->
122    <!ENTITY % SDAPREF  "SDAPREF  CDATA  #FIXED"  -- generated text prefix     -->
123    <!ENTITY % SDASUFF  "SDASUFF  CDATA  #FIXED"  -- generated text suffix     -->
124    <!ENTITY % SDASUSP  "SDASUSP  NAME   #FIXED"  -- suspend transform process -->
125    
         >  
126    
127  <!ENTITY % font "TT | B | I | U ">  <!--=================== Text Markup =======================================-->
 <!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | KEY | VAR | DFN | CITE">  
128    
129  <![ %HTML.font-phrase [  <![ %HTML.Highlighting [
         <!ENTITY % obsolete-font "| %font">  
         <!ENTITY % obsolete-phrase "| %phrase">  
         ]]>  
 <!ENTITY % obsolete-font "">  
 <!ENTITY % obsolete-phrase "">  
 <![ %HTML.pSeparator [  
         <!ENTITY % obsolete-p "| P">  
         ]]>  
 <!ENTITY % obsolete-p "">  
130    
131  <!ENTITY % inline "%phrase %obsolete-font">  <!ENTITY % font " TT | B | I ">
 <!ENTITY % pre-inline "%font %obsolete-phrase %obsolete-p">  
132    
133  <![ %HTML.GO [  <!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | CITE ">
         <!ELEMENT GO - O EMPTY>  
         <!ENTITY % go-text "| GO">  
         ]]>  
 <!ENTITY % go-text "">  
134    
135  <!ENTITY % text "#PCDATA | IMG | %inline | BR %go-text %obsolete-p">  <!ENTITY % text "#PCDATA | A | IMG | BR | %phrase | %font">
136    
137  <!ENTITY % htext "A | %text"    -- Plus links, no structure -->  <!ELEMENT (%font;|%phrase) - - (%text)*>
138    <!ATTLIST ( TT | CODE | SAMP | KBD | VAR )
139            %SDAFORM; "Lit"
140            >
141    <!ATTLIST ( B | STRONG )
142            %SDAFORM; "B"
143            >
144    <!ATTLIST ( I | EM | CITE )
145            %SDAFORM; "It"
146            >
147    
148  <![ %HTML.font-phrase [ <!ENTITY % font-content "(%htext)+"> ]]>  <!-- <TT>       Typewriter text                         -->
149  <!ENTITY % font-content "#PCDATA">  <!-- <B>        Bold text                               -->
150  <!ELEMENT (%font;) - - (%font-content;)>  <!-- <I>        Italic text                             -->
151    
152    <!-- <EM>       Emphasized phrase                       -->
153    <!-- <STRONG>   Strong emphais                          -->
154    <!-- <CODE>     Source code phrase                      -->
155    <!-- <SAMP>     Sample text or characters               -->
156    <!-- <KBD>      Keyboard phrase, e.g. user input        -->
157    <!-- <VAR>      Variable phrase or substituable         -->
158    <!-- <CITE>     Name or title of cited work             -->
159    
160  <!ELEMENT (%phrase;) - - (%htext)+>  <!ENTITY % pre.content "#PCDATA | A | HR | BR | %font | %phrase">
161    
162  <!ENTITY % pre "PRE | XMP | LISTING">  ]]>
163    
164    <!ENTITY % text "#PCDATA | A | IMG | BR">
165    
166    <!ELEMENT BR    - O EMPTY>
167    <!ATTLIST BR
168            %SDAPREF; "&#RE;"
169            >
170    
171  <![ %HTML.forms [ <!ENTITY % block-form "| FORM | ISINDEX"> ]]>  <!-- <BR>       Line break      -->
 <!ENTITY % block-form "">  
172    
 <![ %HTML.pSeparator [  
         <!ENTITY % obsolete-htext "| %htext">  
         <!ENTITY % block-p "">  
         ]]>  
 <!ENTITY % obsolete-htext "| A">  
 <!ENTITY % block-p "| P ">  
173    
174  <!ENTITY % block "HR | %list | DL  <!--================== Link Markup ========================================-->
                 | %pre | BLOCKQUOTE | ADDRESS  
                 %block-form %block-p">  
175    
176    <![ %HTML.Recommended [
177            <!ENTITY % linkName "ID">
178    ]]>
179    
180  <!ENTITY % body-content "%heading | %block %obsolete-htext">  <!ENTITY % linkName "CDATA">
 <!ELEMENT BODY O O  (%body-content)*>  
181    
182    <!ENTITY % linkType "NAME"
183            -- a list of these will be specified at a later date -->
184    
185  <![ %HTML.aEndOmissable [ <!ENTITY % a-end "O"> ]]>  <!ENTITY % linkExtraAttributes
186  <!ENTITY % a-end "-">          "REL %linkType #IMPLIED
187            REV %linkType #IMPLIED
188            URN CDATA #IMPLIED
189            TITLE CDATA #IMPLIED
190            METHODS NAMES #IMPLIED
191            ">
192    
193  <!ELEMENT A     - %a-end (%heading|%block|%text)+ -(A)  <![ %HTML.Recommended [
194          -- @# Technically, this allows silliness like:          <!ENTITY % A.content   "(%text)*"
195                  <H2><A>xyz<H1>h1</H1></A></H2>          -- <H1><a name="xxx">Heading</a></H1>
196          The right way to do anchors outside of %htext is more like:                  is preferred to
197                  <as id=z1><H2>lkjlkj</h2><ae start=z1>             <a name="xxx"><H1>Heading</H1></a>
198          -->          -->
199    ]]>
200    
201    <!ENTITY % A.content   "(%heading|%text)*">
202    
203    <!ELEMENT A     - - %A.content -(A)>
204  <!ATTLIST A  <!ATTLIST A
205          %linkattributes;          HREF %URI #IMPLIED
206            NAME %linkName #IMPLIED
207            %linkExtraAttributes;
208            %SDAPREF; "<?SDATrans A: #AttList>"
209          >          >
210    <!-- <A>                Anchor; source and/or destination of a link     -->
211    <!-- <A NAME="...">     Name of this anchor                             -->
212    <!-- <A HREF="...">     Address of link destination                     -->
213    <!-- <A URN="...">      Permanent address of destination                -->
214    <!-- <A REL=...>        Relationship of this anchor to destination      -->
215    <!-- <A REV=...>        Relationship of destination to this anchor      -->
216    <!-- <A TITLE="...">    Title of destination (advisory)                 -->
217    <!-- <A METHODS="...">  Operations allowed on destination (advisory)    -->
218    
219    
220    <!--=================== Images ============================================-->
221    
222  <!ELEMENT IMG    - O EMPTY --  Embedded image -->  <!ELEMENT IMG    - O EMPTY>
223  <!ATTLIST IMG  <!ATTLIST IMG
224          SRC %URI;  #IMPLIED     -- URI of document to embed --          SRC %URI;  #REQUIRED
225          ALT CDATA #IMPLIED          ALT CDATA #IMPLIED
226          ALIGN (top|middle|bottom) #IMPLIED          ALIGN (top|middle|bottom) #IMPLIED
227          ISMAP (ISMAP) #IMPLIED          ISMAP (ISMAP) #IMPLIED
228            %SDAPREF; "<Fig><?SDATrans Img: #AttList>#AttVal(Alt)</Fig>"
229          >          >
230    
231    <!-- <IMG>              Image; icon, glyph or illustration      -->
232    <!-- <IMG SRC="...">    Address of image object                 -->
233    <!-- <IMG ALT="...">    Textual alternative                     -->
234    <!-- <IMG ALIGN=...>    Position relative to text               -->
235    <!-- <IMG ISMAP>        Each pixel can be a link                -->
236    
237    <!--=================== Paragraphs=========================================-->
238    
239    <!ELEMENT P     - O (%text)*>
240    <!ATTLIST P
241            %SDAFORM; "Para"
242            >
243    
244  <![ %HTML.pSeparator [ <!ENTITY % p-content "EMPTY"> ]]>  <!-- <P>        Paragraph       -->
 <!ENTITY % p-content "(%htext)+">  
 <!ELEMENT P     - O %p-content>  
 <!ELEMENT HR    - O EMPTY -- horizontal rule -->  
 <!ELEMENT BR    - O EMPTY -- @# BR -> &br; -->  
245    
 <!ELEMENT ( %heading )  - -  (%htext;)+>  
246    
247  <!ELEMENT DL    - -  (DT*, DD?)+>  <!--=================== Headings, Titles, Sections ========================-->
248  <!ATTLIST DL  
249          STYLE (COMPACT) #IMPLIED>  <!ELEMENT HR    - O EMPTY>
250    <!ATTLIST HR
251            %SDAPREF; "<Para><?SDATrans HR: #AttList></Para>"
252            >
253    
254    <!-- <HR>       Horizontal rule -->
255    
256    <!ELEMENT ( %heading )  - -  (%text;)*>
257    <!ATTLIST H1
258            %SDAFORM; "H1"
259            >
260    <!ATTLIST H2
261            %SDAFORM; "H2"
262            >
263    <!ATTLIST H3
264            %SDAFORM; "H3"
265            >
266    <!ATTLIST H4
267            %SDAFORM; "H4"
268            >
269    <!ATTLIST H5
270            %SDAFORM; "H5"
271            >
272    <!ATTLIST H6
273            %SDAFORM; "H6"
274            >
275    
276    <!-- <H1>       Heading, level 1 -->
277    <!-- <H2>       Heading, level 2 -->
278    <!-- <H3>       Heading, level 3 -->
279    <!-- <H4>       Heading, level 4 -->
280    <!-- <H5>       Heading, level 5 -->
281    <!-- <H6>       Heading, level 6 -->
282    
283    
284  <!ELEMENT DT    - O (%htext)+>  <!--=================== Text Flows ========================================-->
 <!ELEMENT DD    - O (%htext|%block)+>  
285    
286  <!ELEMENT (%list) - -  (LI)+>  <![ %HTML.Forms [
287            <!ENTITY % block.forms "BLOCKQUOTE | FORM | ISINDEX">
288    ]]>
289    
290    <!ENTITY % block.forms "BLOCKQUOTE">
291    
292  <!ELEMENT LI    - O (%htext|%block)+>  <![ %HTML.Deprecated [
293            <!ENTITY % preformatted "PRE | XMP | LISTING">
294    ]]>
295    
296  <!ELEMENT BLOCKQUOTE - - (%htext|%block)+ -- @# Hmm... --  <!ENTITY % preformatted "PRE">
         -- for quoting some other source -->  
297    
298  <!ELEMENT ADDRESS - - (%htext;)+>  <!ENTITY % block "P | %list | DL
299            | %preformatted
300            | %block.forms">
301    
302  <!ELEMENT PRE - - (#PCDATA|%pre-inline|A)+>  <!ENTITY % flow "(%text|%block)*">
303    
304    <!ENTITY % pre.content "#PCDATA | A | HR | BR">
305    <!ELEMENT PRE - - (%pre.content)*>
306  <!ATTLIST PRE  <!ATTLIST PRE
307          WIDTH NUMBER #implied          WIDTH NUMBER #implied
308            %SDAFORM; "Lit"
309            %SDAPREF; "<?SDATrans Pre: #AttList>"
310          >          >
311    
312  <!-- Mnemonic character entities. -->  <!-- <PRE>              Preformatted text               -->
313    <!-- <PRE WIDTH=...>    Maximum characters per line     -->
314    
315  <!ENTITY % ISOlat1 PUBLIC  <![ %HTML.Deprecated [
   "ISO 8879:1986//ENTITIES Added Latin 1//EN">  
 %ISOlat1;  
316    
317  <!ENTITY amp "&#38;"     -- ampersand -->  <!ENTITY % literal "CDATA"
318  <!ENTITY gt "&#62;"      -- greater than -->          -- historical, non-conforming parsing mode where
319  <!ENTITY lt "&#60;"      -- less than -->             the only markup signal is the end tag
320  <!ENTITY nbsp "<? nonbreaking-space>">             in full
321  <!-- @# should add entites for processing instructions          -->
         for line break, centering, etc. -->  
322    
323    <!ELEMENT (XMP|LISTING) - -  %literal>
324    <!ATTLIST XMP
325            %SDAFORM; "Lit"
326            %SDAPREF; "Example:&#RE;"
327            >
328    <!ATTLIST LISTING
329            %SDAFORM; "Lit"
330            %SDAPREF; "Listing:&#RE;"
331            >
332    
333  <![ %HTML.litCDATA [ <!ENTITY % lit-content "CDATA"> ]]>  <!-- <XMP>              Example section         -->
334  <!ENTITY % lit-content "RCDATA">  <!-- <LISTING>          Computer listing        -->
 <!ELEMENT (%literal) - -  %lit-content>  
335    
336  <![ %HTML.PLAINTEXT [  <!ELEMENT PLAINTEXT - O %literal>
337  <!ELEMENT PLAINTEXT - O EMPTY>  <!-- <PLAINTEXT>        Plain text passage      -->
338    
339    <!ATTLIST PLAINTEXT
340            %SDAFORM; "Lit"
341            >
342  ]]>  ]]>
343    
344    
345  <!-- Forms  -->  <!--=================== Lists =============================================-->
346  <![ %HTML.forms [  
347    <!ELEMENT DL    - -  (DT | DD)+>
348    <!ATTLIST DL
349            COMPACT (COMPACT) #IMPLIED
350            %SDAFORM; "List"
351            %SDAPREF; "<?SDATrans DL: #AttList>"
352            >
353    
354    <!ELEMENT DT    - O (%text)*>
355    <!ATTLIST DT
356            %SDAFORM; "Term"
357            >
358    
359  <!ENTITY % HTTP-Method "(GET | POST)">  <!ELEMENT DD    - O %flow>
360  <!ELEMENT FORM - - (%body-content)* -(FORM) +(INPUT|SELECT|TEXTAREA)>  <!ATTLIST DD
361            %SDAFORM; "LItem"
362            >
363    
364    <!-- <DL>               Definition list, or glossary    -->
365    <!-- <DL COMPACT>       Compact style list              -->
366    <!-- <DT>               Term in definition list         -->
367    <!-- <DD>               Definition of term              -->
368    
369    <!ELEMENT (OL|UL) - -  (LI)+>
370    <!ATTLIST OL
371            COMPACT (COMPACT) #IMPLIED
372            %SDAFORM; "List"
373            %SDAPREF; "<?SDATrans OL: #AttList>"
374            >
375    <!ATTLIST UL
376            COMPACT (COMPACT) #IMPLIED
377            %SDAFORM; "List"
378            %SDAPREF; "<?SDATrans UL: #AttList>"
379            >
380    <!-- <UL>               Unordered list                  -->
381    <!-- <UL COMPACT>       Compact list style              -->
382    <!-- <OL>               Ordered, or numbered list       -->
383    <!-- <OL COMPACT>       Compact list style              -->
384    
385    
386    <!ELEMENT (DIR|MENU) - -  (LI)+ -(%block)>
387    <!ATTLIST DIR
388            COMPACT (COMPACT) #IMPLIED
389            %SDAFORM; "List"
390            %SDAPREF; "<?SDATrans Dir: #AttList><LHead>Directory</LHead>"
391            >
392    <!ATTLIST MENU
393            COMPACT (COMPACT) #IMPLIED
394            %SDAFORM; "List"
395            %SDAPREF; "<?SDATrans Menu: #AttList><LHead>Menu</LHead>"
396            >
397    
398    <!-- <DIR>              Directory list                  -->
399    <!-- <DIR COMPACT>      Compact list style              -->
400    <!-- <MENU>             Menu list                       -->
401    <!-- <MENU COMPACT>     Compact list style              -->
402    
403    <!ELEMENT LI    - O %flow>
404    <!ATTLIST LI
405            %SDAFORM; "LItem"
406            >
407    
408    <!-- <LI>               List item                       -->
409    
410    <!--=================== Document Body =====================================-->
411    
412    <![ %HTML.Recommended [
413            <!ENTITY % body.content "(%heading|%block|HR|ADDRESS)*"
414            -- <h1>Heading</h1>
415               <p>Text ...
416                    is preferred to
417               <h1>Heading</h1>
418               Text ...
419            -->
420    ]]>
421    
422    <!ENTITY % body.content "(%heading | %text | %block | HR | ADDRESS)*">
423    
424    <!ELEMENT BODY O O  %body.content>
425    <!ATTLIST BODY
426            %SDAPREF; "<?SDATrans Body: #AttList>"
427            >
428    
429    <!-- <BODY>     Document body   -->
430    
431    <!ELEMENT BLOCKQUOTE - - %body.content>
432    <!ATTLIST BLOCKQUOTE
433            %SDAFORM; "BQ"
434            >
435    
436    <!-- <BLOCKQUOTE>       Quoted passage  -->
437    
438    <!ELEMENT ADDRESS - - (%text|P)*>
439    <!ATTLIST  ADDRESS
440            %SDAFORM; "Lit"
441            %SDAPREF; "Address:&#RE;"
442            >
443    
444    <!-- <ADDRESS>  Address, signature, or byline for document or passage   -->
445    
446    
447    <!--================ Forms ===============================================-->
448    
449    <![ %HTML.Forms [
450    
451    <!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)>
452  <!ATTLIST FORM  <!ATTLIST FORM
453          ACTION %URI #REQUIRED          ACTION %URI #IMPLIED
454          METHOD %HTTP-Method #IMPLIED -- @# MAILTO? --          METHOD (%HTTP-Method) GET
455          ENCTYPE %Content-Type; #IMPLIED          ENCTYPE %Content-Type; "application/x-www-form-urlencoded"
456            %SDAPREF; "<Para><?SDATrans Form: #AttList>Form:</Para>"
457            %SDASUFF; "<Para><?SDATrans Form: #End>Form End.</Para>"
458          >          >
459    
460    <!-- <FORM>                     Fill-out or data-entry form     -->
461    <!-- <FORM ACTION="...">        Address for completed form      -->
462    <!-- <FORM METHOD=...>          Method of submitting form       -->
463    <!-- <FORM ENCTYPE="...">       Representation of form data     -->
464    
465  <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX |  <!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX |
466                          RADIO | SUBMIT | RESET |                          RADIO | SUBMIT | RESET |
467                          IMAGE | HIDDEN )">                          IMAGE | HIDDEN )">
468  <!ELEMENT INPUT - O EMPTY>  <!ELEMENT INPUT - O EMPTY>
469  <!ATTLIST INPUT  <!ATTLIST INPUT
470          TYPE %InputType #IMPLIED -- @# defaults to TEXT?? --          TYPE %InputType TEXT
471          NAME CDATA #IMPLIED -- required for all but submit and reset --          NAME CDATA #IMPLIED
472          VALUE CDATA #IMPLIED          VALUE CDATA #IMPLIED
473          SRC %URI #IMPLIED -- for image inputs --          SRC %URI #IMPLIED
474          STATE (CHECKED) #IMPLIED          CHECKED (CHECKED) #IMPLIED
475          SIZE CDATA #IMPLIED -- @# should be NUMBERS: delimit with space, not comma --          SIZE CDATA #IMPLIED
476          MAXLENGTH NUMBER #IMPLIED          MAXLENGTH NUMBER #IMPLIED
477          ALIGN (top|middle|bottom|left|center|right) #IMPLIED --@#supported?--          ALIGN (top|middle|bottom) #IMPLIED
478            %SDAPREF; "<?SDATrans Input: #AttList>"
479          >          >
480    
481    <!-- <INPUT>                    Form input datum                -->
482    <!-- <INPUT TYPE=...>           Type of input interaction       -->
483    <!-- <INPUT TYPE=...>           Name of form datum              -->
484    <!-- <INPUT VALUE="...">        Default/initial/selected value  -->
485    <!-- <INPUT SRC="...">          Address of image                -->
486    <!-- <INPUT CHECKED>            Initial state is "on"           -->
487    <!-- <INPUT SIZE=...>           Field size hint                 -->
488    <!-- <INPUT MAXLENGTH=...>      Data length maximum             -->
489    <!-- <INPUT ALIGN=...>          Image alignment                 -->
490    
491  <!ELEMENT SELECT - - (OPTION+)>  <!ELEMENT SELECT - - (OPTION+)>
492  <!ATTLIST SELECT  <!ATTLIST SELECT
493          NAME CDATA #REQUIRED          NAME CDATA #REQUIRED
494          SIZE NUMBER #IMPLIED          SIZE NUMBER #IMPLIED
495          SELECTIONS (MULTIPLE) #IMPLIED          MULTIPLE (MULTIPLE) #IMPLIED
496            %SDAFORM; "List"
497            %SDAPREF;
498            "<?SDATrans Select: #AttList><LHead>Select #AttVal(Multiple)</LHead>"
499          >          >
500    
501  <!ELEMENT OPTION - O (#PCDATA)>  <!-- <SELECT>                   Selection of option(s)                  -->
502    <!-- <SELECT NAME=...>          Name of form datum                      -->
503    <!-- <SELECT SIZE=...>          Number of options displayed at a time   -->
504    <!-- <SELECT MULTIPLE>          Multiple selections allowed             -->
505    
506    <!ELEMENT OPTION - O (#PCDATA)*>
507  <!ATTLIST OPTION  <!ATTLIST OPTION
508          STATE (SELECTED) #IMPLIED          SELECTED (SELECTED) #IMPLIED
509          VALUE CDATA #IMPLIED          VALUE CDATA #IMPLIED
510            %SDAFORM; "LItem"
511            %SDAPREF;
512            "<?SDATrans Option: #AttList>#AttVal(Value) #AttVal(Selected)"
513          >          >
514    
515  <!ELEMENT TEXTAREA - - (#PCDATA)>  <!-- <OPTION>                   A selection option                      -->
516    <!-- <OPTION SELECTED>          Initial state                           -->
517    <!-- <OPTION VALUE="...">       Form datum value for this option        -->
518    
519    <!ELEMENT TEXTAREA - - (#PCDATA)*>
520  <!ATTLIST TEXTAREA  <!ATTLIST TEXTAREA
521          NAME CDATA #REQUIRED          NAME CDATA #REQUIRED
522          ROWS NUMBER #REQUIRED -- @#implied? --          ROWS NUMBER #REQUIRED
523          COLS NUMBER #REQUIRED          COLS NUMBER #REQUIRED
524            %SDAFORM; "Para"
525            %SDAPREF; "<?SDATrans TextArea: #AttList>#AttVal(Name): "
526          >          >
527    
528    <!-- <TEXTAREA>                 An area for text input                  -->
529    <!-- <TEXTAREA NAME=...>        Name of form datum                      -->
530    <!-- <TEXTAREA ROWS=...>        Height of area                          -->
531    <!-- <TEXTAREA COLS=...>        Width of area                           -->
532    
533    ]]>
534    
535    
536    <!--================ Document Head ========================================-->
537    
538    <!ENTITY % head.link "& LINK*">
539    
540    <![ %HTML.Recommended [
541            <!ENTITY % head.nextid "">
542    ]]>
543    <!ENTITY % head.nextid "& NEXTID?">
544    
545    <!ENTITY % head.content "TITLE & ISINDEX? & BASE? & META*
546                             %head.nextid
547                             %head.link">
548    
549    <!ELEMENT HEAD O O  (%head.content)>
550    <!ATTLIST HEAD
551            %SDAPREF; "<?SDATrans Head: #AttList>"
552          >
553    
554    <!-- <HEAD>     Document head   -->
555    
556    <!ELEMENT TITLE - -  (#PCDATA)*>
557    <!ATTLIST TITLE
558            %SDAFORM; "Ti"
559          >
560    
561    <!-- <TITLE>    Title of document -->
562    
563    <!ELEMENT LINK - O EMPTY>
564    <!ATTLIST LINK
565            HREF %URI #REQUIRED
566            %linkExtraAttributes;
567            %SDAPREF; "<?SDATrans Link: #AttList>"
568            >
569    
570    <!-- <LINK>             Link from this document                         -->
571    <!-- <LINK HREF="...">  Address of link destination                     -->
572    <!-- <LINK URN="...">   Lasting name of destination                     -->
573    <!-- <LINK REL=...>     Relationship of this document to destination    -->
574    <!-- <LINK REV=...>     Relationship of destination to this document    -->
575    <!-- <LINK TITLE="..."> Title of destination (advisory)                 -->
576    <!-- <LINK METHODS="..."> Operations allowed on destination (advisory)  -->
577    
578    <!ELEMENT ISINDEX - O EMPTY>
579    <!ATTLIST ISINDEX
580            %SDAPREF;
581       "<Para><?SDATrans IsIndex: #AttList>[Document indexed/searchable.]</Para>">
582    
583    <!-- <ISINDEX>          Document is a searchable index          -->
584    
585    <!ELEMENT BASE - O EMPTY>
586    <!ATTLIST BASE
587            HREF %URI; #REQUIRED
588            %SDAPREF; "<?SDATrans Base: #AttList>"
589            >
590    
591    <!-- <BASE>             Base context document                   -->
592    <!-- <BASE HREF="...">  Address for this document               -->
593    
594    <!ELEMENT NEXTID - O EMPTY>
595    <!ATTLIST NEXTID
596            N %linkName #REQUIRED
597            %SDAPREF; "<?SDATrans NextID: #AttList>"
598            >
599    
600    <!-- <NEXTID>           Next ID to use for link name                    -->
601    <!-- <NEXTID N=...>     Next ID to use for link name                    -->
602    
603    <!ELEMENT META - O EMPTY>
604    <!ATTLIST META
605            HTTP-EQUIV  NAME    #IMPLIED
606            NAME        NAME    #IMPLIED
607            CONTENT     CDATA   #REQUIRED
608            %SDAPREF; "<?SDATrans Meta: #AttList>"
609            >
610    
611    <!-- <META>                     Generic Metainformation         -->
612    <!-- <META HTTP-EQUIV=...>      HTTP response header name       -->
613    <!-- <META HTTP-EQUIV=...>      Metainformation name            -->
614    <!-- <META CONTENT="...">       Associated information          -->
615    
616    <!--================ Document Structure ===================================-->
617    
618    <![ %HTML.Deprecated [
619            <!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
620  ]]>  ]]>
621    <!ENTITY % html.content "HEAD, BODY">
622    
623    <!ELEMENT HTML O O  (%html.content)>
624    <!ENTITY % version.attr "VERSION CDATA #FIXED '%HTML.Version;'">
625    
626    <!ATTLIST HTML
627            %version.attr;
628            %SDAFORM; "Book"
629            %SDAPREF; "<?SDATrans HTML: #AttList>"
630            >
631    
632    <!-- <HTML>                     HyperText Markup Language Document      -->

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

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24