RE: [xsl] How to remove "xmlns" attribute when calling a named template

Subject: RE: [xsl] How to remove "xmlns" attribute when calling a named template
From: "Chaudhary, Harsh" <HCHAUDHA@xxxxxxxxx>
Date: Tue, 12 Jun 2007 14:03:51 -0500
Thanks a lot...that helped me out.

Harsh

-----Original Message-----
From: Michael Kay [mailto:mike@xxxxxxxxxxxx]
Sent: Tuesday, June 12, 2007 1:45 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: RE: [xsl] How to remove "xmlns" attribute when calling a named
template


If you put the test element in the same namespace as its parent, then
the
xmlns="" will not appear. It's there because you asked for the test
element
to be in no namespace.

Either write

<test xmlns="http://www.amfam.com/xsd/message/rateprocessingservice/v3";>

in your stylesheet, or move the default namespace declaration up to the
xsl:stylesheet level.

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

> -----Original Message-----
> From: Chaudhary, Harsh [mailto:HCHAUDHA@xxxxxxxxx]
> Sent: 12 June 2007 19:14
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] How to remove "xmlns" attribute when calling a
> named template
>
> Hi all,
>
> I am calling a named template in my XSL file. It works well
> except for that there always appears an xmlns="" attribute in
> the output. Here are my snippets:
>
> XSL file:
>
> <?xml version="1.0" encoding="UTF-8"?>
>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
> version="1.0">
>
>     <xsl:template name="testTemplate">
>
>         <test>This is a test</test>
>
>     </xsl:template>
>     <xsl:template match="/">
>
>
>         <request
>             xmlns="somexmlns"
>             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>
> xsi:schemaLocation="http://www.amfam.com/xsd/message/rateproce
> ssingservi
> ce/v3/somexsd.xsd">
>
>             <xsl:call-template name="testTemplate"/>
> </request> </xsl:template> </xsl:stylesheet>
>
> OUTPUT:
>
>   <?xml version="1.0" encoding="UTF-8" ?>
> - <request
> xmlns="http://www.amfam.com/xsd/message/rateprocessingservice/v3";
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> xsi:schemaLocation="http://www.amfam.com/xsd/message/rateproce
> ssingservi
> ce/v3/RPSRequest.xsd">
>   <test xmlns="">This is a test</test>
>   </request>
>
> I would like to remove the xmlns attribute from the <test> element.
> Would really appreciate some help on this.
>
> Thanks,
> Harsh.

Current Thread