/[pub]/suikawiki/wikidata/page/48544D4C.ns/CAB8BDF1B7BFC0EBB8C0.txt
Suika

Contents of /suikawiki/wikidata/page/48544D4C.ns/CAB8BDF1B7BFC0EBB8C0.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (hide annotations) (download)
Fri Jul 18 00:11:31 2003 UTC (21 years, 3 months ago) by w
Branch: MAIN
Changes since 1.2: +1 -0 lines
File MIME type: text/plain
auto-commited

1 make 1.1 #?SuikaWiki/0.9
2     *HTML の文書型宣言の色々
3     -[1] お題: [[HTML]] ([[不思議マーク付け]]も含む。)
4     の[[文書型宣言]] ([[DOCTYPE]]) の記述を収集せよ。
5     - [9] [CODE[<!DOCTYPE HTML PUBLIC "-//W3 Organization//DTD W3 HTML 2.0//EN">]] (''Hypertext Markup language and SGML'' <http://www.w3.org/MarkUp/1995-archive/Intro.html>)
6     - [10] ''Mozilla の DOCTYPE 判別'' <http://jt.mozilla.gr.jp/docs/web-developer/quirks/doctypes.html> 色々な文書型宣言 (不正なものも含む。) の例示あり
7     - [33] ''W3C QA - List of valid DTDs you can use in your document.'' <http://www.w3.org/QA/2002/04/valid-dtd-list.html>
8     - [34] [CODE[<!DOCTYPE Mosaic-Communications-Bookmark-file-1>]] [[MosaicNetscape]] の bookmark
9     - [37] ''SGML catalog for the W3C HTML Validation Service'' <http://validator.w3.org/sgml-lib/catalog> 色んなのが載ってます。
10     - [38] >>37 の [[DTD]] は ''Index of /sgml-lib'' <http://validator.w3.org/sgml-lib/> にあります。
11     - [54] [CODE(SGML)[<!DOCTYPE HTML PUBLIC "-//connolly hal.com//DTD WWW HTML 1.8//EN">]] ''HTML Design Notebook'' <http://www.w3.org/People/Connolly/drafts/html-design.html> で使われている。
12     - [55] [CODE(HTML)[<!DOCTYPE HTML PUBLIC "-//Mosaic Comm. Corp.//DTD HTML//EN">]] ''Testing mcom additions to HTML'' <http://www.w3.org/People/Connolly/html-test/mcom/test-mcom.html> で使われている。
13     - [67] [CODE(HTML)[<!doctype html public "html2.0">]] [[IBM]] の古い文書にある
14     - [71] [CODE(HTML)[<!DOCTYPE HTML PUBLIC "ISO 15445:2000//DTD HTML//EN">]] 『[[ISO-HTML]] 利用者の手引き』中に出てきたが・・・
15     - [72] >>71 の出典は翻訳 JIS TR の。 ([[JIS-HTML]] 参照。) しかし、 [[InternetArchive]] に残っている最古の <http://web.archive.org/web/20000815232401/woodworm.cs.uml.edu/~rprice/15445/UG.html> も、既にちゃんと [CODE(HTML)[ISO/IEC]] になってるんだよなあ。
16     - [73] [CODE(HTML)[<!DOCTYPE Pre-HTML PUBLIC "-//ISO-HTML User's Guide//DTD Preparation of ISO-HTML//EN">]] 『[[ISO-HTML]] 利用者の手引き』9.1.1。
17     - [75] [CODE(HTML)["-//Netscape//netscape extension//JA"]]: ''Phrase/Typographic markup test'' <http://web.archive.org/web/20011110215859/www.dais.is.tohoku.ac.jp/~kabe/misc/fonts.html>
18     - [76] [CODE(HTML)[<!doctype html public "-//W3C//DTD HTML 5.0//EN">]], [CODE(HTML)[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 5.0//EN">]], [CODE(HTML)[<!DOCTYPE HTML PUBLIC"-//W3C//DTD HTML 5.0 Frameset//EN" "http://www.w3.org/TR/REC-html140/frameset.dtd">]]: <IW:Strictスレ:"1:423">
19     - [77] [CODE(HTML)[<!DOCTYPE html SYSTEM "http://www.w3.org/Style/HTML40-plus-blink.dtd">]]: ''Web Style Sheets'' <http://www.w3.org/Style/> で使われている。余程 [[blink]] 要素が使いたかったらしい。
20     - [78] [CODE(HTML)[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2Final//EN"]] 壊れてる気がするが。
21 make 1.2 - [84] [CODE(HTML)[<!doctype html public "-//W3C//DTD HTML 1996-01//EN">]]: ''Extensible Markup Language (XML)'' <http://www.w3.org/TR/WD-xml-961114> の文書型。
22 w 1.3 - [87] [[FPI]] [CODE(HTML)[-//M3C//DTD XHTML Makoto Sawatari 1.6//EN]], [CODE(HTML)[-//M3C//DTD XHTML Mishio Amano 12.6//EN]], [CODE(HTML)[-//M3C//DTD XHTML Misuzu Kamio 7.23//EN]]: 単なる冗句。 ''Makoto Mishio Misuzu Cuties'' <http://m3c.misuzilla.org/>
23 make 1.1 [[#comment]]
24    
25     *文書型宣言のない HTML 文書
26     -[79] [[HTML]] 文書は、一般に文書型宣言を冒頭に入れるべきです。
27     [[XHTML]] 文書は、特定の ([[DTD]] の存在する) profile
28     に適合することを主張する場合は、これを明示するべきです。
29    
30     [80] >>79 はとりあえずおいておいて、文書型宣言のない HTML
31     (not XHTML) 文書が正しいのか考えてみます。
32    
33     [81] [[WebSGML]] では文書型宣言は必須ではありませんから、
34     これを採用している [[HTML4]] と [[XML]] では省略できます。
35     しかし HTML 4 では文書型宣言を必須と定義しています。 XML
36     はここでの話の対象外です。
37    
38     [82] [INS[(伝統的な HTML の話と HTML 2.0 の規定の話)]]
39    
40     [83] では旧来の HTML 文書で文書型宣言のないものが不当かというと、
41     必ずしもそうではありません。確かに、単独の文書 ([[SGML文書実体]])
42     としては不当です。
43     しかし、実はそれは[[外部解析実体]]だったとしたらどうでしょう。
44    
45     つまり、[[WWWブラウザ]]は随時こんな感じの SGML
46     文書実体を自動生成していると考えるのです。
47    
48     [PRE[
49     <!SGML [VAR[その実装の SGML 宣言]]>
50 make 1.2 <!DOCTYPE [[html]] SYSTEM "[VAR[その実装の DTD]]" [
51     <!ENTITY real-document SYSTEM "[VAR[当該文書の URI]]">
52 make 1.1 ]>
53 make 1.2 &real-document;
54 make 1.1 ]PRE]
55    
56     これなら、当該文書が [[SGML文実体]]として適当である限りは、
57     妥当な SGML 文書じゃないですかね?
58 make 1.2
59     [85] >>83 の例は不正だった。 (文書要素の外の部分に[[実体参照]]は書けない。)
60     訂正して、
61     [PRE[
62     <!SGML [VAR[その実装の SGML 宣言]]>
63     <!DOCTYPE [[pre-html]] SYSTEM "[VAR[その実装の DTD]]" [
64     <!ELEMENT pre-html o o (html)>
65     <!ENTITY real-document SYSTEM "[VAR[当該文書の URI]]">
66     ]>
67     &real-document;
68     ]PRE]
69    
70     [86] もっとも、 Web SGML ができたからもうこんな hack
71     を考える必要はないですし、文書型宣言もない HTML
72     文書実現値は往々にして SGML 的に不正なことが他にあったりするんですが。
73 make 1.1
74     [[#comment]]
75    
76     *メモ

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24