[1] [DFN[[[DOM]] [RUBY[中核][ちゅうかく]@en[Core]]]]は、[[DOM]]
の中で[[中核]]となる [CODE(DOMi)@en[[[Document]]]] や [CODE(DOMi)@en[[[Element]]]]
などが含まれる仕様でした。

[8] この用語は [[W3C DOM]] 時代のもので、現在は使われていません。
[[DOM Core]] に相当する機能は、現在は [[DOM Standard]] の一部となっています。

* 内容

[9] 
[[DOM中核]][[仕様書]]は、狭義の[[DOM中核]]モジュールと、
[[DOM XML]]モジュールで構成されていました。

* 中核モジュール

[11] 
[[DOM]] [DFN[[RUBYB[中核モジュール] [Core Module]]]]は、
[[HTML]] DOM 実装を含むすべての DOM [[実装]]が (特に規定のない限り)
完全に実装しなければならない基礎的な[[界面]]を含んでいます [SRC[[[DOM3]]]]。

[12] 
「[[中核モジュール]]」は [[DOM3]] ではじめて導入された用語で、
[[DOM1]] と [[DOM2]] では
「[DFN[[RUBY[基礎界面群][きそかいめんぐん]@en[fundamental interfaces]]]]」
と呼ばれていました [WEAK[([[DOM3]] でも引き続きそうとも呼ばれています)]]。

[13] 
この「[[中核モジュール]]」を含む仕様は「[[DOM水準3中核]]」など「[[中核]]」
を名に翳していますが、1つの仕様の中で「[[中核モジュール]]」と「[[XMLモジュール]]」
の2つが定義されています。紛らわしいので注意が必要です。

;; 実際に「[[中核モジュール]]」の意味で「[[DOM]] の[[中核]]」などと言うことは稀で、
ほとんどすべての場合、「[[中核]]」と言えば [[DOM中核]]のことを指します。

[REFS[
- [DOM 1] Core 1.2. Fundamental Interfaces
<IW:DOM1:"level-one-core.html#ID-BBACDC08">
- [DOM 2] Core 1.2. Fundamental Interfaces
<IW:DOM2:"Core/core.html#ID-BBACDC08">
- [DOM 3] Core 1.4 Fundamental Interfaces: Core Module
<IW:DOM3:"Core/core.html#ID-BBACDC08">
]REFS]

** 機能文字列

[14] 
[CODE(DOMm)@em[[[hasFeature]]]] [[メソッド]]などで[[中核モジュール]]を表す[[機能名]]としては
「[DFN[[CODE(DOM)@en[[[DOM]]]]]]」が使われています。

,*機能名	,*版	,*DOM 1	,*DOM 2	,*DOM 3
,[CODE(DOM)[DOM]]	,[CODE(DOM)[[[null]]]]	,	,[CODE(DOM)[[[true]]]]	,[CODE(DOM)[true]]
,[CODE(DOM)[DOM]]	,[CODE(DOM)[]] (空文字列)	,	,[CODE(DOM)[true]]	,[CODE(DOM)[true]]
,[CODE(DOM)[DOM]]	,[CODE(DOM)[1.0]]	,	,	,
,[CODE(DOM)[DOM]]	,[CODE(DOM)[2.0]]	,	,[CODE(DOM)[true]]	,[CODE(DOM)[true]]
,[CODE(DOM)[DOM]]	,[CODE(DOM)[3.0]]	,	,	,[CODE(DOM)[true]]

[15] 
[[DOM1]] では「[CODE(DOM)@en[[[DOM]]]]」が定義されていなかったため、仕様上は
「[CODE(DOM)@en[[[1.0]]]]」という版番号は存在しません。ですが、一貫性のため実装によっては
[CODE(DOMm)@en[[[hasFeature]]]] [[メソッド]]が [CODE(DOM)@en[[[true]]]]
を返すことがあります。

** 界面

