<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">
<rss version="0.91"><channel><title>REXML Change Log</title><link>http://www.germane-software.com/software/rexml</link><description>
      REXML is an XML processor for the language Ruby. REXML is conformant
      (passes 100% of the Oasis non-validating tests), and includes full XPath
      support. It is reasonably fast, and is implemented in pure Ruby. Best of
      all, it has a clean, intuitive API.

      This software is distribute under the Ruby
      license.
    </description><language>en-us</language></channel><image><title>REXML</title><url/><link>http://www.germane-software.com/software/rexml</link></image><item><title>2.3.0</title><description>Internal entities are now
				handledPlease note that entity handling complicates text
					manipulation.  See the note in the tutorial.  Speed has 
				been further improved for most operations, but especially for stream
				parsing, writing, and large document parsing.
			</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.2.1</title><description>Fixed a bug in benchmark/bench.rb that kept it
				from running.  Added stand_alone?() to XMLDecl as an alias for the
				standalone accessor.  Improvements to the streaming API; in
				particular, pulling data from non-closing streams doesn't require
				passing a block size of 1 to the IOSource class any longer; in
				fact, the block size is ignored.  Added a user-supplied patch
				to fix the fact that not all of the DTD events were getting
				passed to the listener.  Improved entity parsing.  Better test suite;
				you can now pass --help to the main test suite to get a
				list of the new options, which include listing the available suites
				and listing methods in the suites, as well as instructions on how to
				run only certain suites or methods in suites.
			</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.1.3</title><description>Fixed broken links in documentation. Added new
      documentation layout; the old format -- everything on one page -- was
      getting a bit overwhelming. Added RSS for changelog. Bugfix for element
      cloning namespace loss. The Streaming API wasn't normalizing input
      strings; this has been fixed. Added support for deep cloning via
			Parent.deep_clone().  Fixed some streaming issues for SOAP4RUBY. In
			particular, text normalization is now also done for the Streaming API.
			'\r' handling is now correct, as per the XML spec, and entities are 
			handled better.  &amp;#13; is now converted to '\r' internally, and then
			translated back to '\r' on output.  All other numeric entities
			(&amp;#nnn; and &amp;#xnnn;) are now converted to unicode on input,
			but are only converted back to entities if they don't fit in the 
			requested encoding.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.1.2</title><description>Fixed a bug with reading ISO-8859-1 encoded
      documents, and Document now includes Output, which it always should
      have.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.1.1</title><description>Forgot to add output.rb to the repository.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.1.0</title><description>IO optimizations, and support for ISO-8859-1
      output. Fixed up pretty-printing a little. Now, if pretty-printing is
      turned on, text nodes are stripped before printing. This, obviously, can
      mess up what you'd expect from :respect_whitespace, but pretty
      printing, by definition, must change your formatting. Updated the
      tutorial a bit. Please see the section on adding text for a warning, if
      you're using a non-UTF-8 compatable encoding. Changed behavior of
      Element.attributes.each. It now itterates over key, value
      pairs, rather than attributes. This was a feature request. Expanded the
      unit tests and subsequently fixed a number of obscure bugs. I'm
      distributing the API documentation seperately from the main distribution
      now, because the API docs constitute nearly 50% of the total
      distribution size. FIxed a bug in namespace handling in attributes.
      Completely updated the API documentation for Element, Element.Elements,
      and Element.Attributes; the rest of the classes to follow. I'm
      seriously contemplating removing the examples from the API
      documentation, because most of them are practically duplicates of the
      unit tests in test/.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.0.4</title><description>2.0 munged the encoding value in output. This is
      fixed. I left debugging turned on in XPath in 2.0.2 :-/</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.0.2</title><description>Added grouping '(...)' and preceding:: and
      following:: axis. This means that, aside from functional bugs, XPath
      should have no missing functionality bugs. Keep in mind that not all
      Functions are tested, though.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.0.1</title><description>Added some unit tests, and fixed a namespace XPath
      bug WRT attribute default NS's. Unicode support was screwing up the
      upper end of ASCII support; chars between 0xF0 and 0xFD were getting
      munged. This has been fixed, at the cost of a small amount of speed.
      Optimized the descendant axes of XPath; it should be significantly
      faster for '//' and other descendant operations. Added several
      user contributed unit tests. Re-added QuickPath, the old,
      non-fully-XPath compliant, yet much faster, XPath processor. Everything
      is being converted to UTF8 now, and the XML declaration reflects this.
      See the bugs for more information.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>2.0</title><description>True XPath support. Finally. XPath is fully
      implemented now, and passes all of the tests I can throw at it,
      including complex XPaths such as '*[* and not(*/node()) and
      not(*[not(@style)]) and not(*/@style != */@style)]'. It may
      be slower than it was, but it should be reasonably efficient for what it
      is doing. The XPath spec doesn't help, and thwarts most attempts at
      optimization. Please see the notes on XPath for more information. Oh,
      and some minor bugs were fixed in the XML parser.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>1.2.8</title><description>Fixed a bug pointed out by Peter Verhage where the
      element names weren't being properly parsed if a namespace was
      involved.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>1.2.7</title><description>Fixing problems with the 1.2.6 distribution :-/.
      Added an "applications using REXML" section in this document --
      send me those links! Added rdoc documentation. I'm not using API2XML
      anymore. I think API2XML was the right model, generating XML rather than
      HTML (which is what rdoc does), but rdoc does a much better job at
      parsing Ruby source, and I really didn't want to go there in the
      first place. Also, I had forgotten to generate the Tutorial HTML.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>1.2.6</title><description>Documentation fix (TR). Fixed a bug in Element.add
      (and, therefore, Element.add_element). Added Robert Feldt's terse
      xml constructor to contrib/ (check it out; it's handy). Tobias
      discovered a terrible bug, whereby ENTITY wasn't printing out a
      final '&gt;'. After a long discussion with a couple of users,
      and some review of the XML spec, I decided to reverse the default
      handling of whitespace and pretty printing. REXML now no longer defaults
      to pretty printing, and preserves whitespace unless otherwise directed.
      Added provisional namespace support to XPath. XPath is going to require
      another rewrite.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>1.2.5</title><description>Bug fixes: doctypes that had spaces between the
      closing ] and &gt; generated errors. There was a small bug that caused
      too many newlines to be generated in some output. Eelis van der Weegen
      (what a great name!) pointed out one of the numerous API errors. Julian
      requested that add_attributes take both Hash (original) and array of
      arrays (as produced by StreamListener). I killed the mailing list,
      accidentally, and fixed it again. Fixed a bug in next_sibling, caused by
      a combination of mixing overriding &lt;=&gt;() and using
      Array.index().</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>1.2.4</title><description>Changes since 1.1b: 100% OASIS valid tests passed.
      UTF-8/16 support. Many bug fixes. to_a() added to Parent and
      Element.elements. Updated tutorial. Added variable IOSource buffer size,
      for stream parsing. delete() now fails silently rather than throwing an
      exception if it can't find the elemnt to delete. Added a patch to
      support REXMLBuilder. Reorganized file layout in distribution; added a
      repackaging program; added the logo.</description><link>http://www.germane-software.com/software/rexml</link></item><item><title>1.1b</title><description>Changes since 1.1a: Stream parsing added. Bug fixes
      in entity parsing. New XPath implementation, fixing many bugs and making
      feature complete. Completed whitespace handling, adding much
      functionality and fixing several bugs. Added convenience methods for
      inserting elememnts. Improved error reporting. Fixed attribute content
      to correctly handle quotes and apostrophes. Added mechanisms for
      handling raw text. Cleaned up utility programs (profile.rb,
      comparison.rb, etc.). Improved speed a little. Brought REXML up to 98.9%
      OASIS valid source compliance.</description><link>http://www.germane-software.com/software/rexml</link></item></rss>