While merlyn's solution works well, I prefer a more XML native approach. The RDF file should be valid XML, in which case you only need apply an XSL Transformation to the file once you have it, to get valid XHTML, WML or whatever out.
This is the basis of XML::RSS::Tools, a module I've been developing. Here is an example of the usage:
#!/usr/bin/perl -w
use strict;
use XML::RSS::Tools;
my $site = shift;
my $xsl = shift;
my $rss = XML::RSS::Tools->new;
$rss->rss_uri($site) or die $rss->as_string('error');
$rss->xsl_file($xsl) or die $rss->as_string('error');
if ($rss->transform) { print $rss->as_string };
There are however problems:
- XML::RSS module has some defects
- Perl before 5.7.x isn't exactly the best for working with Unicode
- RSS feeds often are not valid XML - How do I clean RSS feeds to make them usable?
- My module still has bugs in... :-(
- UPDATE: Versions later than 0.05 have less bugs, and partially get round the defect in XML::RSS and dirty feeds
My humble 2p
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|