Subject: RE: Are whitespace text nodes tripped out in varaibles?
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 25 Jan 2006 19:30:09 -0000
|
> Is the expected behaviour that the whitespace text nodes
> are stripped
> out in a document node constructed in a variable?
No, but it is expected that whitespace text nodes are removed from the
stylesheet while it is being compiled. If you want to generate whitespace
text nodes, use xsl:text or xsl:value-of.
Michael Kay
http://www.saxonica.com/
If it is, does
> someone can point me out relevant parts of the recommendation?
> Following is a simple test tested with Saxon 8.6.1:
>
> ~/drafts/fctx $ cat white-spaces.xsl
> <xsl:stylesheet
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> version="2.0">
>
> <xsl:output method="text"/>
>
> <xsl:preserve-space elements="elem"/>
>
> <xsl:variable name="var">
> <elem>
> <a/> <b/> bla <c/>
> </elem>
> </xsl:variable>
>
> <xsl:template match="/">
> <xsl:apply-templates select="$var/elem/(*|text())"/>
> </xsl:template>
>
> <xsl:template match="*">
> <xsl:text>Elem #</xsl:text>
> <xsl:value-of select="position()"/>
> <xsl:text>: </xsl:text>
> <xsl:value-of select="local-name()"/>
> <xsl:text> </xsl:text>
> </xsl:template>
>
> <xsl:template match="text()">
> <xsl:text>text #</xsl:text>
> <xsl:value-of select="position()"/>
> <xsl:text>: [</xsl:text>
> <xsl:value-of select="."/>
> <xsl:text>] </xsl:text>
> </xsl:template>
>
> </xsl:stylesheet>
> ~/drafts/fctx $ saxon white-spaces.xsl white-spaces.xsl
> Elem #1: a
> Elem #2: b
> text #3: [ bla ]
> Elem #4: c
> ~/drafts/fctx $
>
> Regards,
>
> --drkm
>
>
>
>
>
>
>
> ______________________________________________________________
> _____________
> Nouveau : tiliphonez moins cher avec Yahoo! Messenger !
> Dicouvez les tarifs exceptionnels pour appeler la France et
> l'international.
> Tilichargez sur http://fr.messenger.yahoo.com
|