Re: [xsl] Namespace-alias using #default with no default namespace in scope

Subject: Re: [xsl] Namespace-alias using #default with no default namespace in scope
From: David Carlisle <davidc@xxxxxxxxx>
Date: Fri, 12 May 2006 10:57:30 +0100
  Ah! Is a more recent version of the XSLT 2.0 spec available
  somewhere? I'm currently reading,
  which says: "W3C Candidate Recommendation 3 November 2005".

as it says at the top of (all) w3c working drafts the "undated" URI such
as is always the most recent version (and
updated in place) when newer versions are published. The URI for a
particular draft is always of the form

which will always refer to the CR draft even if a later draft is

> I already searched the spec for something like "#none" to be
> specified if one wants to move elements from/to no namespace.
> Using a "#none" would be clearer in my opinion; additionally
> safer, since, if stylesheets are generated by e.g. multiple
> transformation steps, one might not know at the end if a
> transformation step hasn't decided to generate a default
> namespace declaration on a relevant element like xsl:stylesheet;
> thus a "#default", originally intended to refer to no namespace,
> might incorrectly refer to an existing default namespace in the end.

It's only the bindings that are in scope on the xsl:namespace-alias
element that matter to namespace-alias (as far as resolving which
namespace #default refers to).

> Couldn't there be a rule, or at least a suggestion in XSLT 2.0 to use
> either the literal namespace prefix or the target namespace prefix?

xslt2 is a more explict here. the rules imply (and the following note
makes explict) that the stylesheet-prefix is not used in the result.

   These rules achieve the effect that the element generated from the
   literal result element will have an in-scope namespace node that binds
   the result-prefix to the target namespace URI, provided that the
   namespace declaration associating this prefix with this URI is in scope
   for both the xsl:namespace-alias instruction and for the literal result
   element. Conversely, the stylesheet-prefix and the literal namespace URI
   will not normally appear in the result tree. 


This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:

Current Thread