| <xsl:text> | |
| リテラルテキストを出力ドキュメントに書き込むことができます。 | |
| カテゴリ | |
|
命令 |
|
| 必須の属性 | |
|
なし。 |
|
| 省略可能な属性 | |
|
|
| コンテンツ | |
|
#PCDATA、リテラルテキスト、およびエンティティ参照。 |
|
| 指定先 | |
|
<xsl:text> テンプレート内に指定します。 |
|
| 定義先 | |
|
XSLT 7.2 節「テキストの作成」 |
|
| 例 | |
|
このサンプルスタイルシートにより、<xsl:text> を使用したテキストが生成されます。一貫性のある文を作成するために、<xsl:text> 要素と <xsl:value-of> 要素を混在させています。ここでは、テキストドキュメントを生成しますが、この方法は HTML または XML 要素のテキストを生成する場合にも適しています。スタイルシートは次のとおりです。
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:variable name="newline">
<xsl:text>
</xsl:text>
</xsl:variable>
<xsl:template match="/">
<xsl:text>Your document contains </xsl:text>
<xsl:value-of select="count(//*)"/>
<xsl:text> elements and </xsl:text>
<xsl:value-of select="count(//@*)"/>
<xsl:text> attributes. </xsl:text>
<xsl:value-of select="$newline"/>
<xsl:text disable-output-escaping="yes"><Have a great day!></xsl:text>
</xsl:template>
</xsl:stylesheet>
改行を生成するために <xsl:variable> を使用しています。<xsl:variable> 要素内の <xsl:text> 要素には改行が含まれます。したがって、この変数の値を結果ツリーに書き込むと、必要な改行が提供されます。次の XML ドキュメントを使用します。 <?xml version="1.0"?> <list xml:lang="en"> <title>Albums I've bought recently:</title> <listitem>The Sacred Art of Dub</listitem> <listitem>Only the Poor Man Feel It</listitem> <listitem>Excitable Boy</listitem> <listitem xml:lang="sw">Aki Special</listitem> <listitem xml:lang="en-gb">Combat Rock</listitem> <listitem xml:lang="zu">Talking Timbuktu</listitem> <listitem xml:lang="jz">The Birth of the Cool</listitem> </list> スタイルシートからは、次のような結果が生成されます。 Your document contains 9 elements and 5 attributes. <Have a great day!> text 出力方法を使用しているため、disable-output-escaping 属性は無効になります。<xsl:output method="html"/> または <xsl:output method="xml"/> を使用するようスタイルシートを変更すると、disable-output-escaping が使用されます。disable-output-escaping="yes" を使用した場合の結果は次のとおりです。 Your document contains 10 elements and 2 attributes. <Have a great day!> 初期設定値の disable-output-escaping="no" を使用した場合の結果は次のとおりです。 Your document contains 10 elements and 2 attributes. <Have a great day!> |
|