<xsl:strip-space>  
空白スペースを削除するソースドキュメントの要素を定義します。
 
カテゴリ

トップレベル要素

 
必須の属性
elements
不要な空白スペースを削除するソースドキュメントの要素をスペースで区切った一覧を含みます。不要な空白スペースとは通常、空白スペースのみを含むテキストノードを意味します。テキスト内とテキストの周囲にある空白スペースは保持されます。

 
省略可能な属性

なし。

 
コンテンツ

なし。<xsl:strip-space> は空の要素です。

 
指定先

<xsl:strip-space> はトップレベル要素であり、<xsl:stylesheet> の子としてのみ使用できます。

 
定義先

XSLT 3.4 節「空白スペースの削除」

 

次のスタイルシートに <xsl:strip-space> 要素を示します。

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

  <xsl:output method="text"/>
  <xsl:strip-space elements="listing"/>

  <xsl:variable name="newline">
<xsl:text>
</xsl:text>
  </xsl:variable>

  <xsl:template match="/">
    <xsl:value-of select="$newline"/>
    <xsl:value-of select="/code-sample/title"/>
    <xsl:value-of select="$newline"/>
    <xsl:for-each select="/code-sample/listing">
      <xsl:value-of select="."/>
    </xsl:for-each>
  </xsl:template>

</xsl:stylesheet>

このスタイルシートを使用して次のドキュメントを処理します。

<?xml version="1.0"?>
<code-sample>
  <title>Conditional variable initialization</title>
  <listing>
  <type>int</type> <variable>y</variable> = <constant>23</constant>;
  <type>int</type> <variable>x</variable>;

    <keyword>if</keyword> (<variable>y</variable> > <constant>10</constant>)
    <variable>x</variable> = <constant>5</constant>;
  <keyword>else</keyword> 
    <keyword>if</keyword> (<variable>y</variable> > <constant>5</constant>)
      <variable>x</variable> = <constant>3</constant>;
  <keyword>else</keyword>
    <variable>x</variable> = <constant>1</constant>;
  </listing>
</code-sample>

結果は次のとおりです。


Conditional variable initialization
inty = 23;
  intx;
    if (y > 10)
    x = 5;
  elseif (y > 5)
      x = 3;
  elsex = 1;

<listing> 要素の余分な空白スペースはすべて削除されています。これには、<keyword><constant>、および <variable> など、<listing> 内に含まれているさまざまな要素間のスペースも含まれます。この例を <preserve-space> 要素の例と比較してください。