RE: [xsl] Name Spaces in Selects and xsl:element

Subject: RE: [xsl] Name Spaces in Selects and xsl:element
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Thu, 5 May 2005 19:08:43 +0100
> How about in an identity transformation, how do you preserve the
> original name of an element, but add a namespace to it?

You mean original local name, I assume (the name constists of local name
plus namespace).

Use

<xsl:element name="{local-name()}" namespace="new-namespace">

in place of <xsl:copy>

Michael Kay
http://www.saxonica.com/

> 
> 
> On 5/5/05, David Carlisle <davidc@xxxxxxxxx> wrote:
> > 
> > XPath considers the namespace to be an integral part of the name
> > so "field in namespace1" is no more related to "field in namespace2"
> > than it is to "lksfhaskhfashfd in namespace 1".
> > 
> > There are good reasons for this: the documentred reason for 
> introducing
> > the whole namespace complication is so that your "p" element is
> > completely different from my "p" element. So to say you 
> want to match on
> > eny element called p whatever namespace it is in is like 
> saying you want
> > to match on any element whose name begins with W. You can do both of
> > those, but not with the short syntax reserved for more resonable
> > selections.
> > 
> > *[starts-with(name(),'W')]
> > and
> > *[local-name()='field']
> > 
> > Actually sufficient numbers of peopel wantto be bad that 
> XPath2 offers a
> > *:field but you probably are not using XPath2 (unless you are
> > usingsaxon8) XSLT2/XPath2 are still in draft form.
> > 
> > David
> > 
> > 
> ______________________________________________________________
> __________
> > 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:
> > http://www.star.net.uk
> > 
> ______________________________________________________________
> __________

Current Thread