cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Horsfield, Peter A." <>
Subject RE: Special Chars in HTML Output
Date Thu, 23 Oct 2003 22:15:32 GMT
I think you missed the problem Joerg.

No one wants to code 

if(1 &lt; 2)

Brent wants his scripts untouched.

Solution: external scripts.

All the best,


-----Original Message-----
From: Joerg Heinicke []
Sent: Thursday, October 23, 2003 6:13 PM
Subject: Re: Special Chars in HTML Output

Hello Brent,

it works for me by default.

<script type="text/javascript">
   function test() {
     if (1 &lt; 2) {}

in the stylesheet is converted to (1 < 2) in the HTML output when using 
the HTML serializer. This is with Cocoon 2.1 and Xalan 2.5.1. I have 
neither configured something special in xsl:output nor the serializer 


On 23.10.2003 16:43, Brent L Johnson wrote:

> That does make since that it wouldnt escape the
> chars between script tags.  So I checked my sitemap file
> and I was indeed serializing to xhtml - so I changed it
> to html and I'm still having the same problem.
>     <map:match pattern="index.html">
>         <map:generate src="welcome.xml"/>
>         <map:transform src="resources/styles/xsl/welcome.xsl"
> type="xslt"/>
>         <map:serialize type="html"/>
>     </map:match>
> Pretty straightforward.  I'll dig through the docs related
> to the serializer and see what I find.
> Here's a portion of the XSL file:
> <xsl:template match="welcome">
> ...
>       <script language="Javascript">
>       <![CDATA[
>           function checkAgree() {
>               if (2 > 1) {
>                   alert('DOH!');
>               }
>           }
>       ]]>
>       </script>
> ...
> Thanks,
> - Brent
>>Probably you want to look at some details on HTML vs. XML 
>>output methods of xslt - 
>> . 
>>Relevant info there looks something like this: 
>>The html output method should not perform escaping for the 
>>content of the script and style elements. For example, a 
>>literal result element written in the stylesheet as
>><script>if (a &lt; b) foo()</script>
>><script><![CDATA[if (a < b) foo()]]></script>
>>should be output as
>><script>if (a < b) foo()</script>
>>The html output method should not escape < characters 
>>occurring in attribute values. 
>>So, simple solution would be changing map:serialize from xml 
>>or xhtml to html. If it doesn't work for you, then probably 
>>you could try some analogy of <xsl:output 
>>cdata-section-elements="script"/> by modifying settings for 
>>your map:serialize / map:serializer - I can't give you 
>>details for that, try to find it in docs for XMLSerializer.
>>>I'll say sorry up front - I'm sure this is a newbie thats been 
>>>answered a hundred times on this list.  The search terms 
>>are so vague 
>>>that I don't get any good results from searching around on the 
>>>Pretty simple - I've got Javascript in my XSL file that
>>>needs a less-than symbol.  I've got the Javascript wrapped 
>>in a CDATA 
>>>section.. but thats getting converted to &lt; in the code.
>>>How can I prevent this?
>>Probably somebody from advanced cocooners can provide better 
>>details / comment / solution for this problem - I also would 
>>be very interested in that.
>>>- Brent

To unsubscribe, e-mail:
For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message