summaryrefslogtreecommitdiffstats
path: root/htdocs/sgml-lib/oreilly-html-relaxed.dtd
blob: 158652400cf474f4c40dcb8fb579c6890a14c66f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
<!-- ======================================================================
        oreilly-html.dtd

        The O'Reilly HTML Extended DTD is an extension of the
        "recommended" interpretation of the HTML 2.0 DTD as defined in
        RFC 1866.  The extensions add the following popular features:

        + Tables

          The table model from the now defunct HTML 3.0 DTD has been
          used with the following modifications: the content model of
          <TD> has been extended to include text (non-block) elements
          and the type of the BORDER attribute has been changed to
          NUMBER in order to support changes to the border width.

          Note: In SGML, the validity of <TABLE BORDER> and 
          <TABLE BORDER=value> are mutually exclusive.  In order to support
          <TABLE BORDER=value> in this DTD, it is necessary to make
          <TABLE BORDER> invalid.  This makes the O'Reilly HTML
          Extended DTD backwards-incompatible with HTML 2.0.


        + Modification of browser background and colors through attributes
          on the <BODY> element.
        + Support for WIDTH and ALIGN attributes on HR.
        + Support for ALIGN=left and ALIGN=right on IMG.
        + Support for CLEAR attribute on BR.
        + Support for an ALIGN attribute on P.
        + Support for an ALIGN attribute on headings.
        + Support for the <FONT> element.
        + Support for the <CENTER> element.
        + Support for the additional entities: &copy; and &nbsp;.

        We use the following DOCTYPE to identify this DTD:

            <!DOCTYPE HTML PUBLIC "-//O'Reilly and Associates//DTD HTML Extended 1.0//EN">

        In addition, four external entities (files) are referenced by
        this DTD:

        1. PUBLIC "-//O'Reilly and Associates//DTD HTML 2.0//EN"

          The HTML DTD from RFC 1866 with a few slight modifications.

        2. PUBLIC "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML"

          The ISO Latin1 entities (referenced by the RFC 1866 DTD).

        3. PUBLIC "-//O'Reilly and Associates//ELEMENTS Table Fragment 1.0//EN"

          The table elements, extracted from the now defunct HTML 3.0 DTD,
          with the modifications noted above.

        4. PUBLIC "-//O'Reilly and Associates//ENTITIES Additional HTML 1.0//EN"

          Additional entity definitions.

        An appropriate SGML Open catalog file for this DTD is:

            PUBLIC "-//O'Reilly and Associates//DTD HTML 2.0//EN"
              /local/path/on/your/system/to/oreilly-rfc1866.dtd

            PUBLIC "-//O'Reilly and Associates//DTD HTML Extended 1.0//EN"
              /local/path/on/your/system/to/oreilly-html.dtd

            PUBLIC "-//O'Reilly and Associates//ELEMENTS Table Fragment 1.0//EN"
              /local/path/on/your/system/to/oreilly-table.elements

            PUBLIC "-//O'Reilly and Associates//ENTITIES Additional HTML 1.0//EN"
              /local/path/on/your/system/to/oreilly-additional.entities

            PUBLIC "ISO 8879-1986//ENTITIES Added Latin 1//EN//HTML"
              /local/path/on/your/system/to/ISOlatin1

        If you have questions or comments about this DTD, please send
        them to:

        Norman Walsh <norm@ora.com>
        Technical Director, Online Publishing
        O'Reilly & Associates, Inc.
        90 Sherman Street
        Cambridge, MA 02140
        (617) 354-5800/661-1116 FAX
====================================================================== -->

<!-- the following was added from the original by Gerald Oskoboiny, because --
  -- I currently use this to determine which level of HTML is being used in --
  -- my validator (although I don't know if that's the best way to do it.) --
  -- Gerald Oskoboiny, 15 Mar 1996 -->
<!ENTITY % HTML.Version
	"-//OReilly and Associates//DTD HTML Extended Relaxed 1.0//EN"
	>
<!-- end of additions by Gerald Oskoboiny -->

<!ENTITY % HTML.Recommended "IGNORE">

<!-- ==================== FONT Extension ==================== -->
<!--                                                          -->

<!ENTITY % font " TT | B | I | FONT">

<!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | CITE ">

<!ENTITY % text "#PCDATA | A | IMG | BR | CENTER | %phrase | %font">

<!ATTLIST FONT
	SIZE CDATA #REQUIRED
        >

<!--                                                          -->
<!-- ==================== /FONT Extension =================== -->

<!-- ==================== Tables Extensions ================= -->
<!--                                                          -->

<!-- Begin by allowing TABLE in block content, modification   -->
<!-- continues below ...                                      -->
<!ENTITY % block.forms "BLOCKQUOTE | TABLE | FORM | ISINDEX">

