次の方法で共有


XslCompiledTransform クラスの出力オプション

このトピックでは、XSLT で使用できる出力オプションについて説明します。 出力オプションは、スタイル シート内で、または Transform メソッドで指定できます。

xsl:output 要素

xsl:output 要素は出力のオプションを指定します。 Transform メソッドで指定する出力の種類により、xsl:output オプションの動作が決定されます。

次の表では、出力の種類がストリームか TextWriter の場合に xsl:output 要素で使用できる各属性の動作について説明します。

属性名

動作

method

サポートされています。

version

無視されます。 バージョンは常に XML では 1.0、そして HTML では 4.0 です。

encoding

TextWriter への出力時には無視されます。 TextWriter.Encoding プロパティが代わりに使用されます。

omit-xml-declaration

サポートされています。

standalone

サポートされています。

doctype-public

サポートされています。

doctype-system

サポートされています。

cdata-section-elements

サポートされています。

indent

サポートされています。

media-type

サポートされています。

XmlWriter への出力の送出

スタイル シートで xsl:output 要素が使用され、出力の種類が XmlWriter オブジェクトの場合は、XmlWriter オブジェクトを作成する際に XslCompiledTransform.OutputSettings プロパティを使用します。 XslCompiledTransform.OutputSettings プロパティは、コンパイル済みスタイル シートの xsl:output 要素から派生した情報を含む XmlWriterSettings オブジェクトを返します。 この XmlWriterSettings オブジェクトを XmlWriter.Create メソッドに渡して、正しい設定の XmlWriter オブジェクトを作成することができます。

出力の種類

次の一覧では、Transform コマンドで使用できる出力の種類について説明します。

XmlWriter

XmlWriter クラスは XML ストリームまたはファイルを書き出します。 XmlWriterSettings クラスを使用して、出力オプションも含め、XmlWriter オブジェクトでサポートする機能を指定できます。 XmlWriter クラスは System.Xml フレームワークの重要な一部分です。 出力結果を別の XML プロセスにパイプラインして送るには、この出力を使用します。

文字列

出力ファイルの URI を指定するには、この出力を使用します。

Stream

ストリームとは、ファイル、入出力デバイス、プロセス間通信のパイプ、または TCP/IP ソケットなどのバイト シーケンスを抽象化したものです。 Stream クラスとその派生クラスは、これら各種の入出力にジェネリックな視点を提供し、プログラマがオペレーティング システムや下位のデバイスに固有の詳細を考慮する必要をなくします。

FileStreamMemoryStream、または出力ストリーム (Response.OutputStream) にデータを送るには、この出力の種類を使用します。

TextWriter

TextWriter は、文字シーケンスを書き出します。 これは StringWriter クラスおよび StreamWriter クラスに実装され、それぞれ文字を文字列に、またはストリームに書き出します。 文字列に出力する場合は、この出力の種類を使用します。

メモ

  • 空要素タグを書き出すとき、要素名の最後の文字とバック主ラッシュとの間に 1 つのスペースが書かれます。たとえば <myElement /> です。 これにより、生成された HTML ページが古いブラウザーで正しく表示されます。

参照

その他の技術情報

XSLT 変換