Skip to main content

XSLT <xsl:preserve-space>

XSLT <xsl:preserve-space>

The <xsl:preserve-space> element is used to define the elements for which white space should be preserved.

note

Preserving white space is the default setting, so using the <xsl:preserve-space> element is only necessary if the <xsl:strip-space> element is used.

note

The <xsl:preserve-space> element and the <xsl:strip-space> element are top-level elements.

Syntax

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

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

Attributes

AttributeValueRequired/OptionalDescription
elementslist-of-element-namesRequiredA white space separated list of element names for which white space should be preserved/removed.

Note: The list can also contain * and prefix:* so that all elements or all elements from a particular namespace can be joined

Example

In the example below we preserve white space nodes for title and author elements, and remove white space nodes for price and year elements:

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

<xsl:strip-space elements="price year" />
<xsl:preserve-space elements="title author" />

<xsl:template match="/">
<html>
<body>
<xsl:for-each select="bookstore/book">
<p>
<xsl:value-of select="title" /><br/>
<xsl:value-of select="author" /><br/>
<xsl:value-of select="price" /><br/>
<xsl:value-of select="year" />
</p>
</xsl:for-each>
</body>
</html>
</xsl:template>

</xsl:stylesheet>