Re: [xsl] Whitespace between nodes

Subject: Re: [xsl] Whitespace between nodes
From: Nicholas Shanks <contact@xxxxxxxxxxxxxx>
Date: Wed, 12 May 2004 21:48:03 +0100
On 12 May 2004, at 21:35, cknell@xxxxxxxxxx wrote:

I suspect that your input document has the carriage returns

Nope, it doesn't.


I think one of your processors is "helpfully" removing the carriage returns improperly. If you show us the input and name the processors it will be easy to help.

XSL:


<xsl:choose>
  <xsl:when test="@href != ''">
    <q><a href="{@href}"><xsl:value-of select="@title" /></a></q>
  </xsl:when>
  <xsl:otherwise>
    <q><xsl:value-of select="@title" /></q>
  </xsl:otherwise>
</xsl:choose>

Sablotron:
<q>
  <a href="...">Text</a>
</q>
-or-  (if !href)
<q>Text</q>

Libxslt:
<q><a href="...">Text</a></q>
-or-  (if !href)
<q>Text</q>

Saxon: (as Sablotron)
Xalan-J: (as Sablotron but without indentations)

So only Libxslt behaves as I would hope, but the others do not do anything against the rules. I just want to know how to wrap the q elements in a "dont-insert-whitespace" instruction.

- Nick.

Current Thread