RE: [xsl] Unwanted Prefixes in Output

Subject: RE: [xsl] Unwanted Prefixes in Output
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 21 Sep 2005 12:19:03 +0100
In XSLT 2.0 you could replace

<xsl:element name="atom:{local-name(.)}">

with

<xsl:copy copy-namespaces="no">

When you say "can it get any better", do you mean you want "better" output,
or you want a better way of producing the output you are now getting?

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

> -----Original Message-----
> From: Alan [mailto:alan-xsl-list@xxxxxxxxx] 
> Sent: 21 September 2005 10:32
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Re: [xsl] Unwanted Prefixes in Output
> 
> * Alan <alan-xsl-list@xxxxxxxxx> [2005-09-21 04:30]:
> > * Alan <alan-xsl-list@xxxxxxxxx> [2005-09-21 04:24]:
> > >     Probably common problem with namespace emissions. Tried to cut
> > >     it down to the basics.
> > 
> > > I'd like to omit "xmlns:foo" namespace declaration where 
> it will not
> > > be referenced, like under atom:updated.
> > 
> >     Should note that the saved documents can contain any namespace,
> >     so I can't add xmlns:foo declaration to my stylesheet, but I'd
> >     like to have my namespaces namespace normal.
> > 
> >     http://www.flightlab.com/~joe/sgml/sanity.txt
> > 
> >     Cheers.
> 
>     I'm talking to myself now. :^)
> 
>     I found that this removes unnecessary namespace declarations...
> 
>       <xsl:template match="atom:*" mode="copy-entry">
>         <xsl:element name="atom:{local-name(.)}">
>           <xsl:copy-of select="@*"/>
>           <xsl:apply-templates select="node()" mode="copy-entry"/>
>         </xsl:element>
>       </xsl:template>
> 
>     And the "xmlns:foo" only appears on "foo" namespace elements.
> 
>     This is pretty close to "namespace normal".
> 
>     Can it get any better?
> 
> --
> Alan Gutierrez - alan@xxxxxxxxx
>    - http://engrm.com/blogometer/index.html
>    - http://engrm.com/blogometer/rss.2.0.xml

Current Thread