On 05.08.2005 13:49, BURGHARD Éric wrote:

In fact the XMLSerializer didn't take the 'method' parameter into account.
At least in saxon8 (never test with other xslt processor, but it should
work too), if you put <xsl:output method="xhtml"/> all tags like div,
script, or inputarea remains unclosed.

I think this is a bug with XMLSerializer which enforce the method to be
'xml'. The folowing simple class let you choose the serialization method.

What XMLSerializer are you talking about? The one in the serializers block or the default one?

I wrote a much more powerfull solution: the XSLSerializer, which let you
control the serialization through an xsl stylesheet (an so use the
xsl:output tag as well as some template rules to make final cleanup like
namespace deletion or href contextualization). I need to do some cleanup,
and i will submit a patch.

This is definitely the wrong approach and will probably be not accepted for the official Cocoon codebase. The transformer influencing the pipeline is like a component controlling the component container. Additionally it makes no sense letting an intermediate transformer set the serialization method for the end of the pipeline. What about an I18nTransfomer after your stylesheet? Your approach also reduces the reusability of the stylesheet as it is tied to a specific output format.

Joerg

Reply via email to