XML ノードの種類
XML ドキュメントがノードのツリーとしてメモリに読み込まれると、ノードの作成時にノード型が決まります。 XML ドキュメント オブジェクト モデル (DOM) では複数のノード型が定義されています。これらのノード型は W3C (World Wide Web Consortium) で規定されているもので、セクション 1.1.1「The DOM Structure Model」に記載されています。 ノード型、ノード型に割り当てられるオブジェクト、およびそれぞれの簡単な説明を次の表に示します。
DOM ノード型 | Object | 説明 |
---|---|---|
ドキュメント | XmlDocument | ツリー内のすべてのノードのコンテナーです。 ドキュメントのルートとも呼ばれますが、常にルート要素と一致するとは限りません。 |
DocumentFragment | XmlDocumentFragment | 1 つ以上のノードを非ツリー構造で格納する一時的なバッグです。 |
DocumentType | XmlDocumentType | <!DOCTYPE…> ノードを表します。 |
EntityReference | XmlEntityReference | 展開されていないエンティティ参照テキストを表します。 |
要素 | XmlElement | 要素ノードを表します。 |
Attr | XmlAttribute | 要素の属性です。 |
ProcessingInstruction | XmlProcessingInstruction | 処理命令ノードです。 |
コメント | XmlComment | コメント ノードです。 |
テキスト | XmlText | 要素または属性に含まれるテキストです。 |
CDATASection | XmlCDataSection | CDATA を表します。 |
エンティティ | XmlEntity | 内部ドキュメント型定義 (DTD) のサブセットまたは外部 DTD とパラメーター エンティティから取得され、XML ドキュメントに含まれている <!ENTITY…> 宣言を表します。 |
Notation | XmlNotation | DTD で宣言された記法を表します。 |
属性 (attr) は、W3C DOM Level 1 のセクション 1.2「Fundamental Interfaces」ではノードとして記載されていますが、どの要素ノードの子とも見なされません。
W3C では定義されていない追加のノード型を次の表に示します。ただし、これらのノード型は XmlNodeType 列挙値としてのみ Microsoft .NET Framework オブジェクト モデルで使用できます。 そのため、これらのノード型に対応する DOM ノード型の列はありません。
ノード型 | 説明 |
---|---|
XmlDeclaration | 宣言ノード <?xml version="1.0"…> を表します。 |
XmlSignificantWhitespace | 有意の空白を表します。これは混合コンテンツの空白です。 |
XmlWhitespace | 要素コンテンツ内の空白を表します。 |
EndElement | XmlReader が要素の末尾に達したときに返されます。 XML サンプル: </item> 詳細については、「XmlNodeType」を参照してください。 |
EndEntity | ResolveEntity を呼び出した後、置換するエンティティの末尾に XmlReader が達したときに返されます。 詳細については、「XmlNodeType」を参照してください。 |
XML を読み込み、case 構成体を使用してノード型を判定し、ノードとその内容についての情報を出力するコード サンプルについては、「NodeType」を参照してください。
ノード型のオブジェクト階層構造とそれぞれに対応するオブジェクト名の詳細については、「XML ドキュメント オブジェクト モデル (DOM) の階層構造」を参照してください。 ノード ツリーに作成されるオブジェクトの詳細については、「オブジェクト階層の XML データへのマップ」を参照してください。
関連項目
.NET