[7] DOM0 (DOM 水準 0) は、 主に Webブラウザーによって実装されている、Web 利用者エージェントのプラットフォーム API の総称です。
[8] 長らく DOM0 は標準不在の状況が続いていましたが、最近では Web Applications 1.0 (HTML5) によって規定されています。 (もっとも、 WA1 では「DOM0」という語は使っていません。)
[28] 「DOM0」の範囲は曖昧ですが、次の機能 (の一部) を指して DOM0 と言うことがあります。
[29] Netscape 2/3 や IE3 が実装していた原初の DOM (当時でいう JavaScript のうち、クライアント側でのみ実装されていた API) という意味では以上でしょうが、 W3C DOM 以前という意味で次のものも DOM0 に含められることがあります。
[9] DOM1 ではそれまで Webブラウザーで実装されていた JavaScript API のすべてが標準化されたわけではありませんでした (むしろ旧来の JS API と共通する部分の方が少なかったです)。 そのため、DOM1 以前の DOM ということでそれらは「DOM水準0」と呼ばれるようになりました。
[10] DOM0 の範囲はそもそも明確ではありません。 >>1 の DOM1 の説明に従うなら NN3 と IE3 が実装していた機能ですが、その和集合なのか積集合なのか、 DOM0 とそれ以外の JavaScript API の境界はどこなのか、 と細かいことを言えばきりがありません。現在では DOM1 以降に含まれる機能は「DOM0」 に含まないニュアンスで語られることが多いように感じますが、 >>1 では「DOM0 との互換性」が語られており、元々は DOM1 の機能を除外する意図はなかったようです。 また、時代が下ると NN4 や IE4 以降で追加された非標準の機能を「DOM0」 に含めることも出てきました。
[11] W3C は DOM1 以後も「DOM0」の標準化に興味を示しませんでした。 しかし Webブラウザーは後方互換性のために引き続き DOM0 API を実装し続ける必要がありました。そうはいっても DOM0 はほとんど undocumented に近く、他の Webブラウザーの動作をリバースエンジニアリングするしかない状況でした。 ですから、大まかな動作こそ共通してはいても、すべてが実装されていなかったり、 細かな挙動が異なっていたりしていました。
[12] 2004年に設立された WHATWG は、Webアプリケーションのための新規 API を整備すると共に、既存の Webブラウザーの undocumented な API を標準化し、Web の相互運用性を向上させることを目指していきました。 DOM0 の機能は当初は Web Controls 1.0 で、後に Web Applications 1.0 で文書化されていき、現在ではほとんどの API が明確に規定されるに至っています。
[5] The Object Models <http://book.itzero.com/read/others/McGraw.Hill.Osborne.JavaScript.2.0.The.Complete.Reference.Second.Edition.eBook-LiB_html/8166final/LiB0066.html> (名無しさん)
[6] mrclay.org » Archive » Kill these DOM0 shortcuts ( 版) <http://mrclay.org/index.php/2007/06/25/kill-these-dom0-shortcuts/> (名無しさん 2007-06-26 13:25:59 +00:00)
[31] Bring outdated parts of the FAQ up to date (sideshowbarker著, ) <https://github.com/whatwg/html/commit/5d512fe6f54a332d13ff2d0fee59f12a8d1701b3>
[34] Re: compatibility with the DOM Level 0 (Michael Champion著, ) <https://lists.w3.org/Archives/Public/www-dom/1999OctDec/0188.html>
watch
、 code signing (<script archive>
)、ActiveXObject
くらいでしょうか。