/
777.txt
133 lines (96 loc) · 7.03 KB
/
777.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
[2] [[IETF]] のいくつかの仕様では、[[名前空間]]を [CODE[[[.]]]] 区切りで分割し、
それぞれを[DFN[[RUBYB[[[木]]]@en[tree]]]]と呼んでいます。
[[木]]は、 [[IANA登録簿]]への登録手続きの種類により分類されています。
* 仕様書
[REFS[
- [1] [CITE@en[RFC 6838 - Media Type Specifications and Registration Procedures]] ([TIME[2015-02-11 00:35:08 +09:00]] 版) <http://tools.ietf.org/html/rfc6838#section-3>
- [17] [CITE@en[RFC 6838 - Media Type Specifications and Registration Procedures]] ([TIME[2015-02-11 00:35:08 +09:00]] 版) <http://tools.ietf.org/html/rfc6838#section-4.2>
- [24] [CITE@en[RFC 2652 - MIME Object Definitions for the Common Indexing Protocol (CIP)]] ([TIME[2015-05-03 22:21:07 +09:00]] 版) <https://tools.ietf.org/html/rfc2652#section-2.1.1>
]REFS]
* MIME 型の木
[3] [[MIME型]]の[[部分型]]には次の[[木]]があります。
[FIG(short list)[
- [[標準木]]
- [CODE[[[vnd.]]]]
- [CODE[[[prs.]]]]
- [CODE[[[x.]]]]
- [CODE[[[index.]]]] [SRC[>>24]]
]FIG]
[5] [CODE[[[.]]]] を含まない[[部分型]]は[DFN[[RUBYB[[[標準木]]]@en[standards tree]]]]
[SRC[>>1]] に属するとされ、 [[IETF]] の手続きに従い発行された [[RFC]]
により、または [[IESG]] が承認した他の[[標準化団体]]の仕様書により定義される
[[MIME型]]が使えることになっています。
;; [20] [[RFC 2048]] よりも前の時代に登録された [[MIME型]]や [[IANA登録簿]]に登録されていない
[[MIME型]]は、 [[IETF]] の手続きに従っていなくても [CODE[[[.]]]]
を含まないことが大多数です。
[6] [DFN[[CODE[[[vnd.]]]]]] から始まる[[部分型]]が属するのは[DFN[[RUBYB[[[事業者木]]]@en[vendor tree]]]]
[SRC[>>1]] で、[[企業]]の製品や [[IETF]] が承認していない団体の仕様により用いられる
[[MIME型]]が使うことになっています。 [CODE(MIME)@en[[[image/vnd.microsoft.icon]]]]
の [CODE[microsoft]] のような事業者名も ([[IANA]] の管理により)
[[木]]内の階層として使えることになっていますが、 [CODE(MIME)@en[[[text/vnd.abc]]]]
のように事業者名のない形を登録することも認められています。
;; [22] [[Web]] における [[vendor prefix]] とは違って、 [CODE[[[vnd.]]]]
[[木]]でも [[IANA]] への登録が必要です。
[7] [DFN[[CODE[[[prs.]]]]]] から始まる[[部分型]]が属するのは[DFN[[RUBYB[[[個人木]]]@en[personal tree]]]] [SRC[>>1]] で、
実験的なものや非営利製品で用いる [[MIME型]]が使うことになっています。
[8] [CODE[[[vnd.]]]] や [CODE[[[prs.]]]] は、 [[IANA]] への申請のみで
([[IETF]] での手続きなしで) 登録できることになっています。
また[[引数]]に関する要件も[[標準木]]より緩和されています。
;; [[MIME型]]参照。
[9] [CODE[[[x.]]]] から始まる[[部分型]]が属するのは私的な利用 [SRC[>>1]]
のための [[MIME型]]の[[木]]です。 [[IANA]] に登録することはできず、
登録なしで利用できることになっています。
[10] [[IETF]] は、 [CODE[[[vnd.]]]]
や [CODE[[[prs.]]]] に簡単に登録できるのだから [CODE[[[x.]]]]
はほとんど使うことは無いはずだ [SRC[>>1]] としています。確かに [CODE[[[x.]]]]
は滅多にみかけませんが、 [CODE[[[x-]]]] は極めてよく見かけます。
[11] [CODE[[[x-]]]] は当初から私用のために割り当てられており、 [[IANA]]
に登録できないことになっていましたが、
有害であるとして廃止する方針となり ([[RFC 6648]])、 [[RFC 6838]]
以後通常の [[MIME型]]として登録できることになっています。
;; [12] [[RFC 2048]] 時点で既に [CODE[[[x-]]]] があったのにわざわざ [CODE[[[x.]]]]
を追加したのは何のためなのかよくわかりませんが。。。
;; [13] [[RFC 6638]] で [CODE[[[x-]]]] の特別扱いを廃してなぜ [CODE[[[x.]]]]
は残したのかは謎です。 [[RFC 6648]] の意図に沿うなら両方廃止するべきだと思いますが。。。
[14] 実際には [CODE[[[vnd.]]]] の登録は多くなされていますし、
[CODE[[[prs.]]]] もたまに登録されていますが、それ以上に多くの [[MIME型]]が
([CODE[[[x-]]]] つき、あるいは [CODE[[[x-]]]] なしで) 未登録で用いられています。
;; [[MIME型]]も参照。
[15] 新しい[[木]]を将来的に規定することも一応は想定されています [SRC[>>1]]
が、前例はなく、今後も追加されるとは考え難い状況です。
[16] なお [CODE[vnd.]] のような[[木]]を表す部分は [DFN[[[facet]]]] [SRC[>>17]]
と呼ばれており、[[標準木]]は「facet-less」と表現されています。
[18] [[MIME型]]における最初の [CODE[[[.]]]] より前の部分は [[facet]]
を表すことになっています [SRC[>>17]]。[[標準木]]の[[部分型]]は [CODE[.]]
を含めることはできません。2つ目以降の [CODE[.]] の意味は >>6
以外は明確に規定されておらず、[[木]]以外の用法も禁止はされていません。
[[部分型]]でなく[[型]]については [CODE[.]] の解釈は不明です。
現実には[[部分型]]と同じように [CODE[[[vnd.]]]] で始まるような (登録されていない)
[[型]]も利用されています。
;; [19] こうした制約は [[IANA登録簿]]に登録する [[MIME型]]に対するもので、
未登録の [[MIME型]]の扱いは明確ではありません。
-*-*-
[29]
[CODE[application/vnd.geo+json]] と [CODE[application/geo+json]]
のように、後から他の[[木]]に登録される事例もあります。
;; [30] こういうことがあると結局新旧[[MIME型]]が混在することになるので、
[[相互運用性]]に悪影響しか及ぼされないんですよねえ。。。
* URL scheme の木
[23] [[URL scheme]] 参照。
* 媒体特徴タグの木
[25]
[[IETF木]]の他に[[大域木]] [CODE[g.]], [[URI木]] [CODE[u.]]
がありました。
[SEE[ [[媒体特徴タグ]] ]]
* FTP facts の木
[27]
[[RFC 3659]] の [[FTP]] facts は、[[木]]とは呼んでいませんが、
類似の構造を持っていました。
[CODE[x.]] は[[私用]]、[[実験用]]とされていました。
他に [CODE[OS.]] や [[OS]] の名前を使うことになっていました。
[28] [CITE@en[rfc3659]], [TIME[2021-07-16T03:28:54.000Z]] <https://datatracker.ietf.org/doc/html/rfc3659#section-7.5>
* 歴史
[4] [[MIME型]]における[[木]]は [[RFC 2048]] で導入され、以後の改訂でも引き継がれています。
;; [[MIME型]]の歴史の項を参照。
[21] [[draft-king-vnd-urlscheme]] は [[URL scheme]] に[[木]]を導入することを提案していました。
[26] [CITE@en[RFC 2244 - ACAP -- Application Configuration Access Protocol]], [TIME[2021-04-11T10:25:16.000Z]], [TIME[2021-04-21T09:55:01.265Z]] <https://tools.ietf.org/html/rfc2244#section-7.4>