XML::Atom::Filter - easy creation of command line Atom processing tools


Version 0.06


    package Uppercaser;
    use XML::Atom::Filter;
    use base qw( XML::Atom::Filter );
    sub entry {
        my ($class, $e) = @_;
        $e->content(uc $e->content);
    package main;


XML::Atom::Filter supports creation of command line tools to filter and process Atom feeds.



Creates an instance of the identity filter. XML::Atom::Filter can be used as a class or an instance.

$f->filter([ $fh ])

Reads an Atom feed document and applies the filtering process to it. The Atom feed is read from $fh, or STDIN if not given. After the feed is read and parsed, it will be run through the pre, entry (entry by entry), and post methods.


Prepares to process the entries of the feed, an XML::Atom::Feed object. By default, no operation is performed.


Processes an entry of the feed, an XML::Atom::Entry object. Returns the new or modified entry reference, or undef if the entry should be removed from the filtered feed. By default, no change is made.

If your filter modifies the content of the entry, you must also modify the entry's id. The Atom feed specification requires entries' id fields to be universally unique.


Postprocesses the feed, an XML::Atom::Feed object, after the entries are individually processed. By default, the feed's XML is printed to STDOUT.


Mark Paschal, <>


Please report any bugs or feature requests to, or through the web interface at I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.


Copyright 2005-2006 Mark Paschal, All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.