Subject: Re: [xsl] removing tab formatting during XSLT? From: "Michael H. Semcheski" <mhs-list@xxxxxxxxx> Date: Thu, 10 Oct 2002 16:20:50 -0400 |
Thanks Richard,
Still no go however. I changed my XLST to:
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/> <xsl:strip-space elements="*"/> <xsl:template match="/"> <xsl:apply-templates/> </xsl:template> <xsl:template match="*"> <!-- recreate the element --> <xsl:element name="{name()}"> <xsl:apply-templates/> </xsl:element> </xsl:template> <xsl:variable name="tab">	</xsl:variable> <xsl:template match="text()"> <xsl:value-of select="translate(. , $tab , '')"/> </xsl:template>
</xsl:stylesheet>
However the match="text()" template does not get invoked on the * element below:
<?xml version="1.0"?> <A> *<B att="att">a</B> <C>b</C> <D>c</D> </A>
I'm clearly misunderstanding this. Is there a text element in the * position?
Any additional help would be greatly appreciated.
cheers
Malcolm
-----Original Message----- From: Richard Lander [mailto:rlander@xxxxxxxxxxxxx] Sent: Thursday, October 10, 2002 2:18 PM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: [xsl] removing tab formatting during XSLT?
I've done this sort of thing before ...
You have two problems, as I see it.
1- you are referencing a named entity (nbsp;) w/o really doing so. You would need to use ' '. Still, that probably doesn't make any sense, given that a non-breaking space isn't the same as a tab.
2. You should search on '	' instead. I'm pretty sure that that is the tab character ...
Rich
-----Original Message-----
From: Macaulay,Malcolm (US) [mailto:Malcolm.Macaulay2@xxxxxxxxx] Sent: Thursday, October 10, 2002 10:55 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Could someone please enlighten me on how I can remove tab formatting from my resulting XML.
Here's an example:
Source XML:
<?xml version="1.0"?> <A> <B att="att">a</B> <C>b</C> <D>c</D> </A>
Desired output XML (i.e. the same as input but with all tabs removed):
<?xml version="1.0"?><A><B att="att">a</B><C>b</C><D>c</D></A>
XSLT (which doesn't work):
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="no"/> <xsl:strip-space elements="*"/> <xsl:template match="/"> <xsl:apply-templates/> </xsl:template> <xsl:template match="*"> <!-- recreate the element --> <xsl:element name="{name()}"> <!-- copy existing attributes--> <xsl:for-each select="@*"> <xsl:copy/> </xsl:for-each> <xsl:apply-templates/> </xsl:element> </xsl:template> <xsl:variable name="tab">nbsp;</xsl:variable> <xsl:template match="text()"> <xsl:value-of select="translate(. , $tab , '')"/> </xsl:template>
<!-- original attempt <xsl:template match="text()"> <xsl:value-of select="normalize-space(.)"/> </xsl:template> -->
</xsl:stylesheet>
I want to remove the tabs because this significantly reduces the size of the file.
Thanks in advance.
cheers
Malcolm
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] removing tab formatting d, Macaulay,Malcolm (US | Thread | RE: [xsl] removing tab formatting d, Michael Kay |
RE: [xsl] removing tab formatting d, Richard Lander | Date | [xsl] Re: How can I get the XPATH o, Dimitre Novatchev |
Month |