Why the CDATA? CDATA means "the stuff in here is not markup, even if it looks like markup". So the HTML output is going to contain <script> rather than <script>, which means the browser will not recognize it. The CDATA appears to achieve nothing here other than to deactivate the script element.
Michael Kay
http://www.saxonica.com/
Author, XSLT 2.0 and XPath 2.0 Programmer's Reference