[%#
# IMPORTANT NOTE
# This documentation is generated automatically from source
# templates. Any changes you make here may be lost.
#
# The 'docsrc' documentation source bundle is available for download
# from http://www.template-toolkit.org/docs.html and contains all
# the source templates, XML files, scripts, etc., from which the
# documentation for the Template Toolkit is built.
-%]
[% META book = 'Modules'
page = 'Plugin_XML_RSS'
%]
[% WRAPPER toc;
PROCESS tocitem
title ="SYNOPSIS"
subs = [];
PROCESS tocitem
title ="PRE-REQUISITES"
subs = [];
PROCESS tocitem
title ="DESCRIPTION"
subs = [];
PROCESS tocitem
title ="AUTHORS"
subs = [];
PROCESS tocitem
title ="VERSION"
subs = [];
PROCESS tocitem
title ="COPYRIGHT"
subs = [];
PROCESS tocitem
title ="SEE ALSO"
subs = [];
END
%]
[% WRAPPER section
title="SYNOPSIS"
-%] [% tt_start_tag %] USE news = XML.RSS($filename) [% tt_end_tag %]
[% tt_start_tag %] FOREACH item = news.items [% tt_end_tag %]
[% tt_start_tag %] item.title [% tt_end_tag %]
[% tt_start_tag %] item.link [% tt_end_tag %]
[% tt_start_tag %] END [% tt_end_tag %]
[%- END %]
[% WRAPPER section
title="PRE-REQUISITES"
-%]
This plugin requires that the XML::Parser and XML::RSS modules be
installed. These are available from CPAN:
http://www.cpan.org/modules/by-module/XML
[%- END %]
[% WRAPPER section
title="DESCRIPTION"
-%]
This Template Toolkit plugin provides a simple interface to the
[% tt_start_tag %] USE news = XML.RSS('mysite.rdf') [% tt_end_tag %]
It creates an XML::RSS object, which is then used to parse the RSS
file specified as a parameter in the USE directive. A reference to
the XML::RSS object is then returned.
An RSS (Rich Site Summary) file is typically used to store short news
'headlines' describing different links within a site. This example is
extracted from http://slashdot.org/slashdot.rdf.
<channel>
<title>Slashdot:News for Nerds. Stuff that Matters.</title>
<link>http://slashdot.org</link>
<description>News for Nerds. Stuff that Matters</description>
</channel>
<image>
<title>Slashdot</title>
<url>http://slashdot.org/images/slashdotlg.gif</url>
<link>http://slashdot.org</link>
</image>
<item>
<title>DVD CCA Battle Continues Next Week</title>
<link>http://slashdot.org/article.pl?sid=00/01/12/2051208</link>
</item>
<item>
<title>Matrox to fund DRI Development</title>
<link>http://slashdot.org/article.pl?sid=00/01/13/0718219</link>
</item>
<item>
<title>Mike Shaver Leaving Netscape</title>
<link>http://slashdot.org/article.pl?sid=00/01/13/0711258</link>
</item>
</rdf:RDF>
The attributes of the channel and image elements can be retrieved directly
from the plugin object using the familiar dotted compound notation:
[% tt_start_tag %] news.channel.title [% tt_end_tag %]
[% tt_start_tag %] news.channel.link [% tt_end_tag %]
[% tt_start_tag %] news.channel.etc... [% tt_end_tag %]
[% tt_start_tag %] news.image.title [% tt_end_tag %]
[% tt_start_tag %] news.image.url [% tt_end_tag %]
[% tt_start_tag %] news.image.link [% tt_end_tag %]
[% tt_start_tag %] news.image.etc... [% tt_end_tag %]
The list of news items can be retrieved using the 'items' method:
[% tt_start_tag %] FOREACH item = news.items [% tt_end_tag %]
[% tt_start_tag %] item.title [% tt_end_tag %]
[% tt_start_tag %] item.link [% tt_end_tag %]
[% tt_start_tag %] END [% tt_end_tag %]
[%- END %]
[% WRAPPER section
title="AUTHORS"
-%]
This plugin was written by Andy Wardley <abw@kfs.org>,
inspired by an article in Web Techniques by Randal Schwartz
<merlyn@stonehenge.com>.
The XML::RSS module, which implements all of the functionality that
this plugin delegates to, was written by Jonathan Eisenzopf
<eisen@pobox.com>.
[%- END %]
[% WRAPPER section
title="VERSION"
-%]
2.51, distributed as part of the
Template Toolkit version 2.08, released on 30 July 2002.
[%- END %]
[% WRAPPER section
title="COPYRIGHT"
-%] Copyright (C) 1996-2002 Andy Wardley. All Rights Reserved.
Copyright (C) 1998-2002 Canon Research Centre Europe Ltd.
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
[%- END %]
[% WRAPPER section
title="SEE ALSO"
-%]
[% ttlink('Template::Plugin', 'Template::Plugin') -%], [% ttlink('XML::RSS', 'XML::RSS') -%], [% ttlink('XML::Parser', 'XML::Parser') -%]
[%- END %]
|