File: //usr/share/sgml/html/dtd/html-mcom.dtd
<!-- html-mcom.dtd
Document Type Definition for the HyperText Markup Language (HTML DTD)
with Netscape Communications Corp Extensions
Date: 27 Oct. 1994
Author: Daniel W. Connolly <connolly@w3.org>
See Also: html.decl, ISOlat1.sgml
http://home.netscape.com/assist/net_sites/html_extensions.html
http://www.halsoft.com/sgml/Mozilla/DTD-HOME.html
http://www.hpl.hp.co.uk/people/dsr/html3/Contents.html
Maintanence by: Mark Gaither (markg@webtechs.com)
Copyright 1996 - WebTechs - Austin, TX
http://www.webtechs.com/
-->
<!ENTITY % HTML.Version
"-//WebTechs//DTD Mozilla HTML 2.0//EN"
-- Typical usage:
<!DOCTYPE HTML PUBLIC "-//WebTechs//DTD Mozilla HTML 2.0//EN">
<html>
...
</html>
--
>
<!--================== Feature Test Entities ==============================-->
<!ENTITY % HTML.Recommended "IGNORE"
-- Certain features of the language are necessary for compatibility
with widespread usage, but they may compromise the structural
integrity of a document. This feature test entity enables
a more prescriptive document type definition that eliminates
the above features.
-->
<![ %HTML.Recommended [
<!ENTITY % HTML.Deprecated "IGNORE">
]]>
<!ENTITY % HTML.Deprecated "INCLUDE"
-- Certain features of the language are necessary for compatibility
with earlier versions of the specification, but they tend
to be used an implemented inconsistently, and their use is
deprecated. This feature test entity enables a document type
definition that eliminates these features.
-->
<!ENTITY % HTML.Highlighting "INCLUDE">
<!ENTITY % HTML.Forms "INCLUDE">
<!--================== Imported Names =====================================-->
<!ENTITY % Content-Type "CDATA"
-- meaning a MIME content type, as per RFC1521
-->
<!ENTITY % HTTP-Method "GET | POST"
-- as per HTTP specification
-->
<!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.
-->
<!-- DTD "macros" -->
<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
<!ENTITY % list " UL | OL | DIR | MENU " >
<!--================ Character mnemonic entities ==========================-->
<!ENTITY % ISOlat1 PUBLIC
"-//IETF//ENTITIES Added Latin 1 for HTML//EN">
%ISOlat1;
<!ENTITY amp CDATA "&" -- ampersand -->
<!ENTITY gt CDATA ">" -- greater than -->
<!ENTITY lt CDATA "<" -- less than -->
<!ENTITY quot CDATA """ -- double quote -->
<!ENTITY reg CDATA "®" -- registered trademark -->
<!ENTITY copy CDATA "©" -- copyright -->
<!--=================== Text Markup =======================================-->
<![ %HTML.Highlighting [
<!ENTITY % font " TT | B | I | FONT | BIG | SMALL | SUB | SUP ">
<!ENTITY % phrase "EM | STRONG | CODE | SAMP | KBD | VAR | CITE | BLINK">
<!ENTITY % text "#PCDATA | A | IMG | BR | WBR | NOBR | BASEFONT
| %phrase | %font">
<!ENTITY % text.nonparseable "A | IMG | BR | WBR | NOBR | BASEFONT
| %phrase | %font">
<!ENTITY % pre.content "#PCDATA | A | HR | BR | %font | %phrase">
<!ELEMENT (%font;|%phrase) - - (%text)+>
<!ELEMENT basefont - - ANY>
<!ATTLIST (font|basefont)
SIZE CDATA #IMPLIED -- should be NUTOKEN, using size=plus3, --
COLOR CDATA #IMPLIED -- color attribute --
>
]]>
<!ENTITY % text "#PCDATA | A | IMG | BR | WBR | NOBR | CENTER">
<!ELEMENT BR - O EMPTY>
<!ATTLIST BR
CLEAR (left|right|all) #IMPLIED>
<!ELEMENT NOBR - - (%text)+>
<!ELEMENT WBR - O EMPTY>
<!--================== Link Markup ========================================-->
<![ %HTML.Recommended [
<!ENTITY % linkName "ID">
]]>
<!ENTITY % linkName "CDATA">
<!ENTITY % linkType "NAME"
-- a list of these will be specified at a later date -->
<!ENTITY % linkExtraAttributes
"REL %linkType #IMPLIED -- forward relationship type --
REV %linkType #IMPLIED -- reversed relationship type
to referent data --
URN CDATA #IMPLIED -- universal resource number --
TITLE CDATA #IMPLIED -- advisory only --
METHODS NAMES #IMPLIED -- supported public methods of the object:
TEXTSEARCH, GET, HEAD, ... --
">
<![ %HTML.Recommended [
<!ENTITY % A.content "(%text)+"
-- <H1><a name="xxx">Heading</a></H1>
is preferred to
<a name="xxx"><H1>Heading</H1></a>
-->
]]>
<!ENTITY % A.content "(%heading|%text)+">
<!ELEMENT A - - %A.content -(A)>
<!ATTLIST A
HREF %URI #IMPLIED
NAME %linkName #IMPLIED
%linkExtraAttributes;
>
<!--=================== Images ============================================-->
<!ENTITY % img.alt.default "#IMPLIED"
-- ALT attribute required in Level 0 docs -->
<!ELEMENT IMG - O EMPTY -- Embedded image -->
<!ATTLIST IMG
SRC %URI; #REQUIRED -- URI of document to embed --
LOWSRC %URI; #IMPLIED -- low resolution images spec --
USEMAP %URI; #IMPLIED -- client-side mape --
ALT CDATA %img.alt.default;
ALIGN (left|right|center|top|texttop|middle|
absmiddle|baseline|bottom|absbottom) baseline
WIDTH CDATA #IMPLIED
HEIGHT NUMBER #IMPLIED
BORDER NUMBER #IMPLIED
VSPACE NUMBER #IMPLIED
HSPACE NUMBER #IMPLIED
ISMAP (ISMAP) #IMPLIED
>
<!ELEMENT MAP - - (AREA)+>
<!ATTLIST MAP
NAME CDATA #REQUIRED -- name of client side map --
>
<!ELEMENT AREA - O EMPTY>
<!ATTLIST AREA
SHAPE (rect|poly|circle|default) rect -- shape of area --
COORDS CDATA #REQUIRED -- coordinates of shape --
HREF %URI; #IMPLIED -- reference --
NOHREF (nohref) #IMPLIED -- do nothing on a click --
>
<!--=================== Paragraphs=========================================-->
<!ENTITY % attrs -- common attributes for elements --
'id ID #IMPLIED -- as target for hrefs (link ends) --
lang CDATA "en.us" -- ISO language, country code --
class NAMES #IMPLIED -- for subclassing elements --'>
<!ENTITY % needs -- Attributes for controlling text flow. Used in headers
and other elements to guarantee sufficient room --
'clear CDATA "no" -- (left|right|all|no) move down past figures --
needs CDATA #IMPLIED -- minimum width needed in em"s or pixels --
-- e.g. "40 em" or "100 pixels" --'>
<!ELEMENT P - O (%text)+>
<!ATTLIST P
%attrs;
align (left|center|right) #IMPLIED
%needs; -- for control of text flow --
nowrap (nowrap) #IMPLIED -- disable wordwrap --
>
<!--=================== Headings, Titles, Sections ========================-->
<!ELEMENT HR - O EMPTY -- horizontal rule -->
<!ATTLIST HR
SIZE NUMBER #IMPLIED
WIDTH CDATA #IMPLIED
ALIGN (left|right|center) #IMPLIED
NOSHADE (NOSHADE) #IMPLIED>
<!ELEMENT ( %heading ) - - (%text;)+>
<!ATTLIST ( %heading )
%attrs;
align (left|center|right|justify) #IMPLIED
%needs; -- for control of text flow --
>
<!ELEMENT TITLE - - (#PCDATA)
-- 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.
-->
<!--=================== Text Flows ========================================-->
<![ %HTML.Forms [
<!ENTITY % block.forms "FORM | TABLE | ISINDEX">
]]>
<!ENTITY % block.forms "">
<![ %HTML.Deprecated [
<!ENTITY % preformatted "PRE | XMP | LISTING">
]]>
<!ENTITY % preformatted "PRE">
<!ENTITY % block "P | %list | DL
| %preformatted
| BLOCKQUOTE | APPLET | CENTER | %block.forms">
<!ENTITY % flow "(%text|%block)*">
<!ENTITY % pre.content "#PCDATA | A | HR | BR">
<!ELEMENT PRE - - (%pre.content)+>
<!ATTLIST PRE
WIDTH NUMBER #implied
>
<![ %HTML.Deprecated [
<!ENTITY % literal "CDATA"
-- special non-conforming parsing mode where
the only markup signal is the end tag
in full
-->
<!ELEMENT XMP - - %literal>
<!ELEMENT LISTING - - %literal>
<!ELEMENT PLAINTEXT - O %literal>
]]>
<!--=================== Lists =============================================-->
<!ELEMENT DL - - (DT*, DD?)+>
<!ATTLIST DL
COMPACT (COMPACT) #IMPLIED>
<!ELEMENT DT - O (%text)+>
<!ELEMENT DD - O %flow>
<!ELEMENT (OL|UL) - - (LI)+>
<!ELEMENT (DIR|MENU) - - (LI)+ -(%block)>
<!ATTLIST (UL)
COMPACT (COMPACT) #IMPLIED
TYPE (disc|circle|square) disc
>
<!ATTLIST (OL)
START NUMBER #IMPLIED
COMPACT (COMPACT) #IMPLIED
TYPE (a|i|1) 1
>
<!ELEMENT LI - O %flow>
<!ATTLIST LI
TYPE (disc|circle|square|a|i|1) disc
VALUE NUMBER #IMPLIED
>
<!--=================== Document Body =====================================-->
<![ %HTML.Recommended [
<!ENTITY % body.content "(MAP|DIV|%heading|%block|HR|ADDRESS)*"
-- <h1>Heading</h1>
<p>Text ...
is preferred to
<h1>Heading</h1>
Text ...
-->
]]>
<!ENTITY % body.content "(MAP | DIV | %heading | %text | %block | HR | ADDRESS)*">
<!ELEMENT BODY O O %body.content>
<!ATTLIST BODY
BACKGROUND %URI; #IMPLIED
BGCOLOR CDATA #IMPLIED
TEXT CDATA #IMPLIED
LINK CDATA #IMPLIED
VLINK CDATA #IMPLIED
ALINK CDATA #IMPLIED
>
<!ELEMENT BLOCKQUOTE - - %body.content>
<!ELEMENT CENTER - - %body.content>
<![ %HTML.Recommended [
<!ENTITY % address.content "(%text)*">
]]>
<!ENTITY % address.content "(%text|P)*">
<!ELEMENT ADDRESS - - %address.content>
<!ELEMENT DIV - - %body.content>
<!ATTLIST DIV
%attrs;
%needs; -- for control of text flow --
align (left|center|right) left -- alignment of following text --
nowrap (nowrap) #IMPLIED -- disable wordwrap --
>
<!--================ Forms ===============================================-->
<![ %HTML.Forms [
<!ELEMENT FORM - - %body.content -(FORM) +(INPUT|SELECT|TEXTAREA)>
<!ATTLIST FORM
ACTION %URI #REQUIRED
METHOD (%HTTP-Method) GET
ENCTYPE %Content-Type; "application/x-www-form-urlencoded"
>
<!ENTITY % InputType "(TEXT | PASSWORD | CHECKBOX |
RADIO | SUBMIT | RESET |
IMAGE | HIDDEN )">
<!ELEMENT INPUT - O EMPTY>
<!ATTLIST INPUT
TYPE %InputType TEXT
NAME CDATA #IMPLIED -- required for all but submit and reset --
VALUE CDATA #IMPLIED
SRC %URI #IMPLIED -- for image inputs --
CHECKED (CHECKED) #IMPLIED
SIZE CDATA #IMPLIED -- like NUMBERS,
but delimited with comma, not space --
MAXLENGTH NUMBER #IMPLIED
ALIGN (top|middle|bottom) #IMPLIED
>
<!ELEMENT SELECT - - (OPTION+)>
<!ATTLIST SELECT
NAME CDATA #REQUIRED
SIZE NUMBER #IMPLIED
MULTIPLE (MULTIPLE) #IMPLIED
>
<!ELEMENT OPTION - O (#PCDATA)>
<!ATTLIST OPTION
SELECTED (SELECTED) #IMPLIED
VALUE CDATA #IMPLIED
>
<!ELEMENT TEXTAREA - - (#PCDATA)>
<!ATTLIST TEXTAREA
NAME CDATA #REQUIRED
ROWS NUMBER #REQUIRED
COLS NUMBER #REQUIRED
>
]]>
<!--================ Document Head ========================================-->
<!ENTITY % head.link "& LINK*">
<![ %HTML.Recommended [
<!ENTITY % head.nextid "">
]]>
<!ENTITY % head.nextid "& NEXTID?">
<!ENTITY % head.content "TITLE & ISINDEX? & BASE? & META*
%head.nextid
%head.link">
<!ELEMENT HEAD O O (%head.content)>
<!ELEMENT LINK - O EMPTY>
<!ATTLIST LINK
HREF %URI #REQUIRED
%linkExtraAttributes; >
<!ELEMENT ISINDEX - O EMPTY>
<!ATTLIST ISINDEX
PROMPT CDATA "This is a searchable index. Enter search keywords:">
<!ELEMENT BASE - O EMPTY>
<!ATTLIST BASE
HREF %URI; #REQUIRED
>
<!ELEMENT NEXTID - O EMPTY>
<!ATTLIST NEXTID N %linkName #REQUIRED>
<!ELEMENT META - O EMPTY -- Generic Metainformation -->
<!ATTLIST META
HTTP-EQUIV NAME #IMPLIED -- HTTP response header name --
NAME NAME #IMPLIED -- metainformation name --
CONTENT CDATA #REQUIRED -- associated information --
>
<!--================ Tables ===================================-->
<!ENTITY % block.align
"align (bleedleft|left|center|right|bleedright|justify) center">
<!ELEMENT CAPTION - - (%text;)+ -- table or figure caption -->
<!ATTLIST CAPTION
%attrs;
align (top|bottom|left|right) #IMPLIED
>
<!ELEMENT TABLE - - (CAPTION?, TR*) -- mixed headers and data -->
<!ATTLIST TABLE
%attrs;
%needs; -- for control of text flow --
border NUMBER #IMPLIED -- draw borders --
colspec CDATA #IMPLIED -- column widths and alignment --
units (em|pixels|relative) em -- units for column widths --
width CDATA #IMPLIED -- absolute or percentage width --
%block.align; -- horizontal alignment --
nowrap (nowrap) #IMPLIED -- don't wrap words --
cellspacing NUMBER 2 -- insert space between cells --
cellpadding NUMBER 1 -- pad between cell border and content --
>
<!ENTITY % cell "TH | TD">
<!ENTITY % vertical.align "top|middle|bottom|baseline">
<!ELEMENT TR - O (%cell)* -- row container -->
<!ATTLIST TR
%attrs;
align (left|center|right|justify) #IMPLIED
valign (%vertical.align) top -- vertical alignment --
nowrap (nowrap) #IMPLIED -- don't wrap words --
>
<!ELEMENT (%cell) - O %body.content>
<!ATTLIST (%cell)
%attrs;
colspan NUMBER 1 -- columns spanned --
rowspan NUMBER 1 -- rows spanned --
align (left|center|right|justify) #IMPLIED
valign (%vertical.align) top -- vertical alignment --
nowrap (nowrap) #IMPLIED -- don't wrap words --
width CDATA #IMPLIED -- allow width for cells --
axis CDATA #IMPLIED -- axis name, defaults to element content --
axes CDATA #IMPLIED -- comma separated list of axis names --
>
<!--===============Applet======================================-->
<!ELEMENT param - O EMPTY>
<!ATTLIST param
name NAME #REQUIRED -- The name of the parameter --
value CDATA #IMPLIED -- The value of the parameter --
>
<!ELEMENT applet - - (param*, (%text.nonparseable;)*)>
<!ATTLIST applet
codebase CDATA #IMPLIED -- code base --
code CDATA #REQUIRED -- code file --
name CDATA #IMPLIED -- applet name --
width NUMBER #REQUIRED
height NUMBER #REQUIRED
align (left|right|top|texttop|middle|
absmiddle|baseline|bottom|absbottom) baseline
vspace NUMBER #IMPLIED
hspace NUMBER #IMPLIED
>
<!--================ Document Structure ===================================-->
<![ %HTML.Deprecated [
<!ENTITY % html.content "HEAD, BODY, PLAINTEXT?">
]]>
<!ENTITY % html.content "HEAD, BODY">
<!ELEMENT HTML O O (%html.content)>
<!ENTITY % version.attr "VERSION CDATA #FIXED "%HTML.Version;"">
<!ATTLIST HTML
%version.attr;-- report DTD version to application --
>