[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] =?iso-8859-1?Q?XML_Namespaces_and_=3Cxsl:output=3E_don=B4t_work?=


Subject: Re: [xsl] XML Namespaces and <xsl:output> don´t work
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 15 Oct 2008 17:36:22 +0100

> <!-- 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. 
________________________________________________________________________


Current Thread
Keywords