-
Notifications
You must be signed in to change notification settings - Fork 4
/
994.txt
195 lines (134 loc) · 8.78 KB
/
994.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
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
[17] [DFN[[RUBYB[非推奨]@en[deprecated]]]]とは、好ましくないことを表します。
それが具体的にどのような意味を持つかは、文脈によって異なります。
* 非推奨であることの意味
[18] [[非推奨]]であることがどのような意味であるかは、しばしば曖昧にされています。
[[非推奨]]というからには、[[仕様書]]の[[編集者]]はその対象を好ましくないと考えているのですが、
その考えが常に正しく伝わるとは限りません。
[EG[
[19] [[HTML4]] は[[表現と構造の分離]]の大原則に反する機能の多くを[[非推奨]]とし、
[[Strict DTD]] からは排除しました。しかし [[Transitional DTD]]
には含めていました。[[非推奨]]であるが使えないわけではない、
との位置付けは、使ってほしくないとの意志を希薄にしてしまいました。
厳しすぎる [[Strict DTD]] よりも緩い [[Transitional DTD]] を選んだ方が良いと捉える人や、
[[非推奨]]の機能を [[Strict DTD]] で使うのは好ましくないが [[Transitional DTD]]
を正しく選びさえすれば使っても問題ないと捉える人もいました。
[20] [[HTML5]] (現在の [CITE[HTML Standard]]) は[[適合性]]との関係性が不透明な[[非推奨]]の概念は好ましくないとして、
そのような中間段階を設けていません。
]EG]
* 関連
[16] [SHOULD[SHOULD]]、[[discouraged]] も参照。
* 歴史
** HTML4
[1] 新しい構造体によって古くなってしまった[[要素]]や[[属性]]を、
[DFN[非推奨]]の (deprecated) 要素・属性といいます。
非推奨の要素は将来の版の [[HTML]] で廃止されるかもしれません。
<IW:HTML4:conform.html#deprecated> 参照。
非推奨の要素・属性は、依然としてその版の HTML
の一部ではありますが、使用するべきではありません。
場合によっては使用することもできません。
例えば HTML 4 で [[Strict]] DTD を使うときには非推奨の要素・属性は使えません。
しかも、 HTML 4 仕様書 <IW:HTML4:conform.html#deprecated>
によれば、[[利用者エージェント]]は後方互換性のために非推奨な要素に対応し続けるべきです。
これは逆に言うと、非推奨な要素には (対応したほうがいいけど)
別に対応しなくても良いということです。
[2]
[[フレーム]]系の[[要素型]] [CODE(HTMLe)@en[[[frameset]]]],
[CODE(HTMLe)@en[[[frame]]]], [CODE(HTMLe)@en[[[iframe]]]]
は、[[厳密DTD]]に含まれないのでしばしば[[非推奨]]と言われますが、
[Q@en[Deprecated elements [INS[...]] are clearly marked as deprecated]<IW:HTML4:"conform.html#deprecated">]
と [[HTML 4]] は述べているので、[[非推奨]]と明記されていないこれらの[[要素型]]は[[非推奨]]ではないということになります。
([[名無しさん]])
[3]
[CODE(HTMLe)@en[[[applet]]]] は[[非推奨]]ですが、
[Q[すべての[[属性]]と共に]]と明記されています。
(特に除外もされていないので、[[共通属性]]も含めて)
[CODE(HTMLe)@en[[[applet]]]] [[要素]]で定義された[[属性]]はすべて[[非推奨]]です。
このような[[要素型]]は [[HTML 4]] では
[CODE(HTMLe)@en[[[applet]]]] だけです。
;; <IW:HTML4:"struct/objects.html#edef-APPLET">
([[名無しさん]])
[4]
[[HTML 4]] で定義されている [[DTD]] の説明
;; <IW:HTML4:"struct/global.html#version-info">
によれば、[[厳密DTD]]は[[非推奨]]でなく、[[フレーム集合]][[文書]]に現れない[[要素型]]と[[属性]]をすべて含み、
[[移行用DTD]]は[[厳密DTD]]に加えて[[非推奨]]の[[要素型]]と[[属性]]を含むとしています。
この説明は >>2 と矛盾しています。
;; [[厳密DTD]]の説明の後半、[[フレーム集合]][[文書]]に''しか''現れない[[要素型]]を除く、とするのが正しい?
([[名無しさん]])
[5]
[CODE(HTMLe)@en[[[blockquote]]]] を[[字下げ]]に使うのは[[非推奨]]です。ただしこの説明は[[参考]]です。
;; <IW:HTML4:"struct/text.html#idx-quoted_text-1">
([[名無しさん]])
[6]
[CSECTION@en[13.7 Visual presentation of images, objects, and applets]]
の直下に、 [CODE(HTMLe)@en[[[img]]]] と
[CODE(HTMLe)@en[[[object]]]] の
[Q@en[concern visual alignment and presentation]<IW:HTML4:"struct/objects.html#visual">]
な[[属性]]はすべて[[非推奨]]、とあります。
;; <IW:HTML4:"struct/objects.html#visual">
この節に属する
[CSECTION@en[13.7.2 White space around images and objects]]
内で定義された [CODE(HTMLa)@en[[[hspace]]]]
など、ほとんどの[[属性]]は[[非推奨]]と明記されています。
しかし、 [CSECTION@en[13.7.1 Width and height]]
で定義されている [CODE(HTMLa)@en[[[width]]]]
と [CODE(HTMLa)@en[[[height]]]] だけは、[[非推奨]]と明記されていません。
>>2 に従えば、明記されていない以上この2つは[[非推奨]]ではありません。
しかし、13.7節の冒頭で[[強調]] ([CODE(HTMLe)@en[[[em]]]])
された説明と矛盾します。
;; 2つの[[属性]]は [Q@en[concern visual alignment and presentation]<IW:HTML4:"struct/objects.html#visual">]
でない可能性もありますが、そうなると13.7節の[[見出し]]と矛盾します。
([[名無しさん]])
[7]
[CODE(HTMLe)@en[[[table]]]] [[要素]]の [CODE(HTMLa)@en[[[width]]]] [[属性]]は、[[非推奨]]ではないが、[[スタイル・シート]]を使うのを勧める、とされています。ただし、[[参考]]です。
;; <IW:HTML4:"struct/tables.html#column-width">
[CSECTION@en[15.2 Fonts]] の節の直下の[[強調]]
([CODE(HTMLe)@en[[[em]]]]) された文には、
以下 ([Q@en[following]]) の[[要素型]]はすべてが[[非推奨]]ではないが、
使わないことを勧める、とあります。[Q[以下]]の範囲が明確ではありませんが、
普通に考えれば15.2節全体でしょう。15.2節で定義されている[[非推奨]]でない[[要素型]]は、[CODE(HTMLe)@en[[[tt]]]],
[CODE(HTMLe)@en[[[b]]]], [CODE(HTMLe)@en[[[i]]]],
[CODE(HTMLe)@en[[[big]]]], [CODE(HTMLe)@en[[[small]]]] です。
;; <IW:HTML4:"present/graphics.html#graphics-fonts">
([[名無しさん]])
[8]
>>2
[[索引]]でもこれら3つの[[要素型]]には[[非推奨]]の印がついていません。
;; <IW:HTML4:"index/elements.html">
[9] [CITE@ja[非推奨 / 廃止要素や属性の使用を防ぐ CSS | ヨモツネット]] ([TIME[2009-01-17 12:58:00 +09:00]] 版) <http://www.yomotsu.net/lab/css/misc_debug>
** XHTML2
[FIG(quote)[
[FIGCAPTION[
[11] [CITE@en[XHTML™ 2.0 - Terms and Definitions]]
([TIME[2010-12-17 00:44:37 +09:00]] 版)
<http://www.w3.org/TR/2010/NOTE-xhtml2-20101216/terms.html#deprecated>
]FIGCAPTION]
> deprecated
> a feature marked as deprecated is in the process of being removed from this recommendation. Portable documents should not use features marked as deprecated.
]FIG]
** CSS 2.1
[12] [[CSS 2.1]] における[DFN[[RUBYB[[[非推奨]]]@en[deprecated]]]]は、推奨されていないことを表します。
[REFS[
- [13] [CITE@en[Conformance: requirements and recommendations]] ([TIME[2011-06-07 22:09:52 +09:00]] 版) <http://www.w3.org/TR/CSS2/conform.html#defs>
]REFS]
[14] [[非推奨]]であるかどうかと[[適合性]]は関係ありません [SRC[>>13]]。
[15] [[CSS 2.1]] では次の2つが「[[非推奨]]」、または「[[CSS3]] で非推奨になる」とされています。
[FIG(short list)[
- [CODE(CSS)@en['[[aural]]']]
- [[システム色]]
]FIG]
* メモ
[10] [CITE@EN[W3C XML Schema Definition Language (XSD) 1.1 Part 1: Structures]]
( ([TIME[2012-04-05 06:34:07 +09:00]] 版))
<http://www.w3.org/TR/2012/REC-xmlschema11-1-20120405/#key-deprecated>
[FIG(quote)[
[FIGCAPTION[
[21] [CITE@en[Should console.debug() be deprecated? · Issue #67 · whatwg/console]]
([TIME[2016-10-23 17:29:07 +09:00]])
<https://github.com/whatwg/console/issues/67#issuecomment-255165594>
]FIGCAPTION]
> Deprecation for web features isn't really an interesting concept. Sometimes we deprecate features that are hamful to the platform, such as appcache or showModalDialog, as a prelude to removing them a few years down the line. But we don't deprecate things just because they're redundant; if we did that half of all web APIs would be deprecated. Instead we codify them into the standard to make it clear what is usable by developers and should be implemented by browsers.
]FIG]
[22] [CITE@EN[XSL Transformations (XSLT) Version 3.0]]
([TIME[2017-06-06 21:59:56 +09:00]])
<https://www.w3.org/TR/2017/REC-xslt-30-20170608/#dt-deprecated>