Elementy <xsl:preserve-space> i <xsl:strip-space> w XSLT

Definicja i użycie

Element <xsl:preserve-space> jest używany do zdefiniowania elementów, dla których mają być zachowane białe znaki.

Element <xsl:strip-space> jest używany do zdefiniowania elementów, dla których mają być usunięte białe znaki.

Uwaga:Zachowanie białych znaków jest ustawieniem domyślnym, więc <xsl:preserve-space> jest potrzebny tylko, gdy używany jest <xsl:strip-space>.

Uwaga:<xsl:preserve-space> i <xsl:strip-space> są elementami wierzchołkowymi (top-level element).

Gramatyka

<xsl:preserve-space elements="list-of-element-names"/>
<xsl:strip-space elements="list-of-element-names"/>

Atrybut

Atrybut Wartość Opis
elements list-of-element-names

Wymagane. Lista elementów oddzielona spacjami, która określa elementy, dla których mają być zachowane/usunięte białe znaki.

Uwaga: Lista może zawierać "*" i "prefix:*", co pozwala na dodanie wszystkich elementów lub elementów z określonej przestrzeni nazw.

Przykład

Przykład 1

W tym przykładzie, rezerwujemy węzły białe dla elementów title i artist, oraz usuwamy węzły białe z elementów country, company, price oraz year:

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:strip-space elements="country company price year" />
<xsl:preserve-space elements="title artist" />
<xsl:template match="/">
  <html>
  <body>
  <xsl:for-each select="catalog/cd">
    <p>
    <xsl:value-of select="title" /><br />
    <xsl:value-of select="artist" /><br />
    <xsl:value-of select="country" /><br />
    <xsl:value-of select="company" /><br />
    <xsl:value-of select="price" /><br />
    <xsl:value-of select="year" />
    </p>
  </xsl:for-each>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>