-
Typical HTML DOCTYPE statement:
-
<!DOCTYPE HTML PUBLIC "- // W3C // DTD HTML 4.0 Transitional // EN " "http://www.w3.org/TR/html4/loose.dtd "> (1) (2) (3) (4) (5) (6) (7) (8)
Annotated syntax:
-
<!DOCTYPE [Top Element ] [Availability ] "[Registration ]// [Organization ]// [Type ] [Label ]// [Language ]" "[URL ]"> (1) (2) (3) (4) (5) (6) (7) (8)
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/XHTML 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/XHTML 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/XHTML DTD, it is "DTD" - a Document Type Definition.
- (6) : [ Label ] - This is the "Public Text Description" - a unique descriptive name for the public text (DTD) being referenced. If the public text changes for any reason, a new Public Text Description string 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/XHTML DTDs are usually (always?) written in English ("EN".)
- (8) : [ URL ] - This is the optional explicit URL to the DTD being referenced.