Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • by blech (1597) on 2008.03.11 12:11 (#61583) Homepage Journal
    Unfortunately, XML::Feed and XML::Atom don't produce valid Atom feeds [feedvalidator.org].

    There are, however, two RT tickets (#33881 [cpan.org], adding accessors for some required feed types, and #29684 [cpan.org], which stops 'convert' generating empty summaries) which will help you get towards a valid feed.

    I really should write up the other changes I had to make to genenerate a valid Atom feed [feedvalidator.org]. I think convert needs help with applying an updated date to RSS feeds, for example. There are also issues with RSS and Atom taking different values for the same element (Atom author fields are a real name; RSS author fields are email addresses, with dc:creator used for the name), so my (unpublicised) RSS feed doesn't validate at the moment.
    • Ah. I'm been concentrating so hard on getting the HTML page valid[1] that I'd forgotten to look at the feed.

      I'll apply the patches from RT locally and wait for the next release of XML::Feed to fix the problems.

      [1] Often a pointless task on a planet as so much of the markup is out of your control.
      • husk.org's (X)HTML isn't valid [w3.org] mainly because Vox use lots of attributes, and their visual HTML editor can get quite confused about wrapping spans. At some point, I'll either start running the HTML through Tidy before presenting it, or I'll edit the raw HTML before saving it to Vox.

        Similar attributes cause issues with the Atom feed, but they don't prevent validation, merely cause warnings, because Atom does at least recognise the concept of extensibility.