Alejandro,
you can control the doctype and the xml declaration by configuring the
cocoon serializer. Take a look at:
http://cocoon.apache.org/2.1/userdocs/xhtml-serializer.html
if you are using cocoon 2.2 read
http://cocoon.apache.org/2.2/core-modules/core/2.2/1259_1_1.html
as well.
The configuration didn't change from 2.1 to 2.2 but you should do it in
another place.
good luck
Martin.
Alejandro schrieb:
Thank you, David
***********
<xsl:text disable-output-escaping="yes"><![CDATA[<!DOCTYPE html PUBL
don't do that!
use doctype-system and doctype-public on xsl:output.
*****
xsl:output dont´t work.
<xsl:output method="xml" media-type="text/html;charset=ISO-8859-1"
indent="yes" encoding="ISO-8859-1" omit-xml-declaration="yes"
doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" />
<xsl:text disable-output-escaping="yes"><![CDATA[<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">]]></xsl:text>
If i remove:
<xsl:text disable-output-escaping="yes"><![CDATA[<!DOCTYPE html PUBL
then DocType declaration not appear and then the browser enter in quirks
mode
<html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es">
<head>
<title>Biblioteca Insular</title>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type"/>
<link href="css/BIB-INS-external.css" type="text/css" rel="stylesheet"/>
<script xmlns="" type="text/javascript"
src="js/BINS-funciones.js"></script>
....
in the xmap file (JBOSS)
...
<?xml version="1.0"?>
<map:sitemap xmlns:map="http://apache.org/cocoon/sitemap/1.0">
<!-- =========================== Components
================================ -->
<map:components>
<map:matchers default="wildcard"/>
<map:selectors default="browser"/>
<map:generators default="persistant"/>
<map:transformers default="eadmin"/>
<map:readers default="resource"/>
<map:serializers default="html"/>
<map:actions default="eadm-action"/>
</map:components>
<map:views>
<map:view name="ent" from-position="last">
<map:serialize type="html"/>
</map:view>
<map:view from-position="last" name="links">
<map:serialize type="links"/>
</map:view>
</map:views>
<!-- =========================== Pipelines
================================= -->
<map:pipelines>
<map:pipeline>
<!-- HOME -->
<map:match pattern="home.bin">
<map:aggregate element="listado">
<map:part element="menus" src="cocoon:/menuXMLNavegacion.bin"/>
<map:part element="busqueda" src="cocoon://home-principal.bin"/>
....
</map:aggregate>
<map:transform src="xsl/binsular/home.xsl">
<map:parameter name="use-request-parameters" value="true"/>
</map:transform>
<map:serialize type="html"/> ****
</map:match>
....
</map:pipeline>
</map:pipelines>
</map:sitemap>
I i put **** <map:serialize type="xml"/> then xsl:output work, and
Doctype is added but the result is xml, don´t html
what can i do?
best regards,
Alex
----- Mensaje original ----- De: "David Carlisle"
<davidc(_at_)nag(_dot_)co(_dot_)uk>
Para: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Enviado: miércoles, 15 de octubre de 2008 17:36
Asunto: Re: [xsl] XML Namespaces and <xsl:output> don´t work
<!-- WHY xmlns="" -->
because you have generated an element h1 in no namespace so that has to
have xmlns=" because it is in a different namespace than its parent.
What you should do is generate a h1 in the xhtmml namespace
http://www.w3.org/1999/xhtml
then no xmlns will be added.
easiest way to do this is to put
xmlns="http://www.w3.org/1999/xhtml"
onto all your xsl:stylesheet elements.
In the stylesheet don't put the xmlns just on html
<html xmlns="http://www.w3.org/1999/xhtml"
as that only makes the elements in that template be xhtml, all other
elements generated are in no-namespace.
move that declaration to the top of the stylesheet (all the stylesheets)
so that all elements are in the right namespace.
<xsl:text disable-output-escaping="yes"><![CDATA[<!DOCTYPE html PUBL
don't do that!
use doctype-system and doctype-public on xsl:output.
(almost) never use disable-output-escaping="yes".
David
________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs.
________________________________________________________________________
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--