XML::Smart 1.2 is out!

From POD:

This module has an easy way to access/create XML data. It's based on the HASH tree that is made of the XML data, and enable a dynamic access to it with the Perl syntax for Hashe and Array, without needing to care if you have a Hashe or an Array in the tree. In other words, each point in the tree work as a Hash and an Array at the same time!

You also have extra resources, like a search for nodes by attribute, selection of an attribute value in each multiple node, change the returned format, etc...

The module alson handle automatically binary data (encoding/decoding to/from base64), CDATA (like contents with <tags>) and Unicode. It can be used to create XML files, load XML from the Web (just pasting an URL as a file path) and it has an easy way to send XML data through socket, just adding the length of the data in the <?xml?> header.

New Features:

Get it at:
http://search.cpan.org/author/GMPASSOS/XML-Smart-1.2/lib/XML/Smart.pm

Graciliano M. P.
"The creativity is the expression of the liberty".

  • Comment on XML::Smart 1.2 released: Unicode, Entities, Binary data & CDATA

Replies are listed 'Best First'.
Re: XML::Smart 1.2 released: Unicode, Entities, Binary data & CDATA
by samtregar (Abbot) on Jun 03, 2003 at 18:13 UTC
    Cool module. The next time I'm parsing XML I'll definitely give it a try. Have you considered using Class::XPath to offer XPath searching of the element tree? Looking at the USAGE summary, I see this:

        my $addr1 = $XML->{server}('type','eq','suse'){address}[1] ;

    If you used Class::XPath in XML::Smart this could be written:

        my ($addr1) = $XML->match('/server[@type="suse"]/address[1]');

    It may not be shorter, but for people that know XPath it might be easier.

    -sam

Re: XML::Smart 1.2 released: Unicode, Entities, Binary data & CDATA
by Aristotle (Chancellor) on Jun 03, 2003 at 23:21 UTC
    Now all it needs is a decent name. :-)

    Makeshifts last the longest.

      Not the name again! ;-P

      But now you can see that XML::Smart is not only the Object::MultiType style!

      Cheers!

      Graciliano M. P.
      "The creativity is the expression of the liberty".