RSS timezone problems

Jowi pointed out that my RSS feed would behave strangely with NetNewsWire. All my posts register as being 8 hours into the future. If I posted something at 1pm, it shows up 9-ish on the reader.

I’m using the Atom 2.0 spec and while my time-stamp syntax is correct – the reader doesn’t seem to handle it correctly. This is really irritating because is only evident with my Atom 2.0 RSS feed – the pages in the site itself still display the right local time.

A typical comprehensive time-stamp for Atom 2.0 is:

2006-10-14T13:01:07+08:00 (year-month-dayThour:minute:secondtimeoffset – in this case it’s +8:00)

I tried it in NetNewsWire and via Firefox’s Sage extension and both had the same problem. Normally, the reader(s) should be able to know wether or not to apply an offset. This apparently isn’t the case. Since my syntax is correct, I’m led to believe that there has been some kind of oversight in the implementation of Atom 2.0 across a bunch of readers.

I took a look at a typical LiveJournal feed and noticed that while my reader interprets the dates of my friends’ feeds correctly with the local time. All their feeds are published in GMT 1 Greenwich Mean Time This lead me to believe that while it does support timezone settings to some extent, it may be only limited to “globally recognized” timezones (e.g. GMT) and not manual offsets.

Just to be sure, I tried doing the feed via PHP where it would convert my posts’ timestamps into GMT before publishing to XML – sure enough, the timezone issues were corrected. Which really ticked me off, why can it apply a proper offset based from GMT and the like, but can’t when you simply specify the offset needed. Definitely a bug in readers.

Of course this didn’t mean I could just change my blog’s timezone setting to GMT, as it will probably fix the feed, but break the pages (which were working fine)

I checked other blogs that used manual offset syntax (e.g. +/-HH:SS or +/-HHSS) and was able to find those which work. And apparently, the readers could apply offsets properly when you’re using the RSS 2.0 2 Which has a different date formatting syntax spec.

Long story short, I just had to leave Atom 2.0 for the meantime – and convert my feed into RSS 2.0 format.

Everything should be fine now.

Notes

Notes
1 Greenwich Mean Time
2 Which has a different date formatting syntax

Have a say

This site uses Akismet to reduce spam. Learn how your comment data is processed.