xsl-list
[Top] [All Lists]

RE: [xsl] Is it possible to set the default namespace with a dynamically-generated namespace uri?

2010-03-12 13:45:30
I recently encountered the same problem. It seems you can't construct an 
element without explicit prefix and then create a default namespace declaration 
for the element. I guess it makes sense because if you haven't had a default 
namespace declaration, then the element without prefix should belong to null 
namespace. 


Lisa

-----Original Message-----
From: Dimitre Novatchev [mailto:dnovatchev(_at_)gmail(_dot_)com] 
Sent: Friday, March 12, 2010 11:16 AM
To: David Carlisle
Cc: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Is it possible to set the default namespace with a 
dynamically-generated namespace uri?

http://www.w3.org/TR/xslt20/#element-namespace

If the effective value  of the name attribute is a zero-length string, a
namespace node is added for the default namespace.


so

<foo>
<xsl:namespace name="" select="$x"/>

sets the default namespace to the uri in the variable x.

David



David, I tried this hours before asking the question.

Saxon raises this error:

SystemID: D:\XSLT\MSTE_xslt\delete.xsl
Severity: fatal
Description: Cannot output a namespace node for the default namespace
when the element is in no namespace
Start location: 9:0
URL: http://www.w3.org/TR/xslt20/#err-XTDE0440


I thought this wasn't a bug in Saxon. Or is it?


Cheers,
Dimitre

On Fri, Mar 12, 2010 at 10:51 AM, David Carlisle 
<davidc(_at_)nag(_dot_)co(_dot_)uk> wrote:
On 12/03/2010 18:25, Dimitre Novatchev wrote:

I know this seems like an absurd scenario, but some people are asking
this question...

It seems that<xsl:namespace>  was not intended for this purpose.

Any suggestions for a solution?


http://www.w3.org/TR/xslt20/#element-namespace

If the effective value  of the name attribute is a zero-length string, a
namespace node is added for the default namespace.


so

<foo>
<xsl:namespace name="" select="$x"/>

sets the default namespace to the uri in the variable x.

David




-- 
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play
-------------------------------------
I enjoy the massacre of ads. This sentence will slaughter ads without
a messy bloodbath.

--~------------------------------------------------------------------
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>
--~--