Revision history for XML-MyXML 0.096 Mar 6th, 2007 Added ability for the following functions/methods to save their XML output to a file: &tidy_xml, &object_to_xml, &simple_to_xml, ->to_xml, ->to_tidy_xml Added the 'soft' flag to &tidy_xml 0.0951 Mar 6th, 2007 Corrected bug where ->value would double-decode 0.095 Mar 6th, 2007 Added support for parsing the simplest and non-recursive form of markup Added optional 'tidy' flag to &object_to_xml, &simple_to_xml and ->to_xml Corrected bug where hex numerical entities couldn't contain capital letters ('A'..'F') 0.094 Mar 6th, 2007 Added a space before the '?>' mark in the XML declaration introduced in 0.093 Corrected small bits in documentation 0.093 Mar 5th, 2007 Parser will now ignore all special markup instead of dying on it (except for CDATA sections which it can handle since v0.061) XML documents produced with this module may now have an XML declaration in the beginning () Almost all functions and methods accept flags now Wrote features & limitations in the documentation Wrote a 'function flags' section in the documentation 0.092 Mar 5th, 2007 check_xml, which used to be able to check XML strings only, can now check XML files also Added an optional 'soft' mode to xml_to_simple and xml_to_object functions, which returns undef instead of dying in case of error Added the :all export tag - imports all exportable functions 0.091 Mar 4th, 2007 xml_to_simple and xml_to_object can now accept a filename for an argument Minor alterations in the documentation 0.09 Mar 3rd, 2007 simple_to_xml($simple_ref) has been changed to allow the argument to be a hashref, an arrayref or a mixed structure 0.083 Mar 3rd, 2007 Changed the way that flags are set. Instead of a string such as 'strip internal', it's with a hashref { strip => 1, internal => 1 }. Module stops execution and informs about the change, if programmer tries to set flags with the old way. 0.082 Mar 3rd, 2007 Added optional 'strip' mode for the &xml_to_simple function and the $obj->simplify method, that strips surrounding whitespace from texts Added optional 'internal' mode for the $obj->simplify method, that return a hashref only of the contents of the top element 0.081 Mar 3rd, 2007 Added an 'internal' mode for the &xml_to_simple function Added a 'strip' mode for the ->value method that strips surrounding whitespace 0.08 Mar 1st, 2007 XML-decodes the attribute values when parsing documents, and XML-encodes them when creating XML documents Added the ->tag method to XML objects, which retrieves the tag name of the top element Minor changes in the documentation 0.076 Feb 27th, 2007 $element->value returns empty string ('') if element is empty, instead of null 0.075 Feb 25th, 2007 Added the ->attr('attr_name') method to XML objects, which retrieves the value of an attribute 0.07 Feb 25th, 2007 Added a check_xml function that checks if the provided XML document is valid enough for use with this module 0.066 Feb 25th, 2007 Allows whitespace and comments to exist before the root element 0.065 Feb 25th, 2007 Handles attributes in tags better (attrs are allowed to contain spaces) 0.0641 Feb 25th, 2007 Now handles XML comments when parsing XML documents 0.061 Nov 27th, 2006 Added parsing of CDATA sections Added $object->to_xml and $object->to_tidy_xml methods 0.051 Nov 26th, 2006 Understands numerical (dec and hex) entities in XML (eg € and ¡) 0.05 Nov 26th, 2006 Added $obj->simplify method 0.04 Nov 25th, 2006 Added xml_to_simple function 0.03 May 12th, 2006 Applied some encoding/decoding commands in several functions 0.01 May 3rd, 2006 First version, released on an unsuspecting world.