XML::Atom::Syndication::Feed - class representing an Atom feed
use XML::Atom::Syndication::Feed;
use XML::Atom::Syndication::Entry;
use XML::Atom::Syndication::Text;
use XML::Atom::Syndication::Content;
# create a feed
my $feed = XML::Atom::Syndication::Feed->new;
$feed->title('My Weblog');
my $entry = XML::Atom::Syndication::Entry->new;
my $title = XML::Atom::Syndication::Text->new(Name=>'title');
$title->body('First Post');
$entry->title($title);
my $content = XML::Atom::Syndication::Content->new('Post Body');
$entry->content($content);
$feed->add_entry($entry);
$feed->insert_entry($entry);
print $feed->as_xml;
# list entry titles of index.atom file
my $feed2 = XML::Atom::Syndication::Feed->new('index.atom');
my @entries = $feed->entries;
print $_->title->body."\n" for @entries;
XML::Atom::Syndication::Feed element is the document (i.e., top-level) element
of an Atom Feed Document, acting as a container for metadata and data
associated with the feed. Its element children consist of metadata elements
followed by zero or more entry child elements.
XML::Atom::Syndication::Feed is a subclass of XML::Atom::Syndication::Object
(via XML::Atom::Syndication:::Thing) that it inherits numerous methods from.
You should already be familiar with this base class before proceeding.
- Class->new(%params)
- In addition to the keys recognized by its superclass
(XML::Atom::Syndication::Object) this class recognizes a
"Stream" element. The value of this
element can be a SCALAR or FILEHANDLE (GLOB) to a valid Atom document. The
"Stream" element takes precedence over
the standard "Elem" element.
- inner_atom($atom_markup_string)
- This is a convenience method for quickly setting the child Atom elements
of the feed with a string. The string must also be well-formed XML. This
method will replaces any existing child elements. All elements are
presumed to be in the same Atom namespace as the feed object.
This method is similar to the innerHTML property found in
JavaScript.
- author
- Indicates the author of the feed.
This accessor returns a XML::Atom::Syndication::Person object.
This element can be set using a string and hash reference or by passing
in an object. See Working with Object Setters in
XML::Atom::Syndication::Object for more detail.
- category
- Conveys information about a category associated with an feed.
This accessor returns a XML::Atom::Syndication::Category
object. This element can be set using a string and hash reference or by
passing in an object. See Working with Object Setters in
XML::Atom::Syndication::Object for more detail.
- contributor
- Indicates a person or other entity who contributed to the feed.
This accessor returns a XML::Atom::Syndication::Person object.
This element can be set using a string and hash reference or by passing
in an object. See Working with Object Setters in
XML::Atom::Syndication::Object for more detail.
- generator
- Identifies the agent used to generate a feed for debugging and other
purposes.
This accessor returns a XML::Atom::Syndication::Generator
object. This element can be set using a string and hash reference or by
passing in an object. See Working with Object Setters in
XML::Atom::Syndication::Object for more detail.
- icon
- An IRI reference [RFC3987] which identifies an image which provides iconic
visual identification for a feed.
This accessor returns a string. You can set this attribute by
passing in an optional string.
- id
- A permanent, universally unique identifier for a feed.
This accessor returns a string. You can set this attribute by
passing in an optional string.
- link
- Defines a reference from an entry to a Web resource.
This accessor returns a XML::Atom::Syndication::Link object.
This element can be set using a string and hash reference or by passing
in an object. See Working with Object Setters in
XML::Atom::Syndication::Object for more detail.
- logo
- An IRI reference [RFC3987] which identifies an image which provides visual
identification for a feed.
This accessor returns a string. You can set this attribute by
passing in an optional string.
- published
- A date indicating an instance in time associated with an event early in
the life of the entry.
This accessor returns a string. You can set this attribute by
passing in an optional string. Dates values MUST conform to the
"date-time" production in [RFC3339].
- rights
- Conveys information about rights held in and over an entry or feed.
This accessor returns a XML::Atom::Syndication::Text object.
This element can be set using a string and hash reference or by passing
in an object. See Working with Object Setters in
XML::Atom::Syndication::Object for more detail.
- subtitle
- Conveys a human-readable description or subtitle of a feed.
This accessor returns a XML::Atom::Syndication::Text object.
This element can be set using a string and hash reference or by passing
in an object. See Working with Object Setters in
XML::Atom::Syndication::Object for more detail.
- title
- Conveys a human-readable title for a feed.
This accessor returns a XML::Atom::Syndication::Text object.
This element can be set using a string and hash reference or by passing
in an object. See Working with Object Setters in
XML::Atom::Syndication::Object for more detail.
- updated
- The most recent instance in time when an entry or feed was modified in a
way the publisher considers significant.
This accessor returns a string. You can set this attribute by
passing in an optional string. Dates values MUST conform to the
"date-time" production in [RFC3339].
- $feed->add_entry($entry)
- Appends a XML::Atom::Syndication::Entry object to the feed. The new entry
is placed after all existing entries in the feed
- $feed->insert_entry($entry)
- Inserts a XML::Atom::Syndication::Entry object before all other
existing entries in the feed.
- $feed->entries
- Returns an ordered ARRAY of XML::Atom::Syndication::Entry objects
representing the feed's entries.
- copyright
- This element was renamed "rights" in
version 1.0 of the format.
- created
- This element was removed from version 1.0 of the format.
- info
- This element was removed from version 1.0 of the format.
- modified
- This element was renamed "updated" in
version 1.0 of the format.
- tagline
- This element was renamed "subtitle" in
version 1.0 of the format.
- version
- This attribute was removed from version 1.0 of the format.
Please see the XML::Atom::Syndication manpage for author, copyright, and license
information.
Hey! The above document had some coding errors, which are explained
below:
- Around line 63:
- =begin without a target?
- Around line 317:
- '=end' without a target?