Hi,

In <83173408.0405060527.109872e6 / posting.google.com>
  "Re: REXML bug?" on Thu, 6 May 2004 22:29:09 +0900,
  ser / germane-software.com (Sean Russell) wrote:
> Yes, this was a bug in Doctype; it should be fixed in the current
> release of REXML, as well as in CVS; in fact, it has been fixed for a
> couple of months -- I believe ti got fixed in version 3.0.2, so I'm

It seems to be not fixed. REXML::Docutype#initialize doesn't
call `super' when `first' is REXML::Source.

I attach a patch for the bug, but I don't like this
solution. :(  I hope SER supply more flexible solution.

--
kou

Index: lib/rexml/doctype.rb =================================================================== RCS file: /src/ruby/lib/rexml/doctype.rb,v retrieving revision 1.5 diff -u -p -b -r1.5 doctype.rb --- lib/rexml/doctype.rb 28 Mar 2004 22:36:15 -0000 1.5 +++ lib/rexml/doctype.rb 7 May 2004 13:23:53 -0000 @@ -54,6 +54,15 @@ module REXML @external_id = first[1] @long_name = first[2] @uri = first[3] + elsif first.kind_of? Source + super() + parser = Parsers::BaseParser.new( first ) + event = parser.pull + if event[0] == :start_doctype + @name, @external_id, @long_name, @uri, = event[1..-1] + end + else + super() end end