Subject: [xsl] RE: [difference between processors] From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx> Date: Sun, 7 Jul 2002 07:02:16 +0100 |
> There is undoubtedly a simple explanation for this problem > that I am overlooking. > > This is the relevant fragment of a longer template. > > <xsl:template match="chapter"> > <xsl:if test="position()!=last()"> > <hr></hr> > </xsl:if> > </xsl:template> > > In a book of three chapters, Saxon and XT return three hard > rules, MSXML returns two (the fuller template shows these to > be after the first and second chapters and not the third and > final one) > The explanation is that MSXML silently strips whitespace text nodes by default. The other processors follow the spec by requiring you to do this manually, using <xsl:strip-space elements="*"/>. This means that when you do <xsl:apply-templates/>, the last node selected is not a chapter, but a whitespace text node, so it is not processed by this template rule. Michael Kay Software AG home: Michael.H.Kay@xxxxxxxxxxxx work: Michael.Kay@xxxxxxxxxxxxxx XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[no subject], David Carlisle | Thread | [xsl] xsl:copy, Cenk Uysal |
Re: [xsl] xsl:copy, Agnes Kielen | Date | RE: [xsl] fo:inline vs. fo:wrapper, bryan |
Month |