xsl-list
[Top] [All Lists]

RE: Re: Whitespace between nodes

2004-05-12 14:11:05
I've made a small model of your input xml and stylesheet documents based on 
what you've posted. I can confirm that Saxon 6.5.3 does as you describe and 
MSXSL does as you say you want. While I'm certainly no expert on the specs (as 
others on this list are) it seems that you've fallen into a gray area that the 
spec leaves up to the implementor to handle as he or she sees fit. Perhaps one 
of the spec experts will confirm or refute this hypothesis.
--
Charles Knell
cknell(_at_)onebox(_dot_)com - email



-----Original Message-----
From:     Nicholas Shanks <contact(_at_)nickshanks(_dot_)com>
Sent:     Wed, 12 May 2004 21:48:03 +0100
To:       xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject:  Re: [xsl] Whitespace between nodes

On 12 May 2004, at 21:35, cknell(_at_)onebox(_dot_)com 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="{(_at_)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.


--+------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--+--





<Prev in Thread] Current Thread [Next in Thread>