Re: [xsl] Specifying the XHTML XMLNS

Subject: Re: [xsl] Specifying the XHTML XMLNS
From: knocte <knocte@xxxxxxxxx>
Date: Wed, 28 Sep 2005 15:38:24 +0200
Thanks for your message David. See my response below:


2005/9/28, David Carlisle <davidc@xxxxxxxxx>:
>
> > If I specify it using xsl:attribute I finally get the xmlns
> > attribute specified in many nodes instead of only in the <html> one.
>
> that would be a bug in your XSLT processor. If you specify an attribute
> name xmlns or starting with xmlnns: then you are supposed to get a fatal
> error and no output at all.

I am using the XML API that comes with .NET2003.


> Your stylesheet has:
>     <html>
>
> which means html in no-namespace, if you want that (and all other
> unprefixed literal result eleemnts) to mean elements in xhtml then
> you need them to be in the xhtml namespace so add
> xmlns="http://www.w3.org/1999/xhtml";
> to your xsl:stylesheet element. Note that this is essentially just an

If I add this to my stylesheet, I get a correct <html> node but I get
these kind of things on the rest of the result:

...
<link rel="stylesheet" href="./css/login.css" type="text/css"
xmlns=""></link>
...
<script type="text/javascript" src="./js/login.js" xmlns=""></script>
...
<h2 xmlns="">Test</h2>
...

Which I suppose is something not desired and avoidable...?


> issue about how xml namespaces are specified in teh xml namespace rec,
> Its not really a special xslt rule.
>
> unrelated but
>
>    <html>
>       <xsl:attribute name="xml:lang">es</xsl:attribute>
>
> is a lot more verbose than you need, why not juse
>
>    <html xml:lang="es">

Yes, thanks for the tip.

Regards,

  Andrew    [ knocte ]

--

Current Thread