Ken,
Absolutely spot on. I'm immensely grateful for your help yet again.
Thanks,
Mark Williams
----- Original Message -----
From: "G. Ken Holman" <gkholman(_at_)CraneSoftwrights(_dot_)com>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Wednesday, January 14, 2004 8:58 PM
Subject: Re: [xsl] White space
At 2004-01-14 19:35 +0000, Mark Williams wrote:
My xsl template is in fact structured as you suggest....
Then I think I may know what is going on: spaces between some elements in
an XSL-FO file are significant while spaces between all elements (except
<xsl:text>) in an XSLT file are not significant.
What I am looking for is a simple flag to set at the beginning of the xsl
template which will tell it to leave my white space alone. I had, in
fact,
already tried preserve space previously with no effect, but I thought I
would give David's suggestion a go, specifically aimed at fo elements.
Below is an example that I think demonstrates the functionality you need.
Do you have any ideas why this may not be working and what else I can
possibly try?
Using xml:space="preserve".
Note below:
(1) - the file "mark.fo" has spaces in the block that would be seen on a
page.
(2) - the file "mark.xfo" simply wraps it in an XSLT template
- the spaces become meaningless as illustrated by running Saxon and
no
spaces are seen in the block in the result
(3) - the file "mark.ssl" uses xml:space="preserve" to keep the spaces
significant
- the spaces are preserved as illustrated by running Saxon and
spaces are
seen in the block in the result
I've had to use this in the past when writing stylesheets that write
stylesheets that people need to look at.
I hope this helps.
............................. Ken
T:\ftemp>type mark.fo
<root xmlns="http://www.w3.org/1999/XSL/Format"
font-size="16pt">
...blah...blah...blah...
<block>
<inline>This</inline> <inline>is</inline>
<inline>a</inline> <inline>test.</inline>
</block>
...blah...blah...blah...
</root>
T:\ftemp>type mark.xfo
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="/">
<root xmlns="http://www.w3.org/1999/XSL/Format"
font-size="16pt">
...blah...blah...blah...
<block>
<inline>This</inline> <inline>is</inline>
<inline>a</inline> <inline>test.</inline>
</block>
...blah...blah...blah...
</root>
</xsl:template>
</xsl:stylesheet>
T:\ftemp>type mark.xsl
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:template match="/" xml:space="preserve">
<root xmlns="http://www.w3.org/1999/XSL/Format"
font-size="16pt">
...blah...blah...blah...
<block>
<inline>This</inline> <inline>is</inline>
<inline>a</inline> <inline>test.</inline>
</block>
...blah...blah...blah...
</root>
</xsl:template>
</xsl:stylesheet>
T:\ftemp>saxon mark.xfo mark.xfo
<?xml version="1.0" encoding="utf-8"?><root
xmlns="http://www.w3.org/1999/XSL/Fo
rmat" font-size="16pt">
...blah...blah...blah...
<block><inline>This</inline><inline>is</inline><inline>a</inline><inline>tes
t.
</inline></block>
...blah...blah...blah...
</root>
T:\ftemp>saxon mark.xsl mark.xsl
<?xml version="1.0" encoding="utf-8"?>
<root xmlns="http://www.w3.org/1999/XSL/Format" font-size="16pt">
...blah...blah...blah...
<block>
<inline>This</inline> <inline>is</inline>
<inline>a</inline> <inline>test.</inline>
</block>
...blah...blah...blah...
</root>
--
North America (Washington, DC): 3-day XSLT/2-day XSL-FO 2004-03-15
Instructor-led on-site corporate, government & user group training
for XSLT and XSL-FO world-wide: please contact us for the details
G. Ken Holman mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/
Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995)
ISBN 0-13-065196-6 Definitive XSLT and XPath
ISBN 0-13-140374-5 Definitive XSL-FO
ISBN 1-894049-08-X Practical Transformation Using XSLT and XPath
ISBN 1-894049-11-X Practical Formatting Using XSL-FO
Member of the XML Guild of Practitioners: http://XMLGuild.info
Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list