XML::Atom::Entry(3pm)

πŸ’– NAME πŸ’–

XML::Atom::Entry β€” Atom entry.

Okay bestie, you're on the XML::Atom::Entry(3pm) page from the User Contributed Perl Documentation, and this is where Atom entries get their whole main-character moment. πŸ¦‹βœ¨


🌸 SYNOPSIS 🌸

Here's the quick little group-chat demo, no cap:

use XML::Atom::Entry;
my $entry = XML::Atom::Entry->new;
$entry->title('My Post');
$entry->content('The content of my post.');
my $xml = $entry->as_xml;
my $dc = XML::Atom::Namespace->new(dc => 'http://purl.org/dc/elements/1.1/');
$entry->set($dc, 'subject', 'Food & Drink');

πŸ¦‹ USAGE πŸ¦‹

XML::Atom::Entry->new([ $stream ])

This is the constructor, the birth of your entry object. πŸ’… It creates a new entry object, and if $stream is supplied, it fills it with the data specified by $stream.

It automatically handles autodiscovery if $stream is a URI (see below). πŸ‘€

Returns the new XML::Atom::Entry object. On failure, returns undef.

$stream can be any one of these cuties:

  • Reference to a scalar β€” this is treated as the XML body of the entry.
  • Scalar β€” this is treated as the name of a file containing the entry XML.
  • Filehandle β€” this is treated as an open filehandle from which the entry XML can be read.

$entry->content([ $content ])

Returns the content of the entry. If $content is given, sets the content of the entry. Automatically handles all necessary escaping. ✨

$entry->author([ $author ])

Returns an XML::Atom::Person object representing the author of the entry, or undef if there is no author information present.

If $author is supplied, it should be an XML::Atom::Person object representing the author. For example:

my $author = XML::Atom::Person->new;
$author->name('Foo Bar');
$author->email('foo@bar.com');
$entry->author($author);

$entry->link

If called in scalar context, returns an XML::Atom::Link object corresponding to the first <link> tag found in the entry.

If called in list context, returns a list of XML::Atom::Link objects corresponding to all of the <link> tags found in the entry.

$entry->add_link($link)

Adds the link $link, which must be an XML::Atom::Link object, to the entry as a new <link> tag. For example:

my $link = XML::Atom::Link->new;
$link->type('text/html');
$link->rel('alternate');
$link->href('http://www.example.com/2003/12/post.html');
$entry->add_link($link);

$entry->get($ns, $element)

Given an XML::Atom::Namespace element $ns and an element name $element, retrieves the value for the element in that namespace.

This is useful for retrieving the value of elements not in the main Atom namespace, like categories. For example:

my $dc = XML::Atom::Namespace->new(dc => 'http://purl.org/dc/elements/1.1/');
my $subj = $entry->get($dc, 'subject');

$entry->getlist($ns, $element)

Just like $entry->get, but if there are multiple instances of the element $element in the namespace $ns, returns all of them. get will return only the first.


Please see the XML::Atom manpage for author, copyright, and license information.


That's the whole XML::Atom::Entry(3pm) tea, bestie. Came from perl v5.42.2, dated 2026-02-15 β€” mwah! πŸ’–πŸŽ€βœ¨

πŸ“¦ where this page comes from