[22] [[HTML]] の [DFN[[CODE(HTMLa)@en[archive]]]] [[属性]]は、
[[文書]]に埋め込む[[実行可能コード]]等が含まれた[[書庫]]を指定するものでした。

[23] この機能の一部分は [[HTML4]] によって標準化されましたが、
詳細は文書化されず、当時の [[Webブラウザー]]と[[プラグイン]]の実装に依存した部分が多い
[[Web]] の[[闇]]でした。

[24] [[書庫]] ([[JAR]] や [[CAB]]) に関係する[[資源]]をまとめて配布するというのは、
読み込み時間の削減や関連ファイルの配布の手間の削減だけでなく、
[[電子署名]]の付加も目的としていました。

* 代替

[25] [[第一次ブラウザー戦争]]の中で安定した実装が得られないまま、
その後の [[Javaアプレット]]と [[ActiveXコントロール]]の衰退と共に使われなくなっていきました。
完全な[[標準化]]は成らないまま、[[HTML5]] 以後完全に[[廃止]]されています。

[26] [[JavaScript]] に対する[[デジタル署名]]は現在も代替がありませんが、
[[TLS証明書]]と[[同一起源ポリシー]]で成立する現在の[[Webセキュリティー]]モデルの中で個別の[[スクリプト]]単位の[[署名][デジタル署名]]は不要なのでしょう。
(ただし、より簡易的な [CODE(HTMLa)@en[integrity]] は導入されています。)

* object 要素 archive 属性 (HTML, XHTML 1)

[1] [[HTML]] の [CODE(HTMLe)[[[object]]]] 要素の
[DFN[[CODE(HTMLa)[archive]] 属性]]は、
[RUBY[[[物体]]] [オブジェクト]]に関係する資源を含んだ[RUBYB[書庫] [archive]]の
URI を (任意個) 指定します。

[Q[物体に関係する資源]]には、 [CODE(HTMLa)[[[classid]]]] の資源や
[CODE(HTMLa)[[[data]]]] の資源を含みます。
書庫を先読みしておくことで物体の読込み時間を削減できます。

[2] 仕様書:
- [[HTML 4]] <IW:HTML4:"struct/objects.html#adef-archive-OBJECT">

[13]
HTML 4 DTD の[[注釈]] (参考) には
[Q[space-separated list of URIs]]
と書かれています。
([[名無しさん]] [sage])

[15]

- [CITE[Strict DTD]]
<IW:HTL4:"appendix/changes.html#h-A.1.1.14">
([[名無しさん]] [sage])

