[76] DOM は、 Webブラウザーで実装されている、 JavaScript によって著者が利用可能な API とデータモデルの総称です。
[84] DOM は DOM Standard を中心に、 HTML Standard、 CSSOM、Shadow DOM など多数の仕様書によって規定されています。 00年代までは 「DOM ○○」という仕様名でしたが、00年代末から「○○ API」 という仕様名が流行しています。
[91] DOM の提供する API を DOM API ということがあります。 Web API と呼ぶこともあります (が、 Web API には他の意味もあります)。
[93] 「DOM」という語の指す対象がどこまであるかは、はっきりしていません。 狭義には DOM Standard が規定する範囲が DOM だと言えるでしょうが、 DOM Standard に含まれるか否かは歴史的経緯によるところが大きく、 機能的に明確な基準があるわけではありません。 HTML Standard など他の仕様書との間で相互に移動した機能もいくつかあります。
[94] かつて (00年代) は、 W3C に存在していた DOM WG が制定した仕様書に DOM という名前がついており、 それ以後に他の WG で追加で開発された仕様書には DOM という名前がついていない、という違いがありました。 しかしこれも明確な区別を目的としたものではなく、 標準化団体の組織運営の都合や仕様書の編集者の好み、 時代の流れのような消極的な選択の結果と思われ、 DOM という語の範囲を決めるのには不適切でしょう。実際、 この時代に開発された Element Traversal や Selectors API などは現在の DOM Standard に取り込まれています。
[78] DOM木に関するインターフェイスには次のものなどがあります。
[82] CSSOM や canvas に関するインターフェイスには次のものなどがあります。
[80] DOMイベントに関するインターフェイスには次のものなどがあります。
[79] 閲覧文脈やワーカーに関するインターフェイスには次のものなどがあります。
[83] ネットワークに関するインターフェイスには次のものなどがあります。
[81] 次の機能は廃止されました。
[1] 文書物体模型 (Document Object Model, DOM
)
は、プログラム言語などを介して HTML や XML
などの文書や、 WWWブラウザなどの利用者エージェントの機能などにアクセスするための抽象的な界面や処理模型などの総称です。
[9] DOM の仕様には水準があります。
水準は実際には実装の難易度や操作の自由度とはあまり関係が無く、 歴史的な順序関係を示しているに過ぎません。また、 高水準の仕様が低水準の仕様をすべてカバーしているわけではありません。
[2] DOM の中核部分の標準化は W3C が行っています。 詳しくは W3C の DOM に関するサイト W3C Document Object Model http://www.w3.org/DOM/ をご覧下さい。
[8] W3C が制定した DOM 関係の仕様書は Document Object Model (DOM) Specifications http://www.w3.org/DOM/DOMTR にその一覧があります。
[14] XML Schema API http://www.w3.org/Submission/2004/SUBM-xmlschema-api-20040309/
XML Schema に access するための界面です。 DOM じゃないですが、実際上 DOM です。
(名無しさん)
[15] System and Environment Framework http://www.w3.org/TR/sysenv/ (名無しさん)
[16] XPath Expressions in XForms http://www.w3.org/TR/xforms/slice7.html#expr-instance (名無しさん)
[17] CGM Open - Techncial http://www.cgmopen.org/technical/readings.html
WebCGM DOM は開発中。 (名無しさん 2004-09-26 14:51:58 +00:00)
[18] CML の DOM は Java の reference 実装だけで IDL がない模様。
(名無しさん)
[19] Voice Extensible Markup Language (VoiceXML) 2.1 http://www.w3.org/TR/2004/WD-voicexml21-20040728/#ref_VXML2
VoiceXML 2.0 の次の版ですが、 DOM 的ポイントは、
data
要素で XML 文書を参照した時に使えるだけ。
VoiceXML 文書本体は、相変わらず独自なもののみ。access-control
処理指令による DOM 木への access 制御が定義されている。data
に使う限りほとんど面白味がないような。DOM の access 制御は汎用化された仕様が独立にあっても良いと思うがどうよ? (名無しさん)
[20] とはいうものの W3C の DOM 担当のところは完全に maintainance mode っぽいからなー (これ以上仕様作っても誰も実装しなさそうだし) と思って Document Object Model Activity Statement http://www.w3.org/DOM/Activity を読んでみる。 DOM 活動には現在 DOM IG 1つだけがあるらしい。 DOM IG の憲章は6月で期限切れと書いてあるが・・・憲章がない。探してみたけど見つからない。非公開なのか? DOM IG は Public Page もないみたいだし (DOM Activity と一体なのか)、 今何やってるんだろうね? (名無しさん 2004-11-17 02:03:22 +00:00)
[22] Digest Values for DOM (DOMHASH) http://www.ietf.org/proceedings/99jul/I-D/draft-hiroshi-dom-hash-01.txt
[27] CSS3 module: Presentation Levels http://www.w3.org/TR/2003/WD-css3-preslev-20030813/ (名無しさん)
[28] >>22 RFC 2803 http://www.ietf.org/rfc/rfc2803.txt (名無しさん)
[29] >>22,>>28 I-D 00 では IDL への追加提案が載ってて、 I-D 01 では Java 束縛への追加提案に変わってて、 RFC ではなんにもなくなっているのがなんとも(w (名無しさん)
[30] jp.go.aist.gda.dom http://www.carc.aist.go.jp/nlwww/~siramatu/gdasdk/apidocs/jp/go/aist/gda/dom/package-summary.html
This document is a "wish list" of enhancements to and concerns about the DOM that were not addressed in Level 1, Level 2, or Level 3. Note that the DOM Working Group has not committed to work on most of these points. (名無しさん)
[33] [DASE] DTV A S E L 1 (DASE-1) P 2: D A E ATSC Standard http://www.atsc.org/standards/a_100_2.pdf は DOM 水準 0 の機能の一部を標準化しています。 (名無しさん [sage])
[34] [DDE] Declarative Data Essence -- Transitional http://www.smpte.org/standards/pdf/s397m.pdf は DOM の subset と少々の拡張からなる profile です。 (名無しさん [sage])
[35] SMPTE 366M-2002, Television — Declarative Data Essence — Document Object Model Level 0 (DOM-0) and Related Object Environment というのがあるそうですが、有料です。 (名無しさん [sage])
[36] ECMAScript Mobile Profile は DOM水準0 を含む DOM の profile をも規定しています。
http://www.openmobilealliance.org/release_program/docs/CopyrightClick.asp?pck=Browsing&file=V2_3-20050118-C/OMA-WAP-ESMP-V1_0-20040709-C.pdf (名無しさん [sage])
[38] XHTML 1.0 の互換性指針には DOM に関する言及があります。
(名無しさん [sage])
DOM水準3 の事象と XPath は DOM WG が諦めて WG Note にしてしまいましたが、 いつのまにか SVG WG が続きを担当することになっていたそうです。
で、そろそろ PR が出るはずですが・・・でませんねぇ(藁 (名無しさん 2005-04-08 09:18:44 +00:00)
[41] OMA (旧 WAP) の ESMP (ECMAScript + DOM のプロファイルのようなもの) は DOM水準0 の部分も含むオブジェクトを規定しています。
(名無しさん [sage])
[42] >>33 第4部はその Java 束縛。 http://www.atsc.org/standards/a_100_4.pdf (名無しさん [sage])
[43] DOM Binding for .NET http://www.alejandrolapeyre.com.ar/net/dom/ (名無しさん)
[45] SALT 1.0 では (DOM 外の) 物体に関する規定があります。 また、音声ブラウザ用の HTML や HTML DOM のプロファイルが定義されていて、その中には DOM水準0 の部分も含まれています。 (名無しさん)
[46] Compound Document Framework 1.0 and WICD Profiles http://www.w3.org/TR/2005/WD-WICD-20050809/
W3C もやればできるじゃないの。やるのが数年遅いが。 (名無しさん 2005-08-10 02:10:14 +00:00)
[47] SVG Roadmap http://www.w3.org/Graphics/SVG/Roadmap.html
Document FWD Next WD LC CR PR REC DOM Level 3 Events 01 Sep 2000 - 31 Mar 2003 [Dec 2004] [Mar 2005] [May 2005] DOM Level 3 XPath 18 Jun 2001 - 28 Mar 2002 31 Mar 2003 [Mar 2005] [May 2005]
あれ? もう勧告されたっけ? wwwwwwwwwwwwwwwwwwwwwwwwwww
(名無しさん 2005-12-29 09:01:29 +00:00)
[48] Component Extension (CX) API requirements Version 1.0 http://www.w3.org/TR/CX (名無しさん)
[49] ACTION-66: Mozilla XSLT DOM Interface from Jonas Sicking on 2006-03-03 (public-webapi@w3.org from March 2006) http://lists.w3.org/Archives/Public/public-webapi/2006Mar/0021.html (名無しさん 2006-03-03 12:18:32 +00:00)
[50] Distributed Multimodal Synchronization Protocol urn:ietf:id:draft-engelsma-dmsp-01
(名無しさん 2006-03-07 02:29:25 +00:00)
[51] WebCGM 2.0 http://www.w3.org/Submission/2006/SUBM-WebCGM20-20060313/ (名無しさん 2006-03-19 08:53:42 +00:00)
[58]
WebCGM 2.0 - WebCGM DOM (2007-01-25 02:12:49 +09:00
版) http://www.w3.org/TR/2007/REC-webcgm20-20070130/WebCGM20-DOM.html
(名無しさん 2007-02-02 14:16:46 +00:00)
[59]
WebCGM 2.0 - WebCGM DOM (2006-10-19 00:39:56 +09:00
版) http://docs.oasis-open.org/webcgm/v2.0/OS/WebCGM20-DOM.html
(名無しさん 2007-02-02 14:18:26 +00:00)
[61]
Submission request to the World Wide Web Consortium (1997-08-10 03:00:04 +09:00
版) http://www.w3.org/Submission/1997/1/
WinIE 4 DHTML Object Model とみられる仕様群。
The submission may distributed within the membership internally and publically outside of the W3C without fee.
とか
We also request that these documents be made publicly available immediately.
とか書かれているにもかかわらず、 Member only で公表されていない。 (名無しさん)
[62]
Submission request to the World Wide Web Consortium (1997-08-10 03:00:04 +09:00
版) http://www.w3.org/Submission/1997/1/
WinIE 4 DHTML Object Model とみられる仕様群。
The submission may distributed within the membership internally and publically outside of the W3C without fee.
とか
We also request that these documents be made publicly available immediately.
とか書かれているにもかかわらず、 Member only で公表されていない。 (名無しさん)
[63]
DOM Requirements (1997-04-24 09:26:44 +09:00
版) http://web.archive.org/web/19970605012710/www.w3.org/MarkUp/DOM/drafts/requirements.html
[26] Document Object Model (DOM) Requirements http://www.w3.org/TR/2001/WD-DOM-Requirements-20010419/#level3-xpath, http://www.w3.org/TR/2004/NOTE-DOM-Requirements-20040226/#dom-level-3-requirements-level3-xpath (両版とも該当部分は同内容)
XPath in DOM の新しい WG を作るという提案があったそうですが、却下されたそうで、 結局従来の DOM WG で作業していたそうです。 両データ・モデルの関係についての極簡単な考察が述べられています。 XPath 2.0 を待つべきかどうかという問題も提示されています。
[23]
XSL Transformations (XSLT) Version 1.1 (2001年8月作業原案)
http://www.w3.org/TR/2001/WD-xslt11-20010824/#N11359
は XPath の拡張関数を実装する xslt:script
要素型を定義しており、それとともに DOM 束縛も定義しています。
それには DOM と XPath の data model の対応も含まれています。
XSLT 1.1 は結局 WD のまま放棄され、 XSLT 2.0 の開発が続けられていますが、今のところ XSLT 2.0 に同様の機能はないようです。
[24] XPath Expressions in XForms http://www.w3.org/TR/xforms/slice7.html (XForms 1.0: 2003年10月勧告)
XForms は XPath も DOM 事象もふんだんに用いているのですが、 XPath 式と DOM 物体が直接かかわりあう場面がないため、 両データ・モデルの関係についての規定はありません。
[25] DOM Level 3 XPath IW:DOM3:"XPath/" (2004年2月作業部会ノート)
XPath を DOM に取り入れるために一部データ・モデルを修正しています。 この仕様自体は十分な実装が期待できないため勧告になりませんでした。
Req. では XPath 2.0 データ・モデルについて触れられていましたが、 結局 XPath 1.0 しか扱っていません。 XPath 2.0 を待っていると作業が遅れに遅れた上に、 極めて強い型付きの XPath 2.0 と普通程度に強い型付きの DOM の統合は困難を極めたかもしれません。
[37] SourceForge.net: Project Info - XPath over HTML for MSIE https://sourceforge.net/projects/html-xpath/
WinIE で DOM水準3 XPath を使うためのスクリプト。 (名無しさん)
[44]
Gecko では定数が例えば el.ELEMENT_NODE
(el
は Element
界面を実装した物体。) でアクセスできますが、
WinIE 6 や Opera 8 ではそうではありません。
[13] DOM仕様書入門? http://members.jcom.home.ne.jp/jintrick/Personal/d20043f.html#d16_0
DOM入門に仕様書を推奨する記事
です。
DOM の仕様書を初めて読むときには参考になるかもしれません。
(名無しさん 2004-03-17 01:46:35 +00:00)
[21] さてそれで偶々気づいたのだけど、 DOM の頁の幾つかは最初の目次の部分をスクリプト http://www.w3.org/DOM/demo.js で自動生成している。今まで全然気づかなかったぞ。 GJ! (名無しさん 2004-11-17 02:09:32 +00:00)
[52] Bug 153281 - No way to reach original, untransformed XML document from DOM https://bugzilla.mozilla.org/show_bug.cgi?id=153281 (名無しさん 2006-04-01 03:50:11 +00:00)
[53] Comparison of layout engines (DOM) - Wikipedia, the free encyclopedia http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28DOM%29 (名無しさん 2006-05-15 22:01:58 +00:00)
[60]
DOM Tool | Version 1.1 (2007-02-09 08:20:25 +09:00
版) http://muffinresearch.co.uk/code/javascript/DOMTool/
(名無しさん 2007-02-08 23:25:15 +00:00)
[64] State of the Browsable Web (Dec 2008) ― WebAPIs - vantguarde - web:g ( 版) http://web.g.hatena.ne.jp/vantguarde/20081215/1229353073
[65] mozilla-central mozilla/dom/public/idl/ ( 版) http://mxr.mozilla.org/mozilla-central/source/dom/public/idl/
[66] EMMA: Extensible MultiModal Annotation markup language ( 版) http://www.w3.org/TR/2009/REC-emma-20090210/#appD
[75] 紆余曲折を経て DOM は W3C から WHATWG へと移り、 DOM Standard として規定されるようになりました。
[67] Simplifying element creation ( (Anne van Kesteren 著, 版)) http://lists.w3.org/Archives/Public/www-dom/2011OctDec/0020.html
[68] IRC logs: freenode / #whatwg / 20120124 ( ( 版)) http://krijnhoetmer.nl/irc-logs/whatwg/20120124#l-418
[69] [whatwg] DOMTokenList methods would be more useful with a space separated token list ( ( 版)) http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-July/036593.html
[70] DOM ECMAScripting ( ( 版)) http://domes.lingua.heliohost.org/
[71] IEの気持ち - 最速チュパカブラ研究会 ( ( 版)) http://d.hatena.ne.jp/gyuque/20071013
[72] Re: [cssom-view] Drop "DOM" prefix from DOMRect et al? ( (Simon Pieters 著, 版)) http://lists.w3.org/Archives/Public/www-style/2013Sep/0751.html
[73] mozilla-central mozilla/content/base/public/nsDeprecatedOperationList.h ( ( 版)) http://mxr.mozilla.org/mozilla-central/source/content/base/public/nsDeprecatedOperationList.h
[74] JavaScript Grid with One Million Records | JavaScript UI - w2ui ( ( 版)) http://w2ui.com/web/blog/7/JavaScript-Grid-with-One-Million-Records
[85] リアルな DOM はなぜ遅いのか - steps to phantasien ( (Hajime Morrita 著, 版)) http://steps.dodgson.org/b/2014/12/11/why-is-real-dom-slow/
[86] 27310 – Virtual DOM and DOM diff ( 版) https://www.w3.org/Bugs/Public/show_bug.cgi?id=27310
[87] 17426 – Consider adding a replaceContents() method ( 版) https://www.w3.org/Bugs/Public/show_bug.cgi?id=17426
[88] Faster DOM | Hacker News ( ()) https://news.ycombinator.com/item?id=11777450
[89] Making the DOM faster — Anne’s Blog ( ()) https://annevankesteren.nl/2016/05/faster-dom