Lisa from FoWA notified me that she’s since incorporated my hcalendar changes into the official schedule. Nice!
I wanted to draw attention to the effort put into the schedule for the upcoming Future of Web Apps (which we’re in London for). One the surface, it’s a great looking schedule — under the hood, you’ll find microformats marking up the times of the sessions. A nice effort, to be sure, except that their effort lacks a certain… accuracy.
I point this out for two reasons: one, I’d love to see the schedule fixed so that you can download it into your calendar. Second, it serves as a good example of why the Microformats community has been wise to minimize the use of both hidden microformatted content as well as invisible meta data as much as possible.
To illustrate the problem, let me point out two important elements of the hcalendar microformat. These elements specify when an event begins and ends respectively. From the icalendar standard, these values are indicated by the DTSTART and DTEND attributes. For example, this code would indicate that an event starts on Feb 20th at 6pm in London:
<abbr class="dtstart" title="20070220T1800Z">6pm</abbr>
However, when viewed in a browser, it looks like this: 6pm, and taken out of context, that 6pm could happen on any day of any year in any timezone. By marking up that time with an ISO datetime in the context of an
hcalendar object, we know exactly what time and in what timezone we’re talking about.
So, looking at the FoWA schedule, you don’t know it, but even though it looks like it’s offering all the right times and correct information in the human-facing data, delving into the microformatted data will reveal a very different agenda, specifically one that takes place in 2006 and goes backwards in time, with some events ending on the day before they started.
Again, they’re certainly to be commended for their efforts to microformat their schedule to make it easy to import and subscribe to, but they seem to have missed an opportunity in actually providing a computer-readable schedule.
Here are some things that need to be fixed on the schedule:
- All times need to be contained in <abbr> tags, not <span>s. This is a common error in marking up hcalendar, so watch for this one first.
- Second, the dates specified in the title attributes need to be 100% accurate; it’s better to have no data than incorrect data.
- Third, all start times should begin before the end times, unless you’re marking up the schedule for a time machine.
- I should point out that it would be useful if all people and organization were marked up as hcards, but that’s a separate matter.
- Lastly, it always helps to validate your basic XHTML and run your microformatted content through consuming applications like Operator, X2V or Tails to see if the existing tools can make sense of your data. If not, it won’t work for anyone else either.
I’ve gone head and corrected the schedule. I’d love the for the FoWA team to take these basic changes and incorporate them into their schedule, but I know they’re busy, so in the meantime, feel free download the schedule in ICS format using Brian Suda‘s X2V transform script.