MarkUp.wn 20-May-1992 05:49 http://lost-contact.mit.edu/afs/cern.ch/w3.org/www/MarkUp.wn _____ This document is older than the modification date indicates. It contains, primarily but not entirely, a document whose original title appears to have been "HyperText Transfer format", and is the first ever specification for HTML. Since it is embedded within fragments of other very early WWW protocol instructions, and though the file extension identifies it as a WriteNow document, it appears that this is only part of a document. Loading the original into WriteNow causes WriteNow to crash, and the document does not start with the normal WriteNow document identification. The document content is duplicated in three separate clumps, with minor changes between the clumps. These presumably represent saved revisions. From an analysis of the changes, it is possible to reconstruct the chronological order of the three sections. This document reproduces in ASCII, as much as possible, the general original pieces of the manuscript, with all changes placed side by side. The three sections are labelled 01, 02, and 03. This document evolved into an HTML document called HTML Tags, which was made available on the first website at info.cern.ch. A copy of this document from 9 January 1992 exists here: http://lists.w3.org/Archives/Public/www-talk/1992JanFeb/0000.html This has been incorporated into this analysis, as its contents clearly postdate 03 and yet are a direct descendant of it, with the general structure being almost identical, and much of the wording retained. The main difference is that the HTML Tags document has undergone a serious amount of expansion. The conclusion is that MarkUp.wn is a version of the first HTML specification, written in WriteNow rather than HTML, and intended for internal CERN distribution only. It was then used to form the basis of the first public description of HTML. _____ 01 HyperText Transfer format This is a draft for internal discussion. TBD means "To be defined". Comments please to timbl@vxcern.cern.ch. This copy was printed from the source on  . Introduction This document defines the text mark-up format used for network transfer of hypertext infoirmation. The ASCII (ISO-XXXX) character set [ref] is used, without extension.The format is marked up in SGML style, with control information being introduced by a less than sign "<", followed by an alphanumeric "tag". Following the tag, a number of attributes may be specified, of the form   attribute_name  =   value  where the attribute name is alphanumeric, and the value is any printable string not containing spaces. Control information is terminated by a closing greater than ">" sign. We refer to this mark up language as HyperText Markup Language, or HTML. Default text Unless otherwise defined by tags, text is transmitted as a stream of lines. The division of the stream of characters into lines is arbitrary, and only made in order to allow the text to be passed through systems which can only handle text with a limited line length. The recommended line length for transmission is 80 characters. The division into lines has no significance (except in the case of the XMP and PLAINTEXT tags - see below). The names of tags and attributes are not case sensitive: they may be in lower, upper, or mixed case with exactly the same meaning. (In this document they are gemerally represented in upper case.) Tags It is recommended that a parser ignores those tags which it does not recognize. A list of tags currently defined follows: _____ ... 01 The text between the opening amd the closing is a title for the hypertext node. Theer should only be one title in any node. 02 (as 01) The text between the opening amd the closing is a title for the hypertext node. Theer should only be one title in any node. 03 (as 01) The text between the opening amd the closing is a title for the hypertext node. There should only be one title in any node. @ Title The title of a document is given between title tags: ... The text between the opening and the closing tags is a title for the hypertext node. There should only be one title in any node. It should identify the content of the node in a fairly wide context, and should ideally fit on one line. The title is not strictly part of the text of the document, but is an attribute of the node. It may not contain anchors, paragraph marks, or highlighting. the title may be used to identify the node in a history list, to label the window displaying the node, etc. It is not normally displayed in the text of a document itself. Contrast titles with headings . _____ @ Next ID This tag takes a single attribute which is the number of the next document-wide numeric identifier to be allocated (not good SGML). Note that when modifying a document, old anchor ids should not be reused, as there may be references stored elsewhere which point to them. This is read and generated by hypertext editors. Human writers of HTML usually use mnemonic alpha identifiers. Browser software may ignore this tag. Example of use: @ Base Address Anchors specify addresses of other documents, in a from relative to the address of the current document. Normally, the address of a document is known to the browser because it was used to access the document. However, is a document is mailed, or is somehow visible with more than one address (for example, via its filename and also via its library name server catalogue number), then the browser needs to know the base address in order to correctly deduce external document addresses. The format of this tag is not yet specified. _____ ...  01 The text between the opening and the closing is senstive text. If the reader selects this text, he should be presented with another document whose network address is defined by the HREF attribute in the tag. The format of the network address is specified below. An attribute REL may give the relationship described by the hyerptext link. Valid relationships are given below. The deafult relationship if none other is given is SEE_ALSO. An attribute ID may give an alphanumeric identifier used to reference the anchor from other anchors. See the section on addressing below. 02 The text between the opening and the closing is senstive text. If the reader selects this text, he should be presented with another document whose network address is defined by the HREF attribute in the tag. The format of the network address is specified below. This allows for the form  HREF=#    identifier to refer to another anchor in the same document. An attribute REL may give the relationship described by the hyerptext link. Valid relationships are given below. The deafult relationship if none other is given is SEE_ALSO. An attribute ID may give an alphanumeric identifier used to reference the anchor from other anchors. See the section on addressing below. All identifiers are optional, although one of ID and HREF is necessary for the anchor to be useful. 03 The text between the opening and the closing is either the start or destination (or both) of a link. If the HREF attribute is present, the anchor is senstive text: the start of a link. If the reader selects this text, he should be presented with another document whose network address is defined by the parameter of the HREF attribute . The format of the network address is specified elsewhere*. This allows for the form  HREF=#   identifier to refer to another anchor in the same document. The attribute NAME allows the anchor to be the destination of a link. The value of the parameter is that part of a hypertext address which follows the hash sign. An attribute REL may give the relationship described by the hyerptext link. Valid relationships are given below. The deafult relationship if none other is given is SEE_ALSO. All identifiers are optional, although one of NAME and HREF is necessary for the anchor to be useful. -- Relationship values SEE_ALSO INCLUDES PART_OF EMBED EMBEDDED_IN TBD... @ Anchors The format of an anchor is as follows: ... The text between the opening tag and the closing tag is either the start or destination (or both) of a link. Attributes of the anchor tag are as follows. HREF If the HREF attribute is present, the anchor is senstive text: the start of a link. If the reader selects this text, he should be presented with another document whose network address is defined by the value of the HREF attribute . The format of the network address is specified elsewhere . This allows for the form HREF=#identifier to refer to another anchor in the same document. If the anchor is in another document, the atribute is a relative name , relative to the documents address (or specified base address if any). NAME The attribute NAME allows the anchor to be the destination of a link. The value of the parameter is that part of a hypertext address which follows the hash sign. TYPE An attribute TYPE may give the relationship described by the hyertext link. The type is expressed by a string for extensibility. Strings for types with particular semantics will be registered by the W3 team. The default relationship if none other is given is void. All attributes are optional, although one of NAME and HREF is necessary for the anchor to be useful. _____ 01 TBD 02 This signifies that the node may be queried with a keyword search. (This may be done by suffixing the node address with a question mark, followed by a list of keywords separated by plus signs. See the network address format below). TBD 03 This signifies that the node may be queried with a keyword search. (This may be done by suffixing the node address with a question mark, followed by a list of keywords separated by plus signs. See the network address format below). TBD @ IsIndex This tag informs the reader that the document is an index document. As well as reading it, the reader may use a keyword search. Format: The node may be queried with a keyword search by suffixing the node address with a question mark, followed by a list of keywords separated by plus signs. See the network address format. _____ 01 This is similar to but the link has no specific anchor within the document. It may have an ID, in which case any reference to it is effectively to the anchor it references. 02 (as 01) This is similar to but the link has no specific anchor within the document. It may have an ID, in which case any reference to it is effectively to the anchor it references. 03 (as 01) This is similar to but the link has no specific anchor within the document. It may have an ID, in which case any reference to it is effectively to the anchor it references. _____ 01 TBD 02 TBD _____ � � � 01 �  This tag indicates that all following text is to be taken litterally, up to the end of the file. Plain text is designed to be represented in the same way as example <XMP> text, with fixed width character and significant line breaks. This tag allows the rest of a file to be read efficiently without parsing. Its presence is an optimisation. 02 (as 01) This tag indicates that all following text is to be taken litterally, up to the end of the file. Plain text is designed to be represented in the same way as example <XMP> text, with fixed width character and significant line breaks. This tag allows the rest of a file to be read efficiently without parsing. Its presence is an optimisation. @ Plaintext This tag indicates that all following text is to be taken litterally, up to the end of the file. Plain text is designed to be represented in the same way as example XMP text, with fixed width character and significant line breaks. Format: <PLAINTEXT> This tag allows the rest of a file to be read efficiently without parsing. Its presence is an optimisation. There is no closing tag. _____ <XMP> ..</XMP> 01 The text between these tags is to be portrayed in a fixed width font, so that any formatting done by character spacing on successive lines will be maintained. �  Between these tags, line boundaries are significant � � , and are to be interpreted as a move to the start of a new line.  Between thse tags, the ASCII Horizontal Tab (HT) character should be interpreted as the smallest positive nonzero number of spaces which will leave the number of characters so far on the line as a multiple of 8. Its use is not recommended however. 02 (as 01) The text between these tags is to be portrayed in a fixed width font, so that any formatting done by character spacing on successive lines will be maintained. �  Between these tags, line boundaries are significant � � , and are to be interpreted as a move to the start of a new line. Between thse tags, the ASCII Horizontal Tab (HT) character should be interpreted as the smallest positive nonzero number of spaces which will leave the number of characters so far on the line as a multiple of 8. Its use is not recommended however. @ Example sections These styles allow text of fixed-width characters to be embedded absolutely as is into the document. The format is: <LISTING> ... </LISTING> The text between these tags is to be portrayed in a fixed width font, so that any formatting done by character spacing on successive lines will be maintained. Between the opening and closing tags: The text may contain any ISO Latin printable characters, including the tag opener, so long as it does not contain the closing tag in full. Line boundaries are significant, and are to be interpreted as a move to the start of a new line. The ASCII Horizontal Tab (HT) character should be interpreted as the smallest positive nonzero number of spaces which will leave the number of characters so far on the line as a multiple of 8. Its use is not recommended however. The LISTING tag is portrayed so that at least 132 characters will fit on a line. The XMP tag is portrayed in a font so that at least 80 characters will fit on a line but is otherwise identical to LISTING. The examples of markup are here given using the XMP tag. _____ <P> 01 This tag indicates a new paragraph. The exact representation of this (indentation, leading, etc) is not dfined here, and may be a function of other tags. 02 This tag indicates a new paragraph. The exact representation of this (indentation, leading, etc) is not defined here, and may be a function of other tags. @ Paragraph This tag indicates a new paragraph. The exact representation of this (indentation, leading, etc) is not defined here, and may be a function of other tags, style sheets etc. The format is simply <P> (In SGML terms, paragraph elements are transmitted in minimised form). _____ <H1>, <H2>, <H3> <HP1>, <HP2> <DL>, <DD>, <DT> <UL>, <OL>, <LI> 01 These tags are kept as defined in the CERN SGML guide [ref]. Their definition is completely historical. 02 (as 01) These tags are kept as defined in the CERN SGML guide [ref]. Their definition is completely historical. @ Headings Several levels (at least six) of heading are supported. Note that a hypertext document tends to need less levels of heading than a normal document whose only structure is given by the nesting of headings. H1 is the highest level of heading, and is recommened for the start of a hypertext node. It is suggested that the first heading be one suitable for a reader who is already browsing in related information, in contrast to the title tag which should identify the node in a wider context. <H1>, <H2>, <H3>, <H4>, <H5>, <H6> These tags are kept as defined in the CERN SGML guide. Their definition is completely historical, deriving from the AAP tag set. A difference is that HTML documents allow headings to be terminated by closing tags: <H2>Second level heading</h2> Highlighting The highlighted phrase tags may occur in normal text, and may be nested. For each opening tag there must follow a corresponding closing tag. NOT CURRENTLY USED. <HP1>...</HP1> <HP2>... </HP2> etc. Glossaries A glosary (or definition list) is a list of paragraphs each of which has a short title alongside it. Apart from glossaries, this format is useful for presenting a set of named elements to the reader. The format is as follows: <DL> <DT>Term<DD>definition pagagraph <DT>Term2<DD>Definition of term2 </DL> Lists A list is a sequence of paragraphs, each of which is preceded by a special mark or sequence number. The format is: <UL> <LI> list element <LI> another list element ... </LI> The opening list tag (UL for an unordered list, OL for an ordered one) must be immediately followed by the first list element. The representation of the list is not defined here, but a bulleted list for unordered lists, and a sequence of numbered paraghraphs for an ordered list would be quite appropriate. "OL" IS NOT CURRENTLY USED _____ Sean B. Palmer Original document by Tim Berners-Lee, circa 1990 This document created 1 January 2011