`
`rfc1866
`
`Network Working Group
`Request for Comments: 1866
`Category: Standards Track
`
`T. Berners—Lee
`MIT/W3C
`D. Connolly
`November 1995
`
`Hypertext Markup Language - 2.9
`
`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 1996. 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.
`
`1.1
`1.2
`2.
`
`3.
`3.1
`
`3.2
`3.3
`
`3.4
`4.
`
`Introduction ........................................... 2
`
`Scope .................................................. 3
`Conformance ............................................ 3
`Terms .................................................. 6
`
`HTML as an Application of SGML ......................... 19
`SGML Documents ......................................... 19
`
`HTML Lexical Syntax ................................... 12
`HTML Public Text Identifiers .......................... 17
`
`Example HTML Document ................................. 17
`HTML as an Internet Media Type ........................ 18
`
`Berners-Lee & Connolly
`
`Standards Track
`
`[Page 1]
`
`
`
`
`Adobe Inc. v. Express Mobile, |nc.,
`https://datatracker.ietf.org/doc/htm|/rfc1866
`
`|PR2021-XXXXX, U.S. Pat. 9,471,287
`Exhflfit1017
`
`Exhibit 1017
`
`
`Exhibit 1017
`Page 01 of 77
`
`
`
`6/29/2021
`
`RFC 1866
`
`NH
`
`HO
`
`LDmeU'l-PUJNH
`mm-waHI-l
`
`LOOKOKDLOLOKDKOOOOOOOV\I\I\J\I\I\IO\O\U1U'IU'IU'IU1U'IU'IU'IU1U1U1-l>-P N
`
`|_\
`
`|_\o.°\IO\U'|-I>UJN|-‘
`
`|—‘ H
`12.
`12.1
`13.
`14.
`
`rfc1 866
`
`Hypertext Markup Language - 2.0
`
`November 1995
`
`text/html media type .................................. 18
`HTML Document Representation .......................... 19
`Document Structure .................................... 29
`Document Element: HTML ................................ 21
`Head: HEAD ............................................ 21
`
`Body: BODY ............................................ 24
`Headings: H1 ... H6 ................................... 24
`Block Structuring Elements ............................ 25
`List Elements ......................................... 28
`
`Phrase Markup ......................................... 36
`Line Break: BR ........................................ 34
`Horizontal Rule: HR ................................... 34
`
`IMG ............................................ 34
`Image:
`Characters, Words, and Paragraphs ..................... 35
`The HTML Document Character Set ....................... 36
`
`Hyperlinks ............................................ 36
`Accessing Resources ................................... 37
`Activation of Hyperlinks .............................. 38
`Simultaneous Presentation of Image Resources .......... 38
`Fragment Identifiers .................................. 38
`Queries and Indexes ................................... 39
`Image Maps ............................................ 39
`Forms ................................................. 46
`Form Elements ......................................... 40
`Form Submission ....................................... 45
`HTML Public Text ...................................... 49
`HTML DTD .............................................. 49
`Strict HTML DTD ....................................... 61
`Level 1 HTML DTD ...................................... 62
`Strict Level 1 HTML DTD ............................... 63
`SGML Declaration for HTML ............................. 64
`
`Sample SGML Open Entity Catalog for HTML .............. 65
`Character Entity Sets ................................. 66
`Security Considerations ............................... 69
`References ............................................ 69
`
`Acknowledgments ....................................... 71
`Authors' Addresses .................................... 71
`The HTML Coded Character Set .......................... 72
`
`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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page020f77
`
`2/77
`
`Exhibit 1017
`Page 02 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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 1999. 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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page030f77
`
`3/77
`
`Exhibit 1017
`Page 03 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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—19646] 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.
`
`in order to preserve the structure of a
`For example,
`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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page04of77
`
`4/77
`
`Exhibit 1017
`Page 04 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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-16646] 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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page050f77
`
`5/77
`
`Exhibit 1017
`Page 05 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`RFC 1866
`
`Hypertext Markup Language - 2.0
`
`November 1995
`
`2. Terms
`
`absolute URI
`
`a URI
`
`in absolute form; for example, as per [URL]
`
`one of two ends of a hyperlink; typically, a phrase
`marked as an <A> element.
`
`anchor
`
`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.
`character set.
`
`the range of a coded
`
`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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page06of77
`
`6/77
`
`Exhibit 1017
`Page 06 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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
`
`element
`
`end-tag
`
`entity
`
`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]
`
`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]
`
`Descriptive markup that identifies the end of an
`element.
`[SGML]
`
`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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page07of77
`
`7/77
`
`Exhibit 1017
`Page 07 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`RFC 1866
`
`Hypertext Markup Language - 2.0
`
`November 1995
`
`markup
`
`may
`
`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]
`
`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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page080f77
`
`8/77
`
`Exhibit 1017
`Page 08 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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
`
`URI
`
`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.
`
`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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page09of77
`
`9/77
`
`Exhibit 1017
`Page 09 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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.
`
`the first production of the SGML syntax
`In the SGML specification,
`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 19]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page100f77
`
`10/77
`
`Exhibit 1017
`Page 10 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`RFC 1866
`
`Hypertext Markup Language - 2.0
`
`November 1995
`
`For example, consider the following document:
`
`<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
`
`<tit1e>Parsing Examp1e</tit1e>
`<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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Pagellof77
`
`11/77
`
`Exhibit 1017
`Page 11 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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>
`
`_ OC.<
`
`B |\
`
`| | | | |
`
`|
`I
`
`| \
`
`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]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page120f77
`
`12/77
`
`Exhibit 1017
`Page 12 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`RFC 1866
`
`Hypertext Markup Language - 2.0
`
`November 1995
`
`the mapping of a sequence
`A complete discussion of SGML parsing, e.g.
`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
`abce;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 &# 69 def
`
`=> "abc & lt def"
`=> "abc &# 66 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
`CHARACTER REFERENCE
`
`NUMERIC
`CHAR REF
`
`CHARACTER DESCRIPTION
`
`&
`<
`>
`
`&
`<
`>
`
`&
`E
`>
`
`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]
`
`https://datatracker.ietf.org/doc/htmI/rfc1866
`Exhflfit1017
`
`Page130f77
`
`13/77
`
`Exhibit 1017
`Page 13 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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
`
`‘<BLOCKQUOTE>',
`For example,
`sensitive, but entity names are.
`‘<BlockQuote>', and ‘<blockquote>' are equivalent, whereas ‘&'
`different from ‘&'.
`
`is
`
`In a start-tag,
`delimiter ‘<'.
`
`the element name must
`
`immediately follow the tag open
`
`Berners-Lee & Connolly
`
`Standards Track
`
`[Page 14]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page14of77
`
`14/77
`
`Exhibit 1017
`Page 14 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`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
`CHARACTER REFERENCE
`
`NUMERIC
`CHAR REF
`
`CHARACTER DESCRIPTION
`
`HT
`LF
`CR
`SP
`“
`&
`
`"
`&
`
`	
`g
`
` 
`"
`&
`
`Tab
`Line Feed
`Carriage Return
`Space
`Quotation mark
`Ampersand
`
`Berners-Lee & Connolly
`
`Standards Track
`
`[Page 15]
`
`https://datatracker.ietf.org/doc/htmI/rfc1866
`Exhflfit1017
`
`Page150f77
`
`15/77
`
`Exhibit 1017
`Page 15 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`RFC 1866
`
`Hypertext Markup Language - 2.0
`
`November 1995
`
`For example:
`
`<IMG SRC="image.jpg" alt="First "real" example">
`
`“SGML
`The ‘NAMELEN' parameter in the SGML declaration (9.5,
`Declaration for HTML")
`limits the length of an attribute value to
`1624 characters.
`
`Attributes such as ISMAP and COMPACT may be written using a minimized
`syntax (see 7.9.1.2 "Omitted Attribute Name" in [SGML]). The markup:
`
`<UL COMPACT="compact">
`
`can be written using a minimized syntax:
`
`<UL COMPACT)
`
`NOTE - Some historical implementations only understand the minimized
`syntax.
`
`3.2.5. Comments
`
`To include comments in an HTML document, use a comment declaration. A
`comment declaration consists of ‘<!' followed by zero or more
`comments followed by ‘>'. Each comment starts with ‘—-
`and includes
`all text up to and including the next occurrence of ‘--'. In a
`comment declaration, white space is allowed after each comment, but
`not before the first comment.
`The entire comment declaration is
`
`ignored.
`
`NOTE - Some historical HTML implementations incorrectly consider
`any ‘>' character to be the termination of a comment.
`
`For example:
`
`<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
`<HEAD>
`
`<TITLE>HTML Comment Examp1e</TITLE>
`<!—- Id: html-sgml.sgm,v 1.5 1995/05/26 21:29:56 connolly Exp
`<!—- another -- -- comment -->
`<!>
`
`-—>
`
`</HEAD>
`<BODY>
`
`<p> <!- not a comment, just regular old data characters —>
`
`Berners-Lee & Connolly
`
`Standards Track
`
`[Page 16]
`
`https://datatracker.ietf.org/doc/htm|/rfc1866
`Exhflfit1017
`
`Page16of77
`
`16/77
`
`Exhibit 1017
`Page 16 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`RFC 1866
`
`Hypertext Markup Language - 2.0
`
`November 1995
`
`3.3. HTML Public Text Identifiers
`
`To identify information as an HTML document conforming to this
`specification, each document must start with one of the following
`document type declarations.
`
`<!DOCTYPE HTML PUBLIC I'-//IETF//DTD HTML 2.0//EN">
`
`This document type declaration refers to the HTML DTD in 9.1,
`DTD".
`
`"HTML
`
`NOTE - If the body of a ‘text/html' message entity does not begin
`with a document type declaration, an HTML user agent should infer
`the above document type declaration.
`
`<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0 Level 2//EN">
`
`This document type declaration also refers to the HTML DTD which
`appears in 9.1,
`"HTML DTD".
`
`<!DOCTYPE HTML PUBLIC "—//IETF//DTD HTML 2.6 Level 1//EN">
`
`This document type declaration refers to the level 1 HTML DTD in 9.3,
`"Level 1 HTML DTD“. Form elements must not occur in level 1
`documents.
`
`<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0 Strict//EN">
`<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.9 Strict Level 1//EN">
`
`These two document type declarations refer to the HTML DTD in 9.2,
`"Strict HTML DTD" and 9.4, “Strict Level 1 HTML DTD". They refer to
`the more structurally rigid definition of HTML.
`
`In particular,
`HTML user agents may support other document types.
`they may support other formal public identifiers, or other document
`types altogether. They may support an internal declaration subset
`with supplemental entity, element, and other markup declarations.
`
`3.4. Example HTML Document
`
`<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.9//EN">
`<HTML>
`
`<!-- Here's a good place to put a comment.
`<HEAD>
`
`-—>
`
`<TITLE>Structural Example</TITLE>
`</HEAD><BODY>
`<H1>First Header</H1>
`<P>This is a paragraph in the example HTML file. Keep in mind
`
`Berners-Lee & Connolly
`
`Standards Track
`
`[Page 17]
`
`https://datatracker.ietf.org/doc/htmI/rfc1866
`Exhflfit1017
`
`Page17of77
`
`17/77
`
`Exhibit 1017
`Page 17 of 77
`
`
`
`6/29/2021
`
`rfc1866
`
`RFC 1866
`
`Hypertext Markup Language - 2.0
`
`November 1995
`
`that the title does not appear in the document text, but that
`the header (defined by H1) does.</P>
`<OL>
`item in an ordered list.
`<LI>First
`<LI>Second item in an ordered list.
`<UL COMPACT>
`
`<LI> Note that lists can be nested;
`<LI> Whitespace may be used to assist in reading the
`HTML source.
`
`</UL>
`<LI>Third item in an ordered list.
`
`</0L>
`
`<P>This is an additional paragraph. Technically, end tags are
`not required for paragraphs, although they are allowed. You can
`include character highlighting in a paragraph. <EM>This sentence
`of the paragraph is emphasized.</EM> Note that the </P>
`end tag has been omitted.
`<P>
`
`">
`<IMG SRC ="triangle.xbm" alt=“Warning:
`Be sure to read these <b>bold instructions</b>.
`</BODY></HTML>
`
`4. HTML as an Internet Media Type
`
`An HTML user agent allows users to interac