*Document 節・Document 界面 (DOM) [2] [CODE(DOM)[Document]] 界面は、 [[HTML]] 又は [[XML]] の文書自体を表します。 [CODE(DOM)[Document]] は、 文書中の全ての[[節]]の大元の[[根]]です。新しい節を作るには、 [CODE(DOMi)[Document]] の method を使うことが出来ます。 [1] [RUBYB[文書節] [Document node]]の子になれる[[節]]は: :[[Element]] :最大1個 [DOM1] :[[ProcessingInstruction]]:[DOM1] :[[Comment]] :[DOM1] :[[DocumentType]] :[DOM1] [3] [[DOM0]] の [[JavaScript]] 束縛 (HTML の [[script]] 要素の中などで使う場合。) では、物体 [CODE(JS)[window.document]] が当該窓で表示中の文書を表します。 この [CODE(JS)[document]] 物体は DOM の [CODE(DOMi)[Document]] 界面の実現値です。 DOM の[[節]]の [CODE(DOMattr)[[[ownerDocument]]]] は、その節が所属する文書 ([CODE(DOM)[Document]]) を返します。 - [5] [CODE(DOM)[Document]] 物体を作る方法は、 DOM 1 の範囲ではありません。 DOM 2 [WEAK[(で、 HTML のみの実装でない)]] なら、 [CODE[[VAR(DOMi)[[[DOMImplementation]]]].[CODE(DOMmethod)[[[createDocument]]]]]] で作成できます。 - [6] >>5 その他にも、実装によってそれぞれ [CODE(DOM)[Document]] 物体を作ったり取得したりする方法があるかもしれません。例えば、 [[DOM0]] では、 [CODE(JS)[[CODE(DOM)[window]].[CODE(DOMattr)[document]]]] などが使えます。 - [7] [[WWWブラウザ]]のような実装では、 [CODE(DOM)[Document]] 物体で [CODE(DOMi)[Document]] 界面のみならず [CODE(DOMi)[[[DocumentView]]]] 界面も実装されていることが期待されます。 [[#comment]] **構成員 [4] [CODE(DOMi)[Document]] 界面は、 [CODE(DOMi)[[[Node]]]] 界面を継承します。 ,[CODE(DOMa)@en[[[alinkColor]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[anchors]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[applets]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.1]])" ,[CODE(DOMa)@en[[[bgColor]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMm)@en[[[captureEvents]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[classes]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMm)@en[[[clear]]]],"[CODE(DOMi)@en[[[Document]]]] ([[WinIE 3]])" ,[CODE(DOMm)@en[[[close]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMm)@en[[[contextual]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[cookie]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,読取専用属性,[[doctype]] ,文書型 ,[DOM1] ,[CODE(DOMa)@en[[[domain]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.1]])" ,[CODE(DOMa)@en[[[embeds]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.1]])" ,[CODE(DOMa)@en[[[fgColor]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[forms]]]],"[CODE(DOMa)@en[[[document]]]] ([[WinIE 3]], [[JavaScript 1.1]])" ,[CODE(DOMa)@en[[[getSelection]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMm)@en[[[handleEvent]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[height]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[ids]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[images]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,読取専用属性,[[implementation]],DOM 実装 ,[DOM1] ,読取専用属性,[[documentElement]],文書要素,[DOM1] ,method ,[[createElement]] ,要素作成 ,[DOM1] ,method ,[[createElementNS]],要素作成 ,[DOM2] ,method ,[[createDocumentFragment]],文書断片作成,[DOM1] ,method ,[[createTextNode]],文節作成 ,[DOM1] ,method ,[[createComment]] ,注釈作成 ,[DOM1] ,method ,[[createCDATASection]],文字データ区間作成,[DOM1] ,method ,[[createProcessingInstruction]],処理指令作成,[DOM1] ,method ,[[createAttribute]],属性作成,[DOM1] ,method ,[[createAttributeNS]],属性作成,[DOM2] ,method ,[[createEntityReference]],実体参照作成,[DOM1] ,method ,[[getElementById]],識別子による子要素取得,[DOM2] ,method ,[[getElementsByTagName]],要素型名による子要素取得,[DOM1] ,method ,[[getElementsByTagNameNS]],要素型名による子要素取得,[DOM2] ,[CODE(DOMa)@en[[[lastModified]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[layers]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[linkColor]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[links]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[location]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript]] [[非推奨]], [[WinIE 3]])" ,[CODE(DOMa)@en[[[onclick]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[ondblclick]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[onkeydown]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[onkeypress]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[onkeyup]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[onmousedown]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[onmouseup]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMm)@en[[[open]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[plugins]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.1]])" ,[CODE(DOMa)@en[[[referrer]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMm)@en[[[releaseEvents]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMm)@en[[[routeEvent]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[tags]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[title]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[URL]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[vlinkColor]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[width]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.2]])" ,[CODE(DOMa)@en[[[write]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[CODE(DOMa)@en[[[writeln]]]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.0]])" ,[VAR[フォーム名]],"[CODE(DOMa)@en[[[document]]]] ([[JavaScript 1.1]])" -[8] [CODE(DOMm)[getElementById]] は DOM 1 では [CODE(DOMi)[[[HTMLDocument]]]] 界面にありましたが、 DOM 2 で移動してきました。 [[#comment]] ** [CODE(DOMi)[Document]] 物体が実装し得る界面 [9] [CODE(DOMi)[Document]] 物体が実装しているかもしれない[[界面]]には、 次のようなものがあります。 :[CODE(DOMi)[Document]]:DOM水準1〜3 :[CODE(DOMi)[[[DocumentView]]]]:DOM水準2 :[CODE(DOMi)[[[DocumentEvent]]]]:DOM水準2〜3 :[CODE(DOMi)[[[DocumentStyle]]]]:DOM水準2 :[CODE(DOMi)[[[DocumentCSS]]]]:DOM水準2 など [[#comment]] **参考文献 -[DOM1] ''Document Object Model (Core) Level 1'' -[DOM2] ''Document Object Model Core'' [[#comment]] *メモ