I've released XML::Atom, a Perl implementation of all things Atom. The goal for XML::Atom is to provide an implementation of the syndication feed format, the API, and the archiving format planned for Atom. Currently, it provides support for the feed format, and an implementation of a client for the API.
The API implementation in XML::Atom implements (most of) the API described in Joe Gregorio's Atom API Revision 7, using the WSS authentication mechanism described here. By default, the implementation uses the REST format of the API (and the X-WSSE header), but it also supports the SOAP header mapping.
This is actually version 0.02. 0.01 was released on September 8, 2003, and used the almost-Digest authentication mechanism described here. This has been replaced in 0.02 with the WSS mechanism. 0.02 also adds preliminary namespace support.
Here's some sample usage:
use XML::Atom::API; use XML::Atom::Entry; my $api = XML::Atom::API->new; $api->introspect('http://www.my-weblog.com/atom'); $api->username('Melody'); $api->password('Nelson'); my $entry = XML::Atom::Entry->new; $entry->title('New Post'); $entry->content('Content of my post.'); my $url = $api->createEntry($entry);
Requirements and more information can be found in the distribution.