title: tag0 namespace added for elements in default namespace
body: <p>I'm trying to parse and modify a Maven's pom.xml using Groovy's XmlSlurper. My pom.xml declares the namespace xsi.</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8" standalone="no"?&gt;
  &lt;project xmlns="http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
       http://maven.apache.org/maven-v4_0_0.xsd"&gt;
  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
  &lt;groupId&gt;a-group-id&lt;/groupId&gt;
  &lt;artifactId&gt;an-artifact-id&lt;/artifactId&gt;
  </code></pre>
  
  <p>My Groovy source is as follows:</p>
  
  <pre><code>import groovy.xml.XmlUtil
  def pom = new XmlSlurper().parse('pom.xml')
     .declareNamespace('': 'http://maven.apache.org/POM/4.0.0',
        xsi: 'http://www.w3.org/2001/XMLSchema-instance')
  //manipulate the pom
  println XmlUtil.serialize(pom)
  </code></pre>
  
  <p>As you notice, I've declared the first namespace as empty. However in the output tag0 is added everywhere.</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;tag0:project xmlns:tag0="http://maven.apache.org/POM/4.0.0"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
        http://maven.apache.org/maven-v4_0_0.xsd"&gt;
  &lt;tag0:modelVersion&gt;4.0.0&lt;/tag0:modelVersion&gt;
  &lt;tag0:groupId&gt;a-group-id&lt;/tag0:groupId&gt;
  &lt;tag0:artifactId&gt;an-artifact-id&lt;/tag0:artifactId&gt;
  </code></pre>
  
  <p>How to avoid that?</p>
  
  <p>For the moment my workaround is removing the tags manually:</p>
  
  <pre><code>println XmlUtil.serialize(pom).replaceAll('tag0:', '').replaceAll(':tag0', '')
  </code></pre>