[[#comment]]


** 属性値

[3] この属性の値は [CODE[uri-list]] ([CODE(ABNF)[ [ [CODE(SGML)[%[[URI]]]] *([[間隔]] [CODE(SGML)[%URI]]) ] ]])
です。 [[SGML]] 的には [CODE(SGML)[[[CDATA]]]] です。

[4] この属性は省略可能です。

[17]
[CITE[Tip's Browser001]] <http://www.ex-group.jp/newpage/dev/tips_001.html>

[[Java]]で[[読点]]区切りとして扱われるとしています。

@@ 未確認

([[名無しさん]] [sage])

[[#comment]]


** 他との関係

[5] [CODE(HTMLa)[archive]] は [CODE(HTMLa)[[[classid]]]]
や [CODE(HTMLa)[[[data]]]] の資源を探すために使われます。

[CODE(HTMLa)[archive]] が[[相対URI参照]]であるときには
[CODE(HTMLa)[[[codebase]]]] 属性を[[基底URI]]
として参照するべきです。 [HTML 4]

([Q[べき]]なのですか・・・。) [[HTML//基底URI]] も参照。

[[#comment]]


** メモ

[16]
この属性は DTD で [CODE(SGML)[%[[URI]]]]
と定義されていましたが [SRC[HTML 4.0 DTD]],
間隔区切りで複数
URI 参照を含められるので HTML 4.01 で
[CODE(SGML)[CDATA]] に修正されました
[SRC[HTML 4.01 A.1.1.14]]。
([[名無しさん]] [sage])

[[#comment]]


* applet 要素 archive 属性 (HTML, XHTML 1)

[6] [[HTML]] の [CODE(HTMLe)[[[applet]]]] 要素の
[DFN[[CODE(HTMLa)[archive]] 属性]]は、
級や関連資源を含んだ書庫を指定します。

級は与えられた [CODE(HTMLa)[[[codebase]]]] の
[CODE(Java)[AppletClassLoader]] の実現値を使って読み込みます。

[7] 仕様書:
[[HTML 4]] <IW:HTML4:"struct/objects.html#adef-archive-APPLET">

[14]
HTML 4 DTD の[[注釈]] (参考) には
[Q[comma-separated archive list]]
と書かれています。
([[名無しさん]] [sage])

[[#comment]]


** 代替

[8] この属性は HTML 4 で要素型ごと'''非推奨'''とされています。
代わりに [CODE(HTMLe)[[[object]]]] 要素型および同名の属性が使えます。
ただし、属性値が読点区切りではなく間隔区切りとなりますので注意が必要です。

[[#comment]]


** 属性値

[9] この属性の値は、読点 ([SAMP(char)[,]]) で分離した
[[URI]] ([[URI参照]]) です。 [[SGML]] 的には [CODE(SGML)[[[CDATA]]]]
です。

HTML 4 仕様書には明記されていませんが、
おそらくは、読点のまわりに[[空白]]があっても無視されます。

読点分離なので、読点を含む URI 参照を直接指定することはできません。
[[URI参照]]すれば多くの場合は問題ないでしょうが、
URI 的に読点は [CODE(ABNF)[[[reserved]]]] なので、
一般に [CODE(URI)[,]] と [CODE(URI)[%2C]] は同一ではありません。

[10] 相対 URI 参照は [CODE(HTMLa)[[[codebase]]]] を使って解決されます。

[11] この属性は省略可能です。

[[#comment]]


** 他との関係

[12] 相対 URI 参照の解決に [CODE(HTMLa)[[[codebase]]]]
属性が使われます。

[[#comment]]


** メモ

[18]
[[Netscape Navigator 3]]で実装されました。

;; [CITE[Welcome to Netscape Navigator 3.03]] <http://wp.netscape.com/eng/mozilla/3.0/relnotes/windows-3.03.html#Java>

[29] 
[CITE[Welcome to Netscape Navigator 3.0]], [TIME[2024-08-16T11:56:16.000Z]], [TIME[2002-06-30T20:19:45.439Z]] <https://web.archive.org/web/20020630200918/http://wp.netscape.com/eng/mozilla/3.0/relnotes/windows-3.0.html#Java>


* [CODE(HTMLe)@en[script]] 要素 [CODE[archive]] 属性

[28] 
<http://web.archive.org/web/20030415223352/http://devedge.netscape.com/library/manuals/2000/javascript/1.3/guide/sec.html>



* メモ

[19] [CITE[Welcome to Netscape Navigator 3.04]]
( ([TIME[2014-04-07 08:45:22 +09:00]] 版))
<http://web.archive.org/web/20030208045953/http://wp.netscape.com/eng/mozilla/3.0/relnotes/windows-3.04.html#Features>

[20] [CITE@en[Script-based security]]
([TIME[2015-08-29 18:19:54 +09:00]] 版)
<https://msdn.microsoft.com/en-us/library/ms970704.aspx>

[21] [CITE[Netscape Code/Object Signing]] ([TIME[1998-03-21 01:44:22 +09:00]] 版)
<http://www.opengroup.org/security/meetings/jun97/netscape.pdf>

[27] [CITE@en[Remove <applet>]]
([[zcorpan]]著, [TIME[2017-08-21 22:19:30 +09:00]])
<https://github.com/whatwg/html/commit/b9b9d60f9451c05f8e8d542e4094f987ae1a5fb8>