<xsl:preserve-space> |
Diese Anweisung legt fest, in welchen Elementen des Ausgangsdokuments Leerräume erhalten werden sollen.
Kategorie
Element der obersten Ebene
Obligatorische Attribute
elements Dieses Attribut definiert die Elemente, in denen Leerräume erhalten werden sollen. Wenn Sie mehrere Elemente definieren müssen, trennen Sie die einzelnen Namen durch eines oder mehrere Leerraumzeichen.
Optionale Attribute
Keine
Inhalt
Keiner. <xsl:preserve-space> ist ein leeres Element.
Übergeordnetes Element
<preserve-space> ist ein Element der obersten Ebene und kann nur dem Element <xsl:stylesheet> untergeordnet werden.
Definition
XSLT-Abschnitt 3.4, Entfernen von Leerräumen
Beispiel
Die Funktionsweise des Elements <preserve-space> wird durch das folgende Stylesheet veranschaulicht:
    <?xml version="1.0"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

      <xsl:output method="text"/>
      <xsl:preserve-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>
Dieses Stylesheet wird zur Umwandlung des folgenden Dokuments verwendet:
    <?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>
Hier das Ergebnis, wenn Sie dieses XML-Ausgangsdokument mit dem Beispiel-Stylesheet verarbeiten:
    Conditional variable initialization

      int y = 23;
      int x;
        if (y > 10)
        x = 5;
      else
        if (y > 5)
          x = 3;
      else
        x = 1;
Vergleichen Sie dieses Beispiel mit dem Beispiel in der Beschreibung des Elements <strip-space>.