irb(main):001:0> require 'rexml/document' => true irb(main):002:0> include REXML => Object irb(main):003:0> d=Document.new "" => ... irb(main):004:0> d.write => [#, ] irb(main):005:0> d.elements.add "bar" RuntimeError: attempted adding second root element to document from /usr/lib/ruby/1.8/rexml/document.rb:81:in `<<' from /usr/lib/ruby/1.8/rexml/element.rb:893:in `add' from /usr/lib/ruby/1.8/rexml/child.rb:21:in `initialize' from /usr/lib/ruby/1.8/rexml/parent.rb:13:in `initialize' from /usr/lib/ruby/1.8/rexml/element.rb:53:in `initialize' from /usr/lib/ruby/1.8/rexml/element.rb:891:in `new' from /usr/lib/ruby/1.8/rexml/element.rb:891:in `add' from (irb):5 irb(main):006:0> d.write the latter exception is the problem