`Request for Comments: 1866 MIT/W3C
`Category: Standards Track D. Connolly
` November 1995
`
` Hypertext Markup Language - 2.0
`
`Status of this Memo
`
` This document specifies an Internet standards track protocol for the
` Internet community, and requests discussion and suggestions for
` improvements. Please refer to the current edition of the "Internet
` Official Protocol Standards" (STD 1) for the standardization state
` and status of this protocol. Distribution of this memo is unlimited.
`
`Abstract
`
` The Hypertext Markup Language (HTML) is a simple markup language used
` to create hypertext documents that are platform independent. HTML
` documents are SGML documents with generic semantics that are
` appropriate for representing information from a wide range of
` domains. HTML markup can represent hypertext news, mail,
` documentation, and hypermedia; menus of options; database query
` results; simple structured documents with in-lined graphics; and
` hypertext views of existing bodies of information.
`
` HTML has been in use by the World Wide Web (WWW) global information
` initiative since 1990. This specification roughly corresponds to the
` capabilities of HTML in common use prior to June 1994. HTML is an
` application of ISO Standard 8879:1986 Information Processing Text and
` Office Systems; Standard Generalized Markup Language (SGML).
`
` The "text/html" Internet Media Type (RFC 1590) and MIME Content Type
` (RFC 1521) is defined by this specification.
`
`Table of Contents
`
` 1. Introduction ........................................... 2
` 1.1 Scope .................................................. 3
` 1.2 Conformance ............................................ 3
` 2. Terms .................................................. 6
` 3. HTML as an Application of SGML .........................10
` 3.1 SGML Documents .........................................10
` 3.2 HTML Lexical Syntax ................................... 12
` 3.3 HTML Public Text Identifiers .......................... 17
` 3.4 Example HTML Document ................................. 17
` 4. HTML as an Internet Media Type ........................ 18
`
`Berners-Lee & Connolly Standards Track [Page 1]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` 4.1 text/html media type .................................. 18
` 4.2 HTML Document Representation .......................... 19
` 5. Document Structure .................................... 20
` 5.1 Document Element: HTML ................................ 21
` 5.2 Head: HEAD ............................................ 21
` 5.3 Body: BODY ............................................ 24
` 5.4 Headings: H1 ... H6 ................................... 24
` 5.5 Block Structuring Elements ............................ 25
` 5.6 List Elements ......................................... 28
` 5.7 Phrase Markup ......................................... 30
` 5.8 Line Break: BR ........................................ 34
` 5.9 Horizontal Rule: HR ................................... 34
` 5.10 Image: IMG ............................................ 34
` 6. Characters, Words, and Paragraphs ..................... 35
` 6.1 The HTML Document Character Set ....................... 36
` 7. Hyperlinks ............................................ 36
` 7.1 Accessing Resources ................................... 37
` 7.2 Activation of Hyperlinks .............................. 38
` 7.3 Simultaneous Presentation of Image Resources .......... 38
` 7.4 Fragment Identifiers .................................. 38
` 7.5 Queries and Indexes ................................... 39
` 7.6 Image Maps ............................................ 39
` 8. Forms ................................................. 40
` 8.1 Form Elements ......................................... 40
` 8.2 Form Submission ....................................... 45
` 9. HTML Public Text ...................................... 49
` 9.1 HTML DTD .............................................. 49
` 9.2 Strict HTML DTD ....................................... 61
` 9.3 Level 1 HTML DTD ...................................... 62
` 9.4 Strict Level 1 HTML DTD ............................... 63
` 9.5 SGML Declaration for HTML ............................. 64
` 9.6 Sample SGML Open Entity Catalog for HTML .............. 65
` 9.7 Character Entity Sets ................................. 66
` 10. Security Considerations ............................... 69
` 11. References ............................................ 69
` 12. Acknowledgments ....................................... 71
` 12.1 Authors’ Addresses .................................... 71
` 13. The HTML Coded Character Set .......................... 72
` 14. Proposed Entities ..................................... 75
`
`1. Introduction
`
` The HyperText Markup Language (HTML) is a simple data format used to
` create hypertext documents that are portable from one platform to
` another. HTML documents are SGML documents with generic semantics
` that are appropriate for representing information from a wide range
` of domains.
`
`Berners-Lee & Connolly Standards Track [Page 2]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` As HTML is an application of SGML, this specification assumes a
` working knowledge of [SGML].
`
`1.1. Scope
`
` HTML has been in use by the World-Wide Web (WWW) global information
` initiative since 1990. Previously, informal documentation on HTML has
` been available from a number of sources on the Internet. This
` specification brings together, clarifies, and formalizes a set of
` features that roughly corresponds to the capabilities of HTML in
` common use prior to June 1994. A number of new features to HTML are
` being proposed and experimented in the Internet community.
`
` This document thus defines a HTML 2.0 (to distinguish it from the
` previous informal specifications). Future (generally upwardly
` compatible) versions of HTML with new features will be released with
` higher version numbers.
`
` HTML is an application of ISO Standard 8879:1986, "Information
` Processing Text and Office Systems; Standard Generalized Markup
` Language" (SGML). The HTML Document Type Definition (DTD) is a formal
` definition of the HTML syntax in terms of SGML.
`
` This specification also defines HTML as an Internet Media
` Type[IMEDIA] and MIME Content Type[MIME] called ‘text/html’. As such,
` it defines the semantics of the HTML syntax and how that syntax
` should be interpreted by user agents.
`
`1.2. Conformance
`
` This specification governs the syntax of HTML documents and aspects
` of the behavior of HTML user agents.
`
`1.2.1. Documents
`
` A document is a conforming HTML document if:
`
` * It is a conforming SGML document, and it conforms to the
` HTML DTD (see 9.1, "HTML DTD").
`
` NOTE - There are a number of syntactic idioms that
` are not supported or are supported inconsistently in
` some historical user agent implementations. These
` idioms are identified in notes like this throughout
` this specification.
`
` * It conforms to the application conventions in this
` specification. For example, the value of the HREF attribute
`
`Berners-Lee & Connolly Standards Track [Page 3]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` of the <A> element must conform to the URI syntax.
`
` * Its document character set includes [ISO-8859-1] and
` agrees with [ISO-10646]; that is, each code position listed
` in 13, "The HTML Coded Character Set" is included, and each
` code position in the document character set is mapped to the
` same character as [ISO-10646] designates for that code
` position.
`
` NOTE - The document character set is somewhat
` independent of the character encoding scheme used to
` represent a document. For example, the ‘ISO-2022-JP’
` character encoding scheme can be used for HTML
` documents, since its repertoire is a subset of the
` [ISO-10646] repertoire. The critical distinction is
` that numeric character references agree with
` [ISO-10646] regardless of how the document is
` encoded.
`
`1.2.2. Feature Test Entities
`
` The HTML DTD defines a standard HTML document type and several
` variations, by way of feature test entities. Feature test entities
` are declarations in the HTML DTD that control the inclusion or
` exclusion of portions of the DTD.
`
` HTML.Recommended
` 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 selects a more prescriptive document
` type definition that eliminates those features. It is
` set to ‘IGNORE’ by default.
`
` For example, in order to preserve the structure of a
` document, an editing user agent may translate HTML
` documents to the recommended subset, or it may require
` that the documents be in the recommended subset for
` import.
`
` HTML.Deprecated
` Certain features of the language are necessary for
` compatibility with earlier versions of the
` specification, but they tend to be used and implemented
` inconsistently, and their use is deprecated. This
` feature test entity enables a document type definition
` that allows these features. It is set to ‘INCLUDE’ by
` default.
`
`Berners-Lee & Connolly Standards Track [Page 4]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` Documents generated by translation software or editing
` software should not contain deprecated idioms.
`
`1.2.3. User Agents
`
` An HTML user agent conforms to this specification if:
`
` * It parses the characters of an HTML document into data
` characters and markup according to [SGML].
`
` NOTE - In the interest of robustness and
` extensibility, there are a number of widely deployed
` conventions for handling non-conforming documents.
` See 4.2.1, "Undeclared Markup Error Handling" for
` details.
`
` * It supports the ‘ISO-8859-1’ character encoding scheme and
` processes each character in the ISO Latin Alphabet No. 1 as
` specified in 6.1, "The HTML Document Character Set".
`
` NOTE - To support non-western writing systems, HTML
` user agents are encouraged to support
` ‘ISO-10646-UCS-2’ or similar character encoding
` schemes and as much of the character repertoire of
` [ISO-10646] as is practical.
`
` * It behaves identically for documents whose parsed token
` sequences are identical.
`
` For example, comments and the whitespace in tags disappear
` during tokenization, and hence they do not influence the
` behavior of conforming user agents.
`
` * It allows the user to traverse (or at least attempt to
` traverse, resources permitting) all hyperlinks from <A>
` elements in an HTML document.
`
` An HTML user agent is a level 2 user agent if, additionally:
`
` * It allows the user to express all form field values
` specified in an HTML document and to (attempt to) submit the
` values as requests to information services.
`
`Berners-Lee & Connolly Standards Track [Page 5]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
`2. Terms
`
` absolute URI
` a URI in absolute form; for example, as per [URL]
`
` anchor
` one of two ends of a hyperlink; typically, a phrase
` marked as an <A> element.
`
` base URI
` an absolute URI used in combination with a relative URI
` to determine another absolute URI.
`
` character
` An atom of information, for example a letter or a digit.
` Graphic characters have associated glyphs, whereas
` control characters have associated processing semantics.
`
` character encoding
` scheme
` A function whose domain is the set of sequences of
` octets, and whose range is the set of sequences of
` characters from a character repertoire; that is, a
` sequence of octets and a character encoding scheme
` determines a sequence of characters.
`
` character repertoire
` A finite set of characters; e.g. the range of a coded
` character set.
`
` code position
` An integer. A coded character set and a code position
` from its domain determine a character.
`
` coded character set
` A function whose domain is a subset of the integers and
` whose range is a character repertoire. That is, for some
` set of integers (usually of the form {0, 1, 2, ..., N}
` ), a coded character set and an integer in that set
` determine a character. Conversely, a character and a
` coded character set determine the character’s code
` position (or, in rare cases, a few code positions).
`
` conforming HTML user
` agent
` A user agent that conforms to this specification in its
` processing of the Internet Media Type ‘text/html’.
`
`Berners-Lee & Connolly Standards Track [Page 6]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` data character
` Characters other than markup, which make up the content
` of elements.
`
` document character set
` a coded character set whose range includes all
` characters used in a document. Every SGML document has
` exactly one document character set. Numeric character
` references are resolved via the document character set.
`
` DTD
` document type definition. Rules that apply SGML to the
` markup of documents of a particular type, including a
` set of element and entity declarations. [SGML]
`
` element
` A component of the hierarchical structure defined by a
` document type definition; it is identified in a document
` instance by descriptive markup, usually a start-tag and
` end-tag. [SGML]
`
` end-tag
` Descriptive markup that identifies the end of an
` element. [SGML]
`
` entity
` data with an associated notation or interpretation; for
` example, a sequence of octets associated with an
` Internet Media Type. [SGML]
`
` fragment identifier
` the portion of an HREF attribute value following the ‘#’
` character which modifies the presentation of the
` destination of a hyperlink.
`
` form data set
` a sequence of name/value pairs; the names are given by
` an HTML document and the values are given by a user.
`
` HTML document
` An SGML document conforming to this document type
` definition.
`
` hyperlink
` a relationship between two anchors, called the head and
` the tail. The link goes from the tail to the head. The
` head and tail are also known as destination and source,
` respectively.
`
`Berners-Lee & Connolly Standards Track [Page 7]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` markup
` Syntactically delimited characters added to the data of
` a document to represent its structure. There are four
` different kinds of markup: descriptive markup (tags),
` references, markup declarations, and processing
` instructions. [SGML]
`
` may
` A document or user interface is conforming whether this
` statement applies or not.
`
` media type
` an Internet Media Type, as per [IMEDIA].
`
` message entity
` a head and body. The head is a collection of name/value
` fields, and the body is a sequence of octets. The head
` defines the content type and content transfer encoding
` of the body. [MIME]
`
` minimally conforming
` HTML user agent
` A user agent that conforms to this specification except
` for form processing. It may only process level 1 HTML
` documents.
`
` must
` Documents or user agents in conflict with this statement
` are not conforming.
`
` numeric character
` reference
` markup that refers to a character by its code position
` in the document character set.
`
` SGML document
` A sequence of characters organized physically as a set
` of entities and logically into a hierarchy of elements.
` An SGML document consists of data characters and markup;
` the markup describes the structure of the information
` and an instance of that structure. [SGML]
`
` shall
` If a document or user agent conflicts with this
` statement, it does not conform to this specification.
`
`Berners-Lee & Connolly Standards Track [Page 8]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` should
` If a document or user agent conflicts with this
` statement, undesirable results may occur in practice
` even though it conforms to this specification.
`
` start-tag
` Descriptive markup that identifies the start of an
` element and specifies its generic identifier and
` attributes. [SGML]
`
` syntax-reference
` character set
` A coded character set whose range includes all
` characters used for markup; e.g. name characters and
` delimiter characters.
`
` tag
` Markup that delimits an element. A tag includes a name
` which refers to an element declaration in the DTD, and
` may include attributes. [SGML]
`
` text entity
` A finite sequence of characters. A text entity typically
` takes the form of a sequence of octets with some
` associated character encoding scheme, transmitted over
` the network or stored in a file. [SGML]
`
` typical
` Typical processing is described for many elements. This
` is not a mandatory part of the specification but is
` given as guidance for designers and to help explain the
` uses for which the elements were intended.
`
` URI
` A Uniform Resource Identifier is a formatted string that
` serves as an identifier for a resource, typically on the
` Internet. URIs are used in HTML to identify the anchors
` of hyperlinks. URIs in common practice include Uniform
` Resource Locators (URLs)[URL] and Relative URLs
` [RELURL].
`
` user agent
` A component of a distributed system that presents an
` interface and processes requests on behalf of a user;
` for example, a www browser or a mail user agent.
`
`Berners-Lee & Connolly Standards Track [Page 9]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` WWW
` The World-Wide Web is a hypertext-based, distributed
` information system created by researchers at CERN in
` Switzerland. <URL:http://www.w3.org/>
`
`3. HTML as an Application of SGML
`
` HTML is an application of ISO 8879:1986 -- Standard Generalized
` Markup Language (SGML). SGML is a system for defining structured
` document types and markup languages to represent instances of those
` document types[SGML]. The public text -- DTD and SGML declaration --
` of the HTML document type definition are provided in 9, "HTML Public
` Text".
`
` The term "HTML" refers to both the document type defined here and the
` markup language for representing instances of this document type.
`
`3.1. SGML Documents
`
` An HTML document is an SGML document; that is, a sequence of
` characters organized physically into a set of entities, and logically
` as a hierarchy of elements.
`
` In the SGML specification, the first production of the SGML syntax
` grammar separates an SGML document into three parts: an SGML
` declaration, a prologue, and an instance. For the purposes of this
` specification, the prologue is a DTD. This DTD describes another
` grammar: the start symbol is given in the doctype declaration, the
` terminals are data characters and tags, and the productions are
` determined by the element declarations. The instance must conform to
` the DTD, that is, it must be in the language defined by this grammar.
`
` The SGML declaration determines the lexicon of the grammar. It
` specifies the document character set, which determines a character
` repertoire that contains all characters that occur in all text
` entities in the document, and the code positions associated with
` those characters.
`
` The SGML declaration also specifies the syntax-reference character
` set of the document, and a few other parameters that bind the
` abstract syntax of SGML to a concrete syntax. This concrete syntax
` determines how the sequence of characters of the document is mapped
` to a sequence of terminals in the grammar of the prologue.
`
`Berners-Lee & Connolly Standards Track [Page 10]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` For example, consider the following document:
`
` <!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
` <title>Parsing Example</title>
` <p>Some text. <em>*wow*</em></p>
`
` An HTML user agent should use the SGML declaration that is given in
` 9.5, "SGML Declaration for HTML". According to its document character
` set, ‘*’ refers to an asterisk character, ‘*’.
`
` The instance above is regarded as the following sequence of
` terminals:
`
` 1. start-tag: TITLE
`
` 2. data characters: "Parsing Example"
`
` 3. end-tag: TITLE
`
` 4. start-tag: P
`
` 5. data characters "Some text."
`
` 6. start-tag: EM
`
` 7. data characters: "*wow*"
`
` 8. end-tag: EM
`
` 9. end-tag: P
`
`Berners-Lee & Connolly Standards Track [Page 11]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` The start symbol of the DTD grammar is HTML, and the productions are
` given in the public text identified by ‘-//IETF//DTD HTML 2.0//EN’
` (9.1, "HTML DTD"). The terminals above parse as:
`
` HTML
` |
` \-HEAD
` | |
` | \-TITLE
` | |
` | \-<TITLE>
` | |
` | \-"Parsing Example"
` | |
` | \-</TITLE>
` |
` \-BODY
` |
` \-P
` |
` \-<P>
` |
` \-"Some text. "
` |
` \-EM
` | |
` | \-<EM>
` | |
` | \-"*wow*"
` | |
` | \-</EM>
` |
` \-</P>
`
` Some of the elements are delimited explicitly by tags, while the
` boundaries of others are inferred. The <HTML> element contains a
` <HEAD> element and a <BODY> element. The <HEAD> contains <TITLE>,
` which is explicitly delimited by start- and end-tags.
`
`3.2. HTML Lexical Syntax
`
` SGML specifies an abstract syntax and a reference concrete syntax.
` Aside from certain quantities and capacities (e.g. the limit on the
` length of a name), all HTML documents use the reference concrete
` syntax. In particular, all markup characters are in the repertoire of
` [ISO-646]. Data characters are drawn from the document character set
` (see 6, "Characters, Words, and Paragraphs").
`
`Berners-Lee & Connolly Standards Track [Page 12]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` A complete discussion of SGML parsing, e.g. the mapping of a sequence
` of characters to a sequence of tags and data, is left to the SGML
` standard[SGML]. This section is only a summary.
`
`3.2.1. Data Characters
`
` Any sequence of characters that do not constitute markup (see 9.6
` "Delimiter Recognition" of [SGML]) are mapped directly to strings of
` data characters. Some markup also maps to data character strings.
` Numeric character references map to single-character strings, via the
` document character set. Each reference to one of the general entities
` defined in the HTML DTD maps to a single-character string.
`
` For example,
`
` abc<def => "abc","<","def"
` abc<def => "abc","<","def"
`
` The terminating semicolon on entity or numeric character references
` is only necessary when the character following the reference would
` otherwise be recognized as part of the name (see 9.4.5 "Reference
` End" in [SGML]).
`
` abc < def => "abc ","<"," def"
` abc < def => "abc ","<"," def"
`
` An ampersand is only recognized as markup when it is followed by a
` letter or a ‘#’ and a digit:
`
` abc & lt def => "abc & lt def"
` abc &# 60 def => "abc &# 60 def"
`
` A useful technique for translating plain text to HTML is to replace
` each ’<’, ’&’, and ’>’ by an entity reference or numeric character
` reference as follows:
`
` ENTITY NUMERIC
` CHARACTER REFERENCE CHAR REF CHARACTER DESCRIPTION
` --------- ---------- ----------- ---------------------
` & & & Ampersand
` < < < Less than
` > > > Greater than
`
` NOTE - There are SGML mechanisms, CDATA and RCDATA
` declared content, that allow most ‘<’, ‘>’, and ‘&’
` characters to be entered without the use of entity
` references. Because these mechanisms tend to be used and
` implemented inconsistently, and because they conflict
`
`Berners-Lee & Connolly Standards Track [Page 13]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` with techniques for reducing HTML to 7 bit ASCII for
` transport, they are deprecated in this version of HTML.
` See 5.5.2.1, "Example and Listing: XMP, LISTING".
`
`3.2.2. Tags
`
` Tags delimit elements such as headings, paragraphs, lists, character
` highlighting, and links. Most HTML elements are identified in a
` document as a start-tag, which gives the element name and attributes,
` followed by the content, followed by the end tag. Start-tags are
` delimited by ‘<’ and ‘>’; end tags are delimited by ‘</’ and ‘>’. An
` example is:
`
` <H1>This is a Heading</H1>
`
` Some elements only have a start-tag without an end-tag. For example,
` to create a line break, use the ‘<BR>’ tag. Additionally, the end
` tags of some other elements, such as Paragraph (‘</P>’), List Item
` (‘</LI>’), Definition Term (‘</DT>’), and Definition Description
` (‘</DD>’) elements, may be omitted.
`
` The content of an element is a sequence of data character strings and
` nested elements. Some elements, such as anchors, cannot be nested.
` Anchors and character highlighting may be put inside other
` constructs. See the HTML DTD, 9.1, "HTML DTD" for full details.
`
` NOTE - The SGML declaration for HTML specifies SHORTTAG YES, which
` means that there are other valid syntaxes for tags, such as NET
` tags, ‘<EM/.../’; empty start tags, ‘<>’; and empty end-tags,
` ‘</>’. Until support for these idioms is widely deployed, their
` use is strongly discouraged.
`
`3.2.3. Names
`
` A name consists of a letter followed by letters, digits, periods, or
` hyphens. The length of a name is limited to 72 characters by the
` ‘NAMELEN’ parameter in the SGML declaration for HTML, 9.5, "SGML
` Declaration for HTML". Element and attribute names are not case
` sensitive, but entity names are. For example, ‘<BLOCKQUOTE>’,
` ‘<BlockQuote>’, and ‘<blockquote>’ are equivalent, whereas ‘&’ is
` different from ‘&’.
`
` In a start-tag, the element name must immediately follow the tag open
` delimiter ‘<’.
`
`Berners-Lee & Connolly Standards Track [Page 14]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
`3.2.4. Attributes
`
` In a start-tag, white space and attributes are allowed between the
` element name and the closing delimiter. An attribute specification
` typically consists of an attribute name, an equal sign, and a value,
` though some attribute specifications may be just a name token. White
` space is allowed around the equal sign.
`
` The value of the attribute may be either:
`
` * A string literal, delimited by single quotes or double
` quotes and not containing any occurrences of the delimiting
` character.
`
` NOTE - Some historical implementations consider any
` occurrence of the ‘>’ character to signal the end of
` a tag. For compatibility with such implementations,
` when ‘>’ appears in an attribute value, it should be
` represented with a numeric character reference. For
` example, ‘<IMG SRC="eq1.jpg" alt="a>b">’ should be
` written ‘<IMG SRC="eq1.jpg" alt="a>b">’ or ‘<IMG
` SRC="eq1.jpg" alt="a>b">’.
`
` * A name token (a sequence of letters, digits, periods, or
` hyphens). Name tokens are not case sensitive.
`
` NOTE - Some historical implementations allow any
` character except space or ‘>’ in a name token.
`
` In this example, <img> is the element name, src is the attribute
` name, and ‘http://host/dir/file.gif’ is the attribute value:
`
` <img src=’http://host/dir/file.gif’>
`
` A useful technique for computing an attribute value literal for a
` given string is to replace each quote and white space character by an
` entity reference or numeric character reference as follows:
`
` ENTITY NUMERIC
` CHARACTER REFERENCE CHAR REF CHARACTER DESCRIPTION
` --------- ---------- ----------- ---------------------
` HT 	 Tab
` LF Line Feed
` CR Carriage Return
` SP   Space
` " " " Quotation mark
` & & & Ampersand
`
`Berners-Lee & Connolly Standards Track [Page 15]
`
`Starbucks, Ex. 1085
`Starbucks v. Ameranth, CBM2015-00099
`
`
`
`
`RFC 1866 Hypertext Markup Language - 2.0 November 1995
`
` For example:
`
` <IMG SRC="image.jpg" alt="First "real" example">
`
` The ‘NAMELEN’ parameter in the SGML declaration (9.5, "SGML
` Declaration for HTML") limits the length of an attribute value to
` 1024 characters.
`
` Attributes such as ISMAP and COMPACT may be written using a minimized
` sy