[xsl] removing namespaces

Subject: [xsl] removing namespaces
From: Garvin Riensche <g.riensche@xxxxxxx>
Date: Tue, 01 Apr 2008 20:39:47 +0200
Hello,

One more namespaces question:

I have this template:

<xsl:template name="addMethod">
  <xsl:element name="method" namespace="http://new.element";>
    <xsl:attribute name="name" select="$method_name"/>
    <xsl:attribute name="id" select="$method_id"/>
    <modifiers>
      <modifier name="{$modifier}"/>
    </modifiers>
    <type name="{$type}"/>
    <block>
      <expr>
        <return>
	  <expr>
	    <identifier name="{$variable_name}" idref="{$variable_id}"/>
	  </expr>
	</return>
      </expr>
    </block>
  </xsl:element>
</xsl:template>

which produces the following output:

<method xmlns="http://new.element"; name="get_j" id="MB1;get_j()">
  <modifiers xmlns:srcml-new="http://new.element"; xmlns="">
    <modifier name="public"/>
  </modifiers>
  <type xmlns:srcml="http://srcml.de";
        xmlns:srcml-new="http://new.element"; xmlns=""
        name="int"/>
  <block xmlns:srcml="http://srcml.de"; 	
        xmlns:srcml-new="http://new.element"; xmlns="">
    <expr>
       <return>
          <expr>
             <identifier name="j" idref="VCB1;#Cint;j;"/>
          </expr>
       </return>
    </expr>
  </block>
</method>

How do I hide the namespaces of the elements? Is the only possibility to add several xsl:exclude-result-prefixes="..." to the "modifiers", "type" and "block" elements? Or is there another solution?

regards,
Garvin

Current Thread