Re: むしろAnother HTML-lintを使え
- むしろAnother HTML-lintを使え (securecat's exblog)
HTML 4.01の仕様によれば、複数の属性は空白文字で区切る必要があります。
Any number of (legal) attribute value pairs, separated by spaces, may appear in an element's start tag.
この例でいいますと、img要素のsrc属性とalt属性が区切られずに繋がってしまっているため、これはHTML 4.01として
invalidなはseparated by spacesされていないのです。
うーん、それは何か違う気がする。
そもそも On SGML and HTML に書いてあることは HTML の仕様に対して拘束力を持っている (normative である) のか。この章の冒頭には次のようにある:
This section of the document introduces SGML and discusses its relationship to HTML. A complete discussion of SGML is left to the standard (see [ISO8879]).
とてもここに書いてあることは元元の SGML の仕様より優先する
といっているようには思えない。この章は SGML をよく知らずにいきなり HTML の仕様書を読み始めた人のために SGML の手ほどきをしているのであって、別に HTML の厳密な文法規則を定義しているのではない、と俺は解釈している。
もし本当に空白を常に挟むことを強制させたかったら、Any number of (legal) attribute value pairs, separated by spaces, may appear in an element's start tag.
というような曖昧な書き方ではなく、Any number of (legal) attribute value pairs may appear in an element's start tag and all the pairs must be separated by one or more whitespaces.
などというように空白が一個以上必要なことを強調する書き方で書いてあるはずだ。
とか思いながら流し読みしていると、第 4 章 Conformance: requirements and recommendations の冒頭に In this section, we begin the specification of HTML 4, starting with the contract between authors, documents, users, and user agents.
とある。これで決まりだね。第 4 章より前の部分は全部 informative だ。
| 固定リンク
コメント
絶妙なタイミングで、すでに引用されているのに気づかず、文章をいじってしまいました。
とりあえず、いじったまんまにしておきますが、すみません。
投稿: yuu | 2007年8月 8日 (水) 17時49分
あと、むしろ僕の主観が強いってことですね。
ようするに、けっこうinformativeなことに囚われているということなんですが、それは実装の業者だからかもしれません。
そんなようなことを、今書いているので、そのうちエントリーします。という、謎の報告。
投稿: yuu | 2007年8月 8日 (水) 17時58分
わざわざどうも。とりあえず引用元の変更にあわせてこの文書内の引用箇所も直しておきました (けどこれでいいのかなぁ)。
投稿: まじかんと | 2007年8月 8日 (水) 18時11分
あ、separated が sepated になってる。
投稿: まじかんと | 2007年8月 8日 (水) 18時16分
separatedにしておきました。
投稿: yuu | 2007年8月 8日 (水) 18時38分
> separatedにしておきました。
こちらももう一度直しました。
投稿: まじかんと | 2007年8月 8日 (水) 18時51分