<!--                                                          -->
<!-- ==================== Attribute Extensions ============== -->

<!-- Unfortunately, these modifications require changes to the
     base DTD to comment out the otherwise conflicting attribute
     definitions.  Hence "oreilly-rfc1866.dtd" and not the
     actually, official HTML DTD.                             -->

<!ATTLIST HR
        SDAPREF  CDATA               #FIXED   "&#RE;&#RE;"
	WIDTH    CDATA               #IMPLIED
	ALIGN    (left|right|center) #IMPLIED
        >

<!ATTLIST IMG
        SRC      CDATA   #REQUIRED
        ALT      CDATA   #IMPLIED
        ALIGN    (top|middle|bottom|left|right) #IMPLIED
        ISMAP    (ISMAP) #IMPLIED
        HEIGHT   CDATA   #IMPLIED
        WIDTH    CDATA   #IMPLIED
        BORDER   CDATA   #IMPLIED
        SDAPREF  CDATA   #FIXED     "<Fig><?SDATrans Img: #AttList>#AttVal(Alt)</Fig>"
        >

<!ATTLIST BR
        SDAPREF  CDATA  #FIXED "&#RE;"
        CLEAR (CLEAR) #IMPLIED -- clear text flow around images --
        >

<!ATTLIST P
        SDAFORM  CDATA  #FIXED "Para"
	ALIGN    (left|right|center) #IMPLIED
        >

<!ATTLIST H1
        SDAFORM  CDATA  #FIXED "H1"
        ALIGN    (left|right|center) #IMPLIED
        >
<!ATTLIST H2
        SDAFORM  CDATA  #FIXED "H2"
        ALIGN    (left|right|center) #IMPLIED
        >
<!ATTLIST H3
        SDAFORM  CDATA  #FIXED "H3"
        ALIGN    (left|right|center) #IMPLIED
        >
<!ATTLIST H4
        SDAFORM  CDATA  #FIXED "H4"
        ALIGN    (left|right|center) #IMPLIED
        >
<!ATTLIST H5
        SDAFORM  CDATA  #FIXED "H5"
        ALIGN    (left|right|center) #IMPLIED
        >
<!ATTLIST H6
        SDAFORM  CDATA  #FIXED "H6"
        ALIGN    (left|right|center) #IMPLIED
        >

<!-- ==================== /Attribute Extensions ============= -->

<!-- ==================== BODY Extension ==================== -->
<!--                                                          -->

<!ENTITY % URI "CDATA"
        -- The term URI means a CDATA attribute
           whose value is a Uniform Resource Identifier,
           as defined by 
	"Universal Resource Identifiers" by Tim Berners-Lee
	aka http://info.cern.ch/hypertext/WWW/Addressing/URL/URI_Overview.html
	aka RFC 1630

	Note that CDATA attributes are limited by the LITLEN
	capacity (1024 in the current version of html.decl),
	so that URIs in HTML have a bounded length.
        -->

<!ATTLIST BODY
        BACKGROUND %URI; #IMPLIED  
        BGCOLOR    CDATA #IMPLIED
	TEXT       CDATA #IMPLIED
	LINK       CDATA #IMPLIED
	VLINK      CDATA #IMPLIED
	ALINK	   CDATA #IMPLIED
	>

<!--                                                          -->
<!-- ==================== /BODY Extension =================== -->

<!-- ==================== IETF DTD ========================== -->
<!--                                                          -->

<!ENTITY % IETF.HTML.DTD PUBLIC "-//O'Reilly and Associates//DTD HTML 2.0//EN">
%IETF.HTML.DTD;

<!-- ==================== /IETF DTD ========================= -->

<!-- ==================== CENTER Element ==================== -->
<!--                                                          -->

<!ELEMENT CENTER - - ((%block | %text)+)>

<!--                                                          -->
<!-- ==================== /CENTER Element =================== -->

<!-- ==================== Tables Extension ================== -->
<!--                                                          -->

<!ENTITY % attrs  -- common attributes for elements --
        'id       ID      #IMPLIED -- as target for hrefs (link ends) --
         lang     CDATA   "en.us"  -- ISO language, country code --'>

<!ENTITY % needs -- Attributes for controlling text flow. Used in headers
                    and other elements to guarantee sufficient room --
        'clear  CDATA #IMPLIED'>

<!ENTITY % OReilly.Table.Fragment 
         PUBLIC "-//O'Reilly and Associates//ELEMENTS Table Fragment 1.0//EN">
%OReilly.Table.Fragment;

<!ENTITY % OReilly.Additional.HTML.Entities
         PUBLIC "-//O'Reilly and Associates//ENTITIES Additional HTML 1.0//EN">
%OReilly.Additional.HTML.Entities;

<!--                                                          -->
<!-- ==================== /Tables Extension ================= -->

<!-- EOF -->