XmlReader の具象実装を使用した XML の読み取り

.NET Framework 2.0 では、Create メソッドを使用して XmlReader インスタンスを作成できます。これが XmlReader インスタンスを取得する手段として推奨されている方法です。

XmlReader の実装

しかし、XmlReader の具象実装を使用したい場合もあります。XmlReader クラスの実装では、基本クラスを拡張し、さまざまな状況のニーズに応じて設計を変えています。次の表では、XmlReader クラスの実装について説明します。

クラス

説明

XmlTextReader

文字ストリームを読み取ります。これは前方参照専用のリーダーであり、コンテンツとノード型のデータを返すメソッドが用意されています。ドキュメント型定義 (DTD) またはスキーマのサポートはありません。XML ドキュメントに DTD が含まれている場合、その DTD は解析されますが、検証や既定の属性の追加には使われません。

エンティティを展開したくない場合、または新しい行を正規化したくない場合、.NET Framework 2.0 では XmlTextReader クラスを使用できます。それ以外の場合は、Create メソッドを使用して XmlReader インスタンスを作成する方法をお勧めします。詳細については、「XML リーダーの作成」を参照してください。

XmlNodeReader

XmlNode ツリーのような XML ドキュメント オブジェクト モデル (DOM) API に対する XmlReader を提供します。XmlNode を受け取り、エンティティ参照ノードを含む DOM ツリーで検出されたすべてのノードを返します。DTD またはスキーマによる検証のサポートはありませんが、DTD で定義されたエンティティは解決できます。

XmlValidatingReader

DTD、XML スキーマ定義言語 (XSD) スキーマ、または XML-Data Reduced (XDR) スキーマをサポートする、標準に完全に準拠した検証または非検証 XML パーサーを提供します。XmlTextReader を受け取り、その上位に検証サービス層を作成します。

XDR スキーマを使用して検証を実行する必要がある場合、.NET Framework 2.0 では XmlValidatingReader クラスを使用できます。それ以外の場合は、Create メソッドを使用して XmlReader インスタンスを作成してください。詳細については、「XmlReader による XML データの検証」を参照してください。

メモメモ
.NET Framework 2.0 では、XmlValidatingReader クラスが廃止されています。

参照

概念

XmlReader による XML の読み取り

XML リーダーの作成