Data Portability for lists of calendars

I was surprised to discover that there was no real standard way for sharing lists of iCal subscriptions— there’s nothing in the iCal ecosystem that fills to roll of OPML in the RSS world. Even elmcity simply uses delicious as the canonical representation.

Well, my first instinct in these situations is to just steal from RSS. OPML has it’s detractors, but overall it’s been working pretty well for 10 years. We just need two extensions to make it work for Eventgrinder:

  • an iCal equivalent of OPML’s xmlUrl  (icsUrl)
  • A way to signal whether a feed is trusted or not (that is, whether events are published automatically, or queued for review)

The second item is pretty specific to my use case. Then again, it may have value outside of calendaring.

Here’s what OPML + my extensions looks like:

Screen shot 2010-12-10 at 9.57.13 PM

The namespace URL is , and the two extensions are icsUrl and trusted, both attributes of outline.

This is now implemented across all of our sites, look for the OPML icon on source pages.

Leave a Reply