XML ドキュメントと XML データXML Documents and Data

.NET Framework には、XML 対応アプリを容易に構築するための、包括的で統合された一連のクラスが用意されています。The .NET Framework provides a comprehensive and integrated set of classes that enable you to build XML-aware apps easily. 次の名前空間のクラスでは、XML の解析と書き込み、メモリ内での XML データの編集、データの検証、および XSLT 変換がサポートされます。The classes in the following namespaces support parsing and writing XML, editing XML data in memory, data validation, and XSLT transformation.

完全な一覧で、.NET API ブラウザーで "System.Xml" を検索、ます。For a full list, search for "System.Xml" on the .NET API browser.

次の名前空間のクラスでは、World Wide Web Consortium (W3C) 勧告がサポートされます。The classes in these namespaces support World Wide Web Consortium (W3C) recommendations. 次に例を示します。For example:

.NET Framework の XML クラスの利点を次に示します。The XML classes in the .NET Framework provide these benefits:

  • 生産性Productivity. LINQ to XML (C#) および LINQ to XML (Visual Basic) により XML でのプログラミングがさらに容易になるほか、SQL と同じようにクエリを利用できます。LINQ to XML (C#) and LINQ to XML (Visual Basic) makes it easier to program with XML and provides a query experience that is similar to SQL.

  • 拡張性Extensibility. .NET Framework の XML クラスは、抽象基本クラスと仮想メソッドを使用することによって拡張できます。The XML classes in the .NET Framework are extensible through the use of abstract base classes and virtual methods. たとえば、キャッシュ ストリームをローカルのディスクに格納する XmlUrlResolver クラスの派生クラスを作成できます。For example, you can create a derived class of the XmlUrlResolver class that stores the cache stream to the local disk.

  • プラグ可能なアーキテクチャ。Pluggable architecture. .NET Framework が提供するアーキテクチャでは、コンポーネントが相互に利用できます。また、コンポーネント間でデータをストリーム転送できます。The .NET Framework provides an architecture in which components can utilize one another, and data can be streamed between components. たとえば、XPathDocument オブジェクト、XmlDocument オブジェクトなどのデータ ストアは、XslCompiledTransform クラスを使って変換でき、その出力は、別のストアにストリーム転送することも、Web サービスからのストリームとして返すこともできます。For example, a data store, such as an XPathDocument or XmlDocument object, can be transformed with the XslCompiledTransform class, and the output can then be streamed either into another store or returned as a stream from a web service.

  • パフォーマンス。Performance. アプリのパフォーマンスを高めるために、.NET Framework の一部の XML クラスはストリーム ベースのモデルをサポートし、次の特性を備えています。For better app performance, some of the XML classes in the .NET Framework support a streaming-based model with the following characteristics:

    • キャッシング処理を最小限に抑える前方参照専用のプル モデル解析 (XmlReader)。Minimal caching for forward-only, pull-model parsing (XmlReader).

    • 前方参照専用の検証 (XmlReader)。Forward-only validation (XmlReader).

    • 作成するノードを単一の仮想ノードに抑えながら、ドキュメントへのランダム アクセスを可能にする、カーソル スタイルのナビゲーション (XPathNavigator)。Cursor style navigation that minimizes node creation to a single virtual node while providing random access to the document (XPathNavigator).

    XSLT 処理が必要になるときのパフォーマンスを常に高めるために、XPathDocument クラスを使用できます。このクラスは、XslCompiledTransform クラスと効率よく連携するように設計された、XPath クエリ用の最適化された読み取り専用ストアです。For better performance whenever XSLT processing is required, you can use the XPathDocument class, which is an optimized, read-only store for XPath queries designed to work efficiently with the XslCompiledTransform class.

  • ADO.NET との統合。Integration with ADO.NET. XML クラスと ADO.NET が緊密に統合されることで、リレーショナル データと XML が結合されます。The XML classes and ADO.NET are tightly integrated to bring together relational data and XML. DataSet クラスは、データベースから取得されたデータのメモリ内キャッシュです。The DataSet class is an in-memory cache of data retrieved from a database. DataSet クラスは、XmlReader クラスと XmlWriter クラスを使用して XML を読み書きする機能、内部リレーショナル スキーマ構造を XML スキーマ (XSD) として永続化する機能、および XML ドキュメントからスキーマ構造を推論する機能を備えています。The DataSet class has the ability to read and write XML by using the XmlReader and XmlWriter classes, to persist its internal relational schema structure as XML schemas (XSD), and to infer the schema structure of an XML document.

このセクションの内容In This Section

XML の処理オプション XML データの処理に関するオプションについて説明します。XML Processing Options Discusses options for processing XML data.

メモリ内の XML データの処理 XML データをメモリ内で処理する 3 つの方法について説明します。LINQ to XML (C#) および LINQ to XML (Visual Basic)XmlDocument クラス (W3C ドキュメント オブジェクト モデルに基づく)、および XPathDocument クラス (XPath データ モデルに基づく)。Processing XML Data In-Memory Discusses the three models for processing XML data in-memory: LINQ to XML (C#) and LINQ to XML (Visual Basic), the XmlDocument class (based on the W3C Document Object Model), and the XPathDocument class (based on the XPath data model).

XSLT 変換XSLT Transformations
XSLT プロセッサの使い方について説明します。Describes how to use the XSLT processor.

XML スキーマ オブジェクト モデル (SOM)XML Schema Object Model (SOM)
スキーマの読み込みと編集のための XmlSchema クラスを提供することで、XML スキーマ (XSD) の作成と操作に使用されるクラスについて説明します。Describes the classes used for building and manipulating XML Schemas (XSD) by providing an XmlSchema class to load and edit a schema.

XML とリレーショナル データおよび ADO.NET との統合XML Integration with Relational Data and ADO.NET
.NET Framework が DataSet オブジェクトと XmlDataDocument オブジェクトを介して、データのリレーショナル表現および階層表現の両方に対するリアルタイムの同期アクセスを実現するしくみついて説明します。Describes how the .NET Framework enables real-time, synchronous access to both the relational and hierarchical representations of data through the DataSet object and the XmlDataDocument object.

XML ドキュメントでの名前空間の管理Managing Namespaces in an XML Document
XmlNamespaceManager クラスを使用して、名前空間情報を格納および保持する方法について説明します。Describes how the XmlNamespaceManager class is used to store and maintain namespace information.

System.Xml クラスでの型のサポートType Support in the System.Xml Classes
XML データ型を CLR 型にマップする方法、XML データ型を変換する方法、および System.Xml クラスのその他の型サポート機能について説明します。Describes how XML data types map to CLR types, how to convert XML data types, and other type support features in the System.Xml classes.

ADO.NETADO.NET
ADO.NET を使用してデータにアクセスする方法について説明します。Provides information on how to access data using ADO.NET.

セキュリティSecurity
.NET Framework セキュリティ システムの概要を説明します。Provides an overview of the .NET Framework security system.