RE: [xsl] what should be the correct subject line

Subject: RE: [xsl] what should be the correct subject line
From: "Andrew Welch" <awelch@xxxxxxxxxxxxxxx>
Date: Mon, 12 Aug 2002 09:55:17 +0100
Hi,

Your problem is this template:

<xsl:template match="body/text()">
  <p><xsl:apply-templates/></p>
</xsl:template>

Which is matching all the child text nodes within <body> and outputting
<p>'s.

<body> 
  <br/>
</body>

Here <body> has three children, <br/> and two whitespace only text
nodes.

To strip the whitespace only text nodes, simply add 

<xsl:strip-space elements="body"/>

as a top level element to your stylesheet.

cheers
andrew




> -----Original Message-----
> From: abradoom [mailto:thiabek@xxxxxxxxxxx]
> Sent: 12 August 2002 07:07
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] what should be the correct subject line
> 
> 
> i have posted the same problem 2 times but no one seems to give a
> reply.
> atleast one can tell me what is the reason .
> 
> here are input and out put.
> input html.
> <html>
> <head>
> <meta name="generator" content="HTML Tidy, see www.w3.org" />
> <title>HELLO LIST</title>
> </head>
> <body bgcolor="#C4C4C4" text="#443481" link="#1111EE">
> <p>This is for br tag</p>
> <div>The stylesheet is doing some mischief</div>
> <div><font size="+1">WHAT IS THE REASON ?</font></div>
> <br /><br /><br /><br /><br /><br />
> <p>Is it not the proper syntax for matching<br />tag.</p>
> <br />
> <br />
> </body>
> </html>
> 
> xsl is.
> <?xml version="1.0"?>
> <xsl:stylesheet version="1.0"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
> <xsl:output omit-xml-declaration="yes"/>
> <xsl:template match="/">
> <wml>
> <card title="output">
> <xsl:apply-templates/>
> </card>
> </wml>
> </xsl:template>
> <xsl:template match="head"/>
> <xsl:template match="body">
> <xsl:apply-templates/>
> </xsl:template>
> 
> <xsl:template match="p/div | div/div | center/div | font/div">
> <xsl:apply-templates/>
> </xsl:template>
>    
> <xsl:template match="div">
> <p><xsl:apply-templates/></p>
> </xsl:template>
> 
> <xsl:template match="font/p | center/p | div/p | p/p">
> <xsl:apply-templates/>
> </xsl:template>     
>       
> <xsl:template match="p">
> <p><xsl:apply-templates/></p>
> </xsl:template>
> 
> <xsl:template match="p/font | center/font | div/font | font/font">
> <xsl:apply-templates/>
> </xsl:template>     
> 
> <xsl:template match="font">
> <p><xsl:apply-templates/></p>
> </xsl:template>
> 
> <xsl:template match="font/br | div/br | center/br | p/br ">
> <br/>
> </xsl:template>
> 
> <xsl:template match="body/text()">
> <p><xsl:apply-templates/></p>
> </xsl:template>
> 
> </xsl:stylesheet>
> 
> and the output is
> 
> <?xml version="1.0"?><!DOCTYPE wml PUBLIC '-//WAPFORUM//DTD WML
> 1.2//EN'
>   'http://www.wapforum.org/DTD/wml_1.2.xml'><wml><card title="wml
>   output">
> 
> <p>
> </p><p>This is for br tag</p><p>
> 
> </p><p>The stylesheet is doing some mischief</p><p>
> 
> </p><p>WHAT IS THE REASON ?</p><p>
> 
> </p><p>
> </p><p>
> </p><p>
> </p><p>
> </p><p>
> </p><p>
> </p><p>Is it not the proper syntax for matching<br/>
> tag.</p><p>
> 
> </p><p>
> </p><p>
> </p>
> </card></wml>
> 
> Here so many unwanted <p> and </p> .why? and how to remove them with
> the condition that if some text is not in side of any tag but body it
> should be outputted.
> (<html>...<body>
>  some text not in any tag 
> <p>some text in side p tag</p>
> </body></html>)
> And if i want to test for <br /> that if it is just after a 
> <a> or <li>
> or <br /> then do not put <br /> in output.
> I tried
> <xsl:template match="br[not(preceding-sibling::node()[1][self::br])] |
> br[not(preceding-sibling::node()[1][self::a])] |
> br[not(preceding-sibling::node()[1][self::li])]">
>         <br/>
> </xsl:template>
> but not working
> thiabek
>  
> 
> -- 
> http://fastmail.fm/ - A fast, anti-spam email service.
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 
> 
> 
> 
> 
> ---
> Incoming mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.381 / Virus Database: 214 - Release Date: 02/08/2002
>  
> 

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.381 / Virus Database: 214 - Release Date: 02/08/2002
 

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread