[1] DOM 3 未満では、 DOM 仕様書は界面だけを規定しており、
DOM 応用は処理を開始する時に実装依存の code を書かなければなりませんでした。
これでは移植性に欠けるなどの問題がありました。そこで、
DOM 3 では DOMImplementationRegistry
物体が導入されました。
[2] 仕様書:
[3] DOMImplementationRegistry
物体には、
応用が機能に基づいて実装を探すことのできる関数が用意されることになっています。
ただし、この辺りの作法はどうしても言語依存にならざるを得ませんから、
DOM 仕様書本体では詳しく規定されていません。
(但し Java 束縛と ECMAScript 束縛では具体的に規定されています。)
[4] 成員:
種類 | 名前 | 説明 |
メソッド | getDOMImplementation | 機能群文字列を受付る。適当な DOMImplementation が見つかるまで既知の DOMImplementationSource に依頼して探しまくってそれを返す。 |
メソッド | getDOMImplementationList | 機能群文字列を受付る。DOMImplementationSource に依頼して適当な DOMImplementation をすべて探す。 |
2つのメソッドは DOMImplementationSource
で規定されているものと同じです。
[5] DOMImplementationRegistry
には任意個の
DOMImplementationSource
物体を登録できます。
1つのDOMImplementationSource
は任意の個数の
DOMImplementation
唯一物体を返しても構いませんし、
新しい DOMImplementation
物体を構築しても構いません。
どちらかは要求された機能が DOMImplementation
の特別化状態を必要としているかによります。