[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Stripping or converting HTML tags


Subject: Re: [xsl] Stripping or converting HTML tags
From: David Carlisle <davidc@xxxxxxxxx>
Date: Tue, 19 Oct 2004 17:09:29 +0100

  I am trying to work out a way that strips out tables for a "text" only
  version of the page.

yes but do you wwant to just lose the markup and let the ext be whatever
it is, or do you want some approximation of a table layout eg (at least)
starting each table row as a new paragraph so it starts on a new line.

My solution to your request

<xsl:template match="xhtml:table">
 <xsl:value-of select="."/>
</xsl:template>    
    

just flows all the data from  any part of the table in to one
it also will merge words in some cases if there was no white space near
the markup. <td>this</td><td>that</td> would be readable as two words if
it is in two columns but xsl:value-of will make it thisthat.

I'd guess you want something more like

<xsl:template match="xhtml:table|xhtml:thead|xhtml:tbody">
 <xsl:apply-templates select="*"/>
</xsl:templates>


<xsl:template match="xhtml:tr">
 <p><xsl:apply-templates select="*"/></p>
</xsl:templates>


<xsl:template match="xhtml:th|xhtml:td">
 <xsl:text> </xsl:text><xsl:apply-templates select="*"/><xsl:text> </xsl:text>
</xsl:templates>



so you ignore any indentation of table elements (as you just select on *)

but make every row into a paragraph and make sure there is space either
side of every entry

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________


Current Thread
Keywords