xsl-list
[Top] [All Lists]

Re: Result still indented despite indent="no"

2005-02-20 10:32:11
Hi David,
  You are citing this sentence from section 3.4 -
"Initially, the set of whitespace-preserving element
names contains all element names."

As I earlier said! This sentence is part of algorithm
description by the spec, that how xsl:strip-space and
xsl:preserve-space should be implemented, and should
be read in that context.

The complete paragraph is.. (I have marked this
sentence between >>>> <<<<)

For source documents, the set of whitespace-preserving
element names is specified by xsl:strip-space and
xsl:preserve-space top-level elements. These elements
each have an elements attribute whose value is a
whitespace-separated list of NameTests. >>>>Initially,
the set of whitespace-preserving element names
contains all element names<<<<. If an element name
matches a NameTest in an xsl:strip-space element, then
it is removed from the set of whitespace-preserving
element names. If an element name matches a NameTest
in an xsl:preserve-space element, then it is added to
the set of whitespace-preserving element names.

I might be wrong. looks like :) But in that case, the
spec should be a bit more clear.. It should clearly
say, what should happen, when both strip-space and
preserve-space are not present. Whether default
behaviour should be to preserve white spaces or strip
white spaces.

Regards,
Mukul
   
--- David Carlisle <davidc(_at_)nag(_dot_)co(_dot_)uk> wrote:
Mukul,

as Michael says you don't need the errata in this
case, section 3.4 is
not at all ambiguous here it says:



Initially, the set of whitespace-preserving
element names contains all
element names.

so unless you specify strip-space in your stylesheet
all white space in
the source is preserved.

This behaviour is implemented in all xslt engines
that I have seen
(including msxsl) so I don't think that there is any
reason to doubt
that this is clear.

The difference in msxml is not in the implementation
of xsl strip-space
it is in the parser producing the input tree before
xslt starts. msxml
removes white space (irrespective of xsl:strip-space
or xsl:preseve
space, the xsl instructions can only affect the
input tree as seen by
xsl and in the case of msxml the input tree has
essentially gone through
a pre-transformation that has removed space. If you
set the
preservewhitepace property so that the parser does
not do that, you'll
see that msxml implements xsl space stripping in a
conformant way.

David



                
__________________________________ 
Do you Yahoo!? 
All your favorites on one personal page ? Try My Yahoo!
http://my.yahoo.com 

--~------------------------------------------------------------------
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>
--~--