HTML Reference Guide


Tag Index| Content List| HTML FAQ

!Doctype

Description:

The !Doctype declaration is a top-level element known as a Public Text Identifier. It should appear at the very beginning of an HTML document in order to identify the content of the document as conforming (theoretically) to a particular HTML DTD specification. Almost all popular browser parsers allow the omission of this declaration (probably because they are expecting HTML and they interpret only those elements and attributes which they can handle.) The quoted segment within a DOCTYPE declaration is called a Formal Public Identifier (FPI.) Every distinct DTD variation will have its own unique FPI string.

!Doctype Examples

HTML 2.0

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0 Level 2//EN">
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML Level 2//EN">

HTML 3.0

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN//">

HTML 4.0

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">

Syntax

Typical HTML DOCTYPE statement:

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">

Annotated syntax:

<!DOCTYPE [Top Element] [Availability] "[Registration]// [Organization]//[Type] [Label]//[Language]">

Explanation:

General : A pair of forward slash characters ("//") is used as delimiters between keyword fields in the FPI declaration.
(1) : [Top Element] - Indicates the top level element type declared in the DTD; for HTML it is <html>.
(2) : [Availability] - field indicates whether the identifier is a publicly accessible object (PUBLIC) or a system resource (SYSTEM) such as a local file or URL. HTML DTDs are specified by PUBLIC identifiers.
(3) : [Registration] - Indicated by either a plus ("+") or minus ("-"). A plus symbol indicates that the organization name that follows is ISO-registered. A minus sign indicates the organization name is not registered. The IETF and W3C are not registered ISO organizations and thus use a "-".
(4) : [Organization] - This is the "OwnerID" - a unique label indicating the name of the entity or organization responsible for the creation and/or maintenance of the artifact (DTD, etc.) being referenced by the DOCTYPE. The IETF and W3C are the two originating organizations of the official HTML DTDs.
(5) : [Type] - This is the "Public Text Class" - the type of object being referenced. There are many different keywords possible here, but in the case of an HTML DTD, it is "DTD" - a Document Type Definition.
(6) : [Label] - This is the "Public Text Description" - a unique descriptive name for the public text being referenced. If the public text changes for any reason, a new Public Text Description should be created for it.
(7) : [Language] - This is the "Public Text Language"; the natural language encoding system used in the creation of the referenced object. It is written as an ISO 639 language code (uppercase, two letters.) HTML DTDs are usually (always?) written in English ("EN".)

See Also: