<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> 90年代後期から00年代前期には、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> の標準化を担当していました。
<dfn><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C DOM</anchor></dfn> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> が開発し出版していた <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> 仕様群の総称です。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> 現在では <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> 本体や <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML DOM</anchor> の開発は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WHATWG</anchor> に移っており、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSSOM</anchor>、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SVG DOM</anchor>、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">UI Events</anchor> といった特定の対象を持った <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">API</anchor>
群を <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> の各 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WG</anchor> が担当する形になっています。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM WG</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM3</anchor> の出版後に解散しています。</comment-p><figure class="important"><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> 本項は過去の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> 仕様に関するものです。現状は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Standard</anchor>
を参照してください。</p></figure><section><h1>完成した仕様</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> 次の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> 仕様が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C勧告</anchor>となっています。</p><figure class="short list"><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 1</anchor> ※</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 2 Core</anchor> ※</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 2 Views</anchor> ※※</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 2 Style</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 2 Traversal</anchor> ※</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 2 Range</anchor> ※</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 2 HTML</anchor> ※※</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 3 Core</anchor> ※</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 3 Load and Save</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 3 Validation</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SVG DOM</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MathML DOM</anchor></li></ul></figure><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> 現在では、「※」は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Standard</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WHATWG</anchor>)、
「※※」は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML Standard</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WHATWG</anchor>)、
Style は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSSOM</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CSS WG</anchor>) で開発が継続されています。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SVG DOM</anchor> も <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SVG WG</anchor> が開発を継続しています。
Load and Save、Validation、MathML DOM は広く支持されるに至らず、事実上廃止状態です。</comment-p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> は古くなった <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C勧告</anchor>のほとんどを廃止も改訂やバグ修正もせずに放置していて、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> 関連仕様も例外ではありません。これらのいずれも形式的には現行の
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C勧告</anchor>のようです。</comment-p></section><section><h1>未完成の仕様</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> 次の仕様は未完成です。</p><figure class="short list"><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 3 Events</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 3 XPath</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 3 Views and Formattings</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 3 Abstract Schemas</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 4 Core</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Level 4 Events</anchor></li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SMIL DOM</anchor></li></ul></figure><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> Events のうち、基礎となる部分は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM Standard</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WHATWG</anchor>)
で開発が継続されています。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">UI Events</anchor> 部分は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WebApps WG</anchor>
で開発が継続されています。 XPath は広く実装されており、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WHATWG Wiki</anchor> 
で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> の仕様書との差分がメンテナンスされていますが、
担当者不在で開発凍結状態です。それ以外は広く支持されずに開発が停止されています。</comment-p></section><section><h1>コピペ仕様</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> 次の仕様は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WHATWG</anchor> が出版しているものを<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">コピペ</anchor>して <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> が勝手に出版しています。</p><figure class="short list"><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM4</anchor></li></ul></figure></section><section><h1>概略</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> での <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> の標準化は90年代後半に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IE4</anchor> と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Netscape4</anchor>
が完全に非互換な <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor> をそれぞれ実装した後に始まりました。
政治的決着故か、両者どちらと似ているところもありつつ、完全にはどちらとも一致しないものが
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C勧告</anchor>として標準化されることとなりました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> 結果 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IE</anchor> は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM1</anchor> を (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IE4 DOM</anchor> に加えて) 実装しましたが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Netscape</anchor> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">第1次ブラウザー戦争</anchor>の敗北により <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM1</anchor> を実装することなく事実上開発が停止しました。
数年の時を経て <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Gecko</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Mozilla Suite</anchor> および <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Netscape6</anchor>) が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM1</anchor>、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM2</anchor> および <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM3</anchor> の一部を実装しましたが、 
逆に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IE</anchor> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">第1次ブラウザー戦争</anchor>の勝利により <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM1</anchor> のままで開発が停止していました。
こうした状況から、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webアプリケーション</anchor>開発者は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Netscape4</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM</anchor>、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IE4 DOM</anchor>、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C DOM</anchor> の混在と非互換性に長年悩まされることとなりました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C DOM</anchor> は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">プログラミング言語</anchor>非依存であることを目標の一つにしており、
規定の一部として <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Java束縛</anchor>と <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ECMAScript束縛</anchor>を定義していました。
従ってそれまでの <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM0</anchor> と比べて <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">JavaScript</anchor> 色は薄まっていました。
ブラウザー戦争終結により <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webブラウザー</anchor>開発者の発言力が低下し、
サーバー側の開発者が積極的に標準化に関わるようになった時代的背景もあり、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM2</anchor>、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM3</anchor> と進むにつれ <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">API</anchor> 全体の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Java</anchor> 色が増していきました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C</anchor> は新規 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">API</anchor> の開発を進めていきましたが、既存の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM0</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">API</anchor>
の標準化には興味を示しませんでした。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webブラウザー</anchor>業界の停滞により、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webブラウザー</anchor>で一部実装が進められていて需要も比較的高かったはずの
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM3 LS</anchor> <code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DocumentLS</anchor></code>/<code class="DOMi" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ElementLS</anchor></code>、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM3 Events</anchor>、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM3 XPath</anchor> といった仕様群は完成の目処が立たず、
開発が中止されるに至りました。一方で <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM3 Core</anchor> の追加 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">API</anchor> や
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DOM3 Validation</anchor> のような結局 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Webブラウザー</anchor>に実装されることが無かった
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Java</anchor> 色の強い) 新仕様も、サーバー側での実装があるということで 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">W3C勧告</anchor>となっています。</p></section><section><h1>メモ</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <cite xml:lang="en">Document Object Model (DOM) Specifications</cite> (<time>2012-05-02 23:14:54 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.w3.org/DOM/DOMTR">http://www.w3.org/DOM/DOMTR</anchor-external></li></ul></refs><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> <cite xml:lang="en">gsnedders/dom-test-suite: git clone of the old, seemingly abandoned DOM test suite. CVS HEAD tagged as cvs-head.</cite>
(<time>2018-08-14 23:53:40 +09:00</time>)
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://github.com/gsnedders/dom-test-suite">https://github.com/gsnedders/dom-test-suite</anchor-external></p></section></body></html>