1 |
wakaba |
1.1 |
* 1991年4月2日付 WorldWideWeb [CODE(file)@en[ParseHTML.h]]
|
2 |
|
|
|
3 |
|
|
[1] [[WorldWideWeb]]の1991年4月2日付 [CODE(file)@en[ParseHTML.h]]
|
4 |
|
|
では、次のように[[HTML]]が[[構文解析]]されるようです。
|
5 |
|
|
|
6 |
|
|
;; [[構文解析器]]の動作であって、[[言語]]の仕様ではありません。
|
7 |
|
|
|
8 |
|
|
;; 1991年9月版
|
9 |
|
|
<http://www.w3.org/History/1991-WWW-NeXT/Implementation/ParseHTML.h>
|
10 |
|
|
|
11 |
|
|
- [[文字列]]を、[[スタイル]] ([[段落]]、[[リスト]]など)、
|
12 |
|
|
[[テキスト]]、[[錨]]の集合体に変換します。
|
13 |
|
|
- 構造を入れ子にすることは (まだ) できません。
|
14 |
|
|
([[フラットでリニア]]www)
|
15 |
|
|
- 題名、参照、錨名は256文字を超えると無視します。
|
16 |
|
|
9月版では[Q[無限大]]という名前の定数で、現実には1024文字になっています。
|
17 |
|
|
- 未知の[[タグ]]は無視します。
|
18 |
|
|
- 未知の[[属性]]は無視します。既知の[[属性]]は未知の[[属性]]より前にないと無視されます。
|
19 |
|
|
- [[属性値]]は[[引用符]]で括れ''ません''。
|
20 |
|
|
- [[行]]の先頭が [CODE(charname)@en[[[FULL STOP]]]] で、
|
21 |
|
|
その次の[[文字]]は[[空白]]''以外''なら、[[SCRIPT]]の[[命令]]として、
|
22 |
|
|
その行の終わりまたは [CODE(charname)@en[[[SEMICOLON]]]]
|
23 |
|
|
の先に現れる方までを読み飛ばします。
|
24 |
|
|
- 連続する[[空白]]を1つにまとめは''しません''が、
|
25 |
|
|
[[タグ]]や[[改行]]近辺の[[空白]]は適当に処理されます。
|
26 |
|
|
- [[実体参照]]や[[文字参照]]はありません。
|
27 |
|
|
- [[タグ]]の[[要素型名]]や[[属性名]]の[[大文字]]と[[小文字]]は区別しません。
|
28 |
|
|
- [[空行]]は、[[改段落]]とみなします。
|
29 |
|
|
|
30 |
|
|
:[CODE(HTMLe)@en[<[CODE(HTMLe)@en[[[a]]]] [VAR@en[attr]]>]]:
|
31 |
|
|
[[錨]]です。[CODE(HTMLa)@en[[[href]]]][[属性]]があれば、
|
32 |
|
|
その値が[[参照]]先となります。[CODE(HTMLa)@en[[[name]]]][[属性]]があれば、その[[錨]]の[[名前]]
|
33 |
|
|
([[素片識別子]]) となります。もし[CODE(HTMLa)@en[[[name]]]][[属性値]]が[[整数]]で、次の番号として覚えているものより大きければ、
|
34 |
|
|
[CODE(HTMLa)@en[[[name]]]]より1大きな数を次の番号とします。
|
35 |
|
|
:[CODE(HTMLe)@en[<[CODE(HTMLe)@en[[[address]]]]>[VAR@en[text]]</[CODE(HTMLe)@en[[[address]]]]>]]:
|
36 |
|
|
[[内容]]が[[番地]]スタイルになります。
|
37 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[dd]]]]>]]:
|
38 |
|
|
[[定義リスト]]中の[[定義]]のはじめを表します。
|
39 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[dl]]]]>[VAR@en[...]]</[CODE(HTMLe)@en[[[dl]]]]>]]:
|
40 |
|
|
[[定義リスト]]です。[[内容]]は[[空]]でも構いませんが、
|
41 |
|
|
[[文字データ]]から始まってはいけません。
|
42 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[dt]]]]>]]:
|
43 |
|
|
[[定義リスト]]中の[[用語]]のはじめを表します。
|
44 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[h[VAR[n]]]]]]>[VAR@en[...]]</[CODE(HTMLe)@en[[[h[VAR[n]]]]]]>]]:
|
45 |
|
|
[[内容]]が[[見出し]]スタイルになります ([CODE(math)@en[[VAR[n]] = 1, 2, 3]])。
|
46 |
|
|
[[コンパイル]]時に[[定数]][CODE(C)@en[[[CERN_LIKE]]]]が定義されていれば、
|
47 |
|
|
[[終了タグ]]を待たず、次の[[改行]]を見つけ次第[[見出し]]スタイルを終えます
|
48 |
|
|
([[SGMLguid]]互換な動作)。
|
49 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[hp[VAR[n]]]]]]>[VAR@en[...]]</[CODE(HTMLe)@en[[[hp[VAR[n]]]]]]>]]:
|
50 |
|
|
[[内容]]を[[強調]]して表示します ([CODE(math)@en[[VAR[n]] = 1, 2, 3]])。
|
51 |
|
|
まだ実装は不完全なようです。
|
52 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[i1]]]]>]]:
|
53 |
|
|
[[行末]]まで無視します。[[SGMLguid]]で[[索引]]の飛び先を記述する[[要素型]]です。
|
54 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[isindex]]]]>]], [CODE(HTML)@en[</[CODE(HTMLe)@en[[[isindex]]]]>]]:
|
55 |
|
|
[[索引]]であることを表します。[[索引]]フラグを立てるだけです。
|
56 |
|
|
4月の[[ソース・コード]]では[[終了タグ]]にのみ対応していましたが、
|
57 |
|
|
9月の[[ソース・コード]]では[[開始タグ]]にも対応しました
|
58 |
|
|
(多分4月のは間違いですが、そのまま残されています)。
|
59 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[li]]]]>]]:
|
60 |
|
|
[[リスト]]の最初以外では、[[改段落]]します。
|
61 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[listing]]]]>[VAR@en[text]]</[CODE(HTMLe)@en[[[listing]]]]>]]:
|
62 |
|
|
[[終了タグ]]またはファイル末尾までが[[内容]]になります。
|
63 |
|
|
[[改行]]やその他の[[タグ]]もそのまま[[データ]]として処理されます。
|
64 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[nextid]]]] [VAR@en[n]]>]]:
|
65 |
|
|
新しい[[錨]]を挿入する時に[CODE(HTMLa)@en[[[name]]]]とする番号を設定します。
|
66 |
|
|
:[CODE(HTMLe)@en[<[CODE(HTMLe)@en[[[node]]]]>[VAR@en[...]]</[CODE(HTMLe)@en[[[node]]]]>]]:
|
67 |
|
|
[[部分節点]]。[[構文解析]]の段階で認識はされますが、
|
68 |
|
|
処理は実装されていません。仕様も未決定だったようです。
|
69 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[ol]]]]>[VAR@en[text]]</[CODE(HTMLe)@en[[[ol]]]]>]]:
|
70 |
|
|
[[内容]]を[[リスト]]・スタイルとします。
|
71 |
|
|
まだ[CODE(HTMLe)@en[[[ul]]]]の同義語として実装されています。
|
72 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[p]]]]>]]:
|
73 |
|
|
新しい[[段落]]にうつります。
|
74 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[plaintext]]]]>]]:
|
75 |
|
|
[[HTML]]としての[[構文解析]]は終了し、
|
76 |
|
|
以後は[[平文]]として処理します。[[注釈]]で、[[廃止]]と書かれています。
|
77 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[restoffile]]]] [VAR@en[type]]>]]:
|
78 |
|
|
[[HTML]]としての[[構文解析]]は終了し、
|
79 |
|
|
以後は[[平文]]または[[RTF]]として処理します。
|
80 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[title]]]]>[VAR@en[title]]</[CODE(HTMLe)@en[[[title]]]]>]]:
|
81 |
|
|
[[題名]]です。
|
82 |
|
|
:[CODE(HTML)@en[<[CODE(HTMLe)@en[[[ul]]]]>[VAR@en[text]]</[CODE(HTMLe)@en[[[ul]]]]>]]:
|
83 |
|
|
[[内容]]を[[リスト]]・スタイルとします。
|
84 |
|
|
:[CODE(HTMLe)@en[<[CODE(HTMLe)@en[[[xmp]]]]>[VAR@en[text]]</[CODE(HTMLe)@en[[[xmp]]]]>]]:
|
85 |
|
|
[[例]]です。[[終了タグ]]またはファイル末尾までが[[内容]]になります。
|
86 |
|
|
[[改行]]やその他の[[タグ]]もそのまま[[データ]]として処理されます。
|
87 |
|
|
|
88 |
|
|
[[#comment]]
|
89 |
|
|
|
90 |
|
|
* 1991年8月版新しいHTML文書の雛形
|
91 |
|
|
|
92 |
|
|
[2]
|
93 |
|
|
[[WorldWideWeb]]で新しい[[HTML]][[文書]]を作成する時に[[雛形]]として使われたとみられる[[HTML]][[文書]]
|
94 |
|
|
(1991年8月付) は、こんなものでした。
|
95 |
|
|
|
96 |
|
|
;; <http://www.w3.org/History/1991-WWW-NeXT/Implementation/WorldWideWeb.app/blank.html>
|
97 |
|
|
|
98 |
|
|
[PRE(HTML code)[
|
99 |
|
|
<title>(No title)</title>
|
100 |
|
|
<h1>Heading</h1>
|
101 |
|
|
Text<p>
|
102 |
|
|
__________________________________________________________________
|
103 |
|
|
<address>Author</address>
|
104 |
|
|
]PRE]
|
105 |
|
|
|
106 |
|
|
[[#comment]]
|
107 |
|
|
|
108 |
|
|
* メモ
|
109 |
|
|
|
110 |
|
|
|
111 |
|
|
|