Parent Directory
|
Revision Log
The DTD as I originally released it.
| 1 | connolly | 1.5 | <!SGML "ISO 8879:1986" |
| 2 | -- | ||
| 3 | Document Type Definition for the HyperText Markup Language | ||
| 4 | as used by the World Wide Web application (HTML DTD). | ||
| 5 | |||
| 6 | NOTE: This is a definition of HTML with respect to | ||
| 7 | SGML, and assumes an understaning of SGML terms. | ||
| 8 | |||
| 9 | For a description of HTML in layman's terms, see | ||
| 10 | |||
| 11 | "HTML: A Representation for Nodes in the World Wide Web" | ||
| 12 | by Dan Connolly. | ||
| 13 | |||
| 14 | aka | ||
| 15 | |||
| 16 | http://info.cern.ch/hypertext/WWW/MarkUp/MarkUp.html | ||
| 17 | by <[email protected]> | ||
| 18 | -- | ||
| 19 | |||
| 20 | CHARSET | ||
| 21 | BASESET "ISO 646:1983//CHARSET | ||
| 22 | International Reference Version (IRV)//ESC 2/5 4/0" | ||
| 23 | DESCSET 0 9 UNUSED | ||
| 24 | 9 2 9 | ||
| 25 | 11 2 UNUSED | ||
| 26 | 13 1 13 | ||
| 27 | 14 18 UNUSED | ||
| 28 | 32 95 32 | ||
| 29 | 127 1 UNUSED | ||
| 30 | |||
| 31 | CAPACITY SGMLREF | ||
| 32 | TOTALCAP 150000 | ||
| 33 | GRPCAP 150000 | ||
| 34 | |||
| 35 | SCOPE DOCUMENT | ||
| 36 | SYNTAX | ||
| 37 | SHUNCHAR CONTROLS 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | ||
| 38 | 19 20 21 22 23 24 25 26 27 28 29 30 31 127 255 | ||
| 39 | BASESET "ISO 646:1983//CHARSET | ||
| 40 | International Reference Version (IRV)//ESC 2/5 4/0" | ||
| 41 | DESCSET 0 128 0 | ||
| 42 | FUNCTION RE 13 | ||
| 43 | RS 10 | ||
| 44 | SPACE 32 | ||
| 45 | TAB SEPCHAR 9 | ||
| 46 | NAMING LCNMSTRT "" | ||
| 47 | UCNMSTRT "" | ||
| 48 | LCNMCHAR ".-" | ||
| 49 | UCNMCHAR ".-" | ||
| 50 | NAMECASE GENERAL YES | ||
| 51 | ENTITY NO | ||
| 52 | DELIM GENERAL SGMLREF | ||
| 53 | SHORTREF SGMLREF | ||
| 54 | NAMES SGMLREF | ||
| 55 | QUANTITY SGMLREF | ||
| 56 | NAMELEN 34 | ||
| 57 | TAGLVL 100 | ||
| 58 | LITLEN 1024 | ||
| 59 | GRPGTCNT 150 | ||
| 60 | GRPCNT 64 | ||
| 61 | |||
| 62 | FEATURES | ||
| 63 | MINIMIZE | ||
| 64 | DATATAG NO | ||
| 65 | OMITTAG NO | ||
| 66 | RANK NO | ||
| 67 | SHORTTAG NO | ||
| 68 | LINK | ||
| 69 | SIMPLE NO | ||
| 70 | IMPLICIT NO | ||
| 71 | EXPLICIT NO | ||
| 72 | OTHER | ||
| 73 | CONCUR NO | ||
| 74 | SUBDOC NO | ||
| 75 | FORMAL YES | ||
| 76 | APPINFO NONE | ||
| 77 | > | ||
| 78 | |||
| 79 | <!DOCTYPE HTML [ | ||
| 80 | connolly | 1.2 | <!-- |
| 81 | connolly | 1.5 | $Id: html.dtd,v 1.3 1993/01/07 00:38:36 connolly Exp $ |
| 82 | connolly | 1.2 | --> |
| 83 | |||
| 84 | connolly | 1.5 | <!-- Regarding clause 6.1, SGML Document: |
| 85 | connolly | 1.2 | |
| 86 | connolly | 1.5 | [1] SGML document = SGML document entity, |
| 87 | (SGML subdocument entity | | ||
| 88 | SGML text entity | non-SGML data entity)* | ||
| 89 | connolly | 1.2 | |
| 90 | connolly | 1.5 | The role of SGML document entity is filled by this DTD, |
| 91 | followed by the conventional HTML data stream. | ||
| 92 | connolly | 1.2 | --> |
| 93 | |||
| 94 | connolly | 1.3 | <!-- DTD definitions --> |
| 95 | |||
| 96 | connolly | 1.2 | <!ENTITY % heading "H1|H2|H3|H4|H5|H6" > |
| 97 | <!ENTITY % list "UL|OL|DIR|MENU"> | ||
| 98 | <!ENTITY % literal "XMP|LISTING"> | ||
| 99 | |||
| 100 | <!ENTITY % headelement | ||
| 101 | connolly | 1.5 | "TITLE | NEXTID | ISINDEX" > |
| 102 | connolly | 1.2 | |
| 103 | <!ENTITY % bodyelement | ||
| 104 | connolly | 1.5 | "P | A | %heading | |
| 105 | %list | DL | HEADERS | ADDRESS | PRE | BLOCKQUOTE | ||
| 106 | | %literal"> | ||
| 107 | connolly | 1.3 | |
| 108 | <!ENTITY % oldstyle "%headelement | %bodyelement | #PCDATA"> | ||
| 109 | connolly | 1.5 | |
| 110 | <!-- Characters from various Latin alphabets. --> | ||
| 111 | <!ENTITY % ISOlat1 PUBLIC | ||
| 112 | "ISO 8879:1986//ENTITIES Added Latin 1//EN"> | ||
| 113 | %ISOlat1; | ||
| 114 | |||
| 115 | connolly | 1.3 | |
| 116 | connolly | 1.4 | <!-- Document Element --> |
| 117 | connolly | 1.2 | |
| 118 | connolly | 1.5 | <!ELEMENT HTML O O (HEAD | BODY | %oldstyle)*> |
| 119 | connolly | 1.2 | |
| 120 | connolly | 1.5 | <!ELEMENT HEAD - - (TITLE? & ISINDEX? & NEXTID?)> |
| 121 | <!-- LINK element (from timbl) --> | ||
| 122 | <!ATTLIST HEAD | ||
| 123 | EXPIRES NUMBER #IMPLIED -- expiration date | ||
| 124 | in ISO format: yyyymmddhhmmssZ -- | ||
| 125 | > | ||
| 126 | |||
| 127 | <!ELEMENT TITLE - - RCDATA | ||
| 128 | -- The TITLE element is not considered part of the flow of text. | ||
| 129 | It should be displayed, for example as the page header or | ||
| 130 | window title. | ||
| 131 | --> | ||
| 132 | connolly | 1.2 | |
| 133 | <!ELEMENT ISINDEX - O EMPTY | ||
| 134 | connolly | 1.5 | -- WWW clients should offer the option to perform a search on |
| 135 | documents containing ISINDEX. | ||
| 136 | --> | ||
| 137 | connolly | 1.2 | |
| 138 | <!ELEMENT NEXTID - O EMPTY> | ||
| 139 | <!ATTLIST NEXTID N NUMBER #REQUIRED | ||
| 140 | connolly | 1.5 | -- The number should be the highest number that appears in |
| 141 | any NAME attribute in the document. | ||
| 142 | --> | ||
| 143 | |||
| 144 | connolly | 1.3 | <!ENTITY % inline "EM | TT | STRONG | B | I | U | |
| 145 | connolly | 1.5 | CODE | SAMP | KBD | KEY | VAR | DFN | CITE " |
| 146 | > | ||
| 147 | connolly | 1.3 | |
| 148 | <!ELEMENT (%inline;) - - (#PCDATA)> | ||
| 149 | |||
| 150 | connolly | 1.5 | <!ENTITY % text "#PCDATA | %inline;"> |
| 151 | connolly | 1.4 | |
| 152 | connolly | 1.5 | <!ELEMENT BODY - - (%bodyelement|%text;)*> |
| 153 | |||