Re: [xsl] Extra xmlns=""

Subject: Re: [xsl] Extra xmlns=""
From: Larry Garfield <lgarfiel@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 17 Jul 2001 00:11:55 -0500
mhkay@xxxxxxxxxxxx wrote:

> > I've noticed that some XSLT engines, when converting from XML
> > to XHTML,
> > will insert extra empty xmlns="" attributes into some tags,
> > even though
> > the XSLT script does not tell it to.  The div and hx tags
> > generally get
> > these.  Of course, the file is then not valid XHTML.
> This has nothing to do with the output being XHTML, and nothing to do with the specific elements being output.

I didn't think so, but wasn't sure.

> An xmlns="" (I call it a namespace undeclaration) must be output for an element E if the parent node of E has a namespace node with (name = "", value = something other than ""), and if E has no namespace node with name = "". The conditions that cause this situation to arise in the result tree depend entirely on your stylesheet; and of course the XSLT processor doesn't even know that you are trying to produce XHTML.

Uh, I'm afraid I don't follow.  Can you please give an example?

My stylesheet is taking a no-namespace DocBook tree and parsing it into an XHTML file, with a single namespace declaration in the <html> tag, with no namespace prefix (that is, xmlns="whatever the URI is for XHTML").

> If two processors produce output files that are materially different in their namespace declarations, then one of them is wrong.

Does extra namespace undeclaration count as materially different?

Larry Garfield

Do you have a PalmOS Organizer?  Click here to add me to your address book:

-- "If at first you don't succeed, skydiving isn't for you." :-)

 XSL-List info and archive:

Current Thread