Document
はそれぞれ doctype
プロパティを持ち、その値は null
または DocumentType
オブジェクトのいずれかである。 DOM Core におけるDocumentType
インターフェイスは、文書に定義された実体のリストに対するインターフェイスを提供する。他のものは殆ど提供しないが、それはこれを書いている時点では DTD 表現上の名前空間の効力と様々な XML スキーマの力が明らかではないからである。
DOMレベル2 は、 DocumentType
ノードの編集をサポートしない。
entities
NamedNodeMap
型, 読取専用
NamedNodeMap
。パラメータ実体は含まれない。重複するものは破棄される。例えば:
<!DOCTYPE ex SYSTEM "ex.dtd" [ <!ENTITY foo "foo"> <!ENTITY bar "bar"> <!ENTITY bar "bar2"> <!ENTITY % baz "baz"> ]> <ex/>
foo
と 1つ目のbar
宣言へのアクセスを提供するが、2番目の bar
または baz
宣言へのアクセスは提供しない。このマップ内のノードは全て Entity
インターフェイスを実装する。entities
を変更することはできない。internalSubset
DOMString
型, 読取専用
Note: 返される実際の内容は、実装に対する利用可能な情報量に依存する。これは文書構築に用いるXMLプロセッサを含めた様々なパラメータによって変化してよい。
name
DOMString
型, 読取専用
DOCTYPE
キーワードの直後に続く名前。notations
NamedNodeMap
型, 読取専用
NamedNodeMap
。重複するものは破棄される。このマップ内のノードは全て Notation
インターフェイスも実装する。notations
を変更することはできない。publicId
DOMString
型, 読取専用
systemId
DOMString
型, 読取専用
interface DocumentType : Node { readonly attribute DOMString name; readonly attribute NamedNodeMap entities; readonly attribute NamedNodeMap notations; // Introduced in DOM Level 2: readonly attribute DOMString publicId; // Introduced in DOM Level 2: readonly attribute DOMString systemId; // Introduced in DOM Level 2: readonly attribute DOMString internalSubset; };