<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -81,6 +81,21 @@ module Planet
         end
       end
 
+      # remove redundant prefixes and xmlns declarations
+      source.elements.to_a('//*').reverse.each do |element|
+        next if element.prefix.empty?
+        element.elements.to_a('ancestor::*').each do |parent|
+          if parent.attributes['xmlns']
+            if parent.attributes['xmlns'] == element.namespace
+              element.attributes.delete(&quot;xmlns:#{element.prefix}&quot;)
+              element.prefix = ''
+              element.name = element.name
+            end
+            break
+          end
+        end
+      end
+
       entries.each do |entry|
         # try to find a unique id (TODO: try harder)
         id = entry.elements['id'].text rescue nil</diff>
      <filename>planet/spider.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>41bfc6f06cfe0c6dc83a5ed719f9f6e0ed0205c0</id>
    </parent>
  </parents>
  <author>
    <name>Sam Ruby</name>
    <email>rubys@intertwingly.net</email>
  </author>
  <url>http://github.com/rubys/mars/commit/99bd28895bd4274bbdb8a6a9c713616504abee12</url>
  <id>99bd28895bd4274bbdb8a6a9c713616504abee12</id>
  <committed-date>2008-09-28T17:45:54-07:00</committed-date>
  <authored-date>2008-09-28T17:45:54-07:00</authored-date>
  <message>Eliminate redundant (and problematic) namespace declarations</message>
  <tree>b134fb2462624b224071a3fe43e2237f45d181d5</tree>
  <committer>
    <name>Sam Ruby</name>
    <email>rubys@intertwingly.net</email>
  </committer>
</commit>
