REXML is an XML 1.0 compliant, reasonably fast, non-validating XML parser. It has an API that is designed to be intuitive, straightforward. and terse. REXML includes a tree model parser, a SAX2 streaming parser, and a pull parser. It also includes a full XPath implementation. All of REXML's parsers pass 100% of the Oasis XML non-validating tests. As of Ruby 1.8.0, REXML is distributed with Ruby.
Release Notes: Bugfixes and a couple of feature requests were made.
Release Notes: The many changes in this release include consolidation of the parsing code and a rewrite of the XPath evaluator. Since Ruby 1.8, REXML is distributed with Ruby.
Release Notes: This release adds an entirely new architecture, making it easier to extend, bugfix, and enhance the core library.
Release Notes: Empty tags now print with extra whitespace, oarsing speed was improved, Shift_JIS encoding was added, and the unit tests now use the new test/unit API. SAX2Parser now processes XML declarations and instructions, and the REXML pull parser and SAX2 parser now both report :processing_instruction instead of :instruction. There was also fixes for attribute deletion, ignored elements, and whitespace parsing. Corrections were made to the tutorial, and a non-conformance bug in XPath involving whitespace in predicates was fixed.
Release Notes: Fixes were made for bugs in the encoding code, entity replacement, the new "ignore_whitespace_nodes", XPath's substring-before() and substring-after(), and the rare and mysterious "hangs". A change was made to stream handling, which improves performance. The pattern for matching elements was improved so that more malformed XML is caught. Performance enhancements were made.