[16] 
,*界面名	,*DOM 1	,*DOM 2	,*DOM 3
,[CODE(DOMi)[[[Attr]]]]	,○	,○	,○
,[CODE(DOMi)[[[CharacterData]]]]	,○	,○	,○
,[CODE(DOMi)[[[Comment]]]]	,○	,○	,○
,[CODE(DOMi)[[[Document]]]]	,○	,○	,○
,[CODE(DOMi)[[[DocumentFragment]]]]	,○	,○	,○
,[CODE(DOMi)[[[DOMConfiguration]]]]	,	,	,○
,[CODE(DOMi)[[[DOMError]]]]	,	,	,○
,[CODE(DOMi)[[[DOMErrorHandler]]]]	,	,	,○
,[CODE(DOM)[[[DOMException]]]] (例外)	,○	,○	,○
,[CODE(DOMi)[[[DOMImplementation]]]]	,○	,○	,○
,[CODE(DOMi)[[[DOMImplementationList]]]]	,	,	,○
,[CODE(DOMi)[[[DOMImplementationSource]]]]	,	,	,○
,[CODE(DOMi)[[[DOMLocator]]]]	,	,	,○
,[CODE(DOMi)[[[DOMStringList]]]]	,	,	,○
,[CODE(DOMi)[[[Element]]]]	,○	,○	,○
,[CODE(DOMi)[[[NamedNodeMap]]]]	,○	,○	,○
,[CODE(DOMi)[[[NameList]]]]	,	,	,○
,[CODE(DOMi)[[[Node]]]]	,○	,○	,○
,[CODE(DOMi)[[[NodeList]]]]	,○	,○	,○
,[CODE(DOMi)[[[Text]]]]	,○	,○	,○
,[CODE(DOMi)[[[TypeInfo]]]]	,	,	,○
,[CODE(DOMi)[[[UserDataHandler]]]]	,	,	,○

* XML モジュール

[10] 
[[DOM XML]] 参照。

* 歴史

[3] [[DOM Core]] 仕様書には次の版がありました。

[FIG(list)[
= [[DOM水準1中核]]
= [[DOM水準2中核]]
= [[DOM水準3中核]]
= [[DOM水準4中核]]
= [[Web DOM Core]]
]FIG]

[4] [[DOM1]] 時代は全体で1つの仕様書で、 Core は独立した仕様書ではなく、
仕様書の1つの章でした。

[5] [[DOM2]] と [[DOM3]] は、それぞれ Core が独立した仕様書として [[W3C勧告]]になりました。

[6] [[Web DOM Core]] は [[Webプラットフォーム]]向けの [[DOM]] 仕様書として
[[W3C DOM]] とは独立に [[WHATWG]] で開発されたものでしたが、後に [[W3C]]
[[WebApps WG]] で [[DOM4]] として出版されました。
前後して [[WebApps WG]] では [[DOM4 Core]] の開発が始められましたが
(前身の [[Web API WG]] 時代に [[DOM3 Core]] の改訂を行うこととなりました)、
ほとんど作業が進まず、直ぐに廃止されました。

[7] なお [[Web DOM Core]] 改め [[DOM4]] はその後 [[WHATWG]] [[DOM Standard]]
となっています。 [[DOM Standard]] には [[DOM Core]] 部分の他に [[DOM Events]]
や [[Range]]、[[Traversal]] なども統合されており、仕様書名や用語としての
「Core」は消滅しています。

[2] [CITE@en[Re: Adding a note to DOM2 Views]]
( ([[Ian Jacobs]] 著, [TIME[2011-08-04 06:24:44 +09:00]] 版))
<http://lists.w3.org/Archives/Public/public-webapps/2011JulSep/0625.html>

[17] [CITE@en[PR Request for DOM Review Draft — Published 15 June 2020 -- shortname: DOM · Issue #357 · w3c/transitions]]
([TIME[2021-10-05T10:03:50.000Z]])
<https://github.com/w3c/transitions/issues/357>

[18] [[CEA-2014-B]] [[XML DOM 2]] とやらを使っていました。


[19] 
[DFN[KS X 6047-1:2011]]
は
[[KS]]
版。
