4 Definitions and Conventions


  1. Definitions
  2. Document conventions
    1. Elements and attributes
    2. Notes and examples
  3. SGML
Below we list some definitions and conventions adopted in this specification.

4.1 Definitions

Degrees of obligation
Words such as "must", "should", "can", and "may" are used in accordance with [RFC2119]. At times, the authors of this specification also provide, in the form of recommendations, guidelines to good usage or good implementations. These recommendations are not normative and conformance with this specification does not depend on their execution.
User agent
A user agent is any device that interprets HTML documents. User agents include visual browsers (text-only and graphical), non-visual browsers (audio, Braille), search robots, proxies, etc.
Conforming user agent
A conforming user agent for HTML 4.0 is one that observes the mandatory conditions ("must") set forth in this specification, including the following points:

This specification does not define how conforming user agents should handle general error conditions.

A deprecated element or attribute is one that has been outdated by newer constructs. Deprecated elements are defined in the reference manual in appropriate locations, but are clearly marked as deprecated. Deprecated elements may become obsolete in future versions of HTML.

We recommend that authors avoid using deprecated elements and attributes whenever practical. To this end, we provide alternatives to them when appropriate in the specification. In most cases these depend on user agent support for style sheets.

User agents should continue to support deprecated elements for reasons of backward compatibility.

An obsolete element or attribute is one for which there is no guarantee of support by a user agent. Obsolete elements are no longer defined in the specification, but are listed for historical purposes in the changes section of the reference manual.

4.2 Document conventions

This specification presents elements in a "semantic" order, from most basic to most sophisticated constructs. Elements may be discussed in several different contexts depending on their use (e.g., DIV as a structuring element and DIV and its role with style sheets). Despite scattered references, the specification defines each element and attribute in one location only.

4.2.1 Elements and attributes

Similarly, attributes that apply to many elements (e.g., lang, dir, class, etc.) are defined where most appropriate semantically. Consequently, an element definition may include a reference to an attribute that may be defined elsewhere. When this is the case, the location of the definition is clearly indicated and for the electronic version of the specification, accessible by a link.

Definitions of elements and attributes clearly indicate which are deprecated. In such cases, the specification includes examples of better HTML usage.

In the electronic version of the specification, all references to an element or attribute (from the index or in the specification text) are linked to its definition.

Element names are written in upper case letters (e.g., BODY). Attribute names are written in lower case letters (e.g., lang, onsubmit). Recall that in HTML, element and attribute names are case-insensitive. Our convention is designed to encourage readability of the specification.

Element and attribute names are marked within the source HTML for the specification and may be rendered specially depending on your user agent.

The type of an attribute's value is specified in its definition. However, if the set of possible values is small, the values are listed explicitly, separated by a bar (|). The first value in this list is the default value.

4.2.2 Notes and examples

Informative notes are emphasized to stand out from surrounding text. How the emphasis is rendered depends on your user agent.

All examples illustrating deprecated usage are marked as "DEPRECATED EXAMPLE". Deprecated examples also include recommended alternate solutions. All examples that illustrates illegal usage are clearly marked as "ILLEGAL EXAMPLE".

Examples and notes are marked within the source HTML for the specification and may be rendered specially depending on your user agent.

4.3 SGML

Comments appearing in the HTML 4.0 DTD have no normative value; they are informative only.