hCalendar (short for HTML iCalendar) is a microformat standard for displaying a semantic (X)HTML representation of iCalendar-format calendar information about an event, on web pages, using HTML classes and rel attributes.
It allows parsing tools (for example other websites, or browser add-ons like Firefox's Operator extension) to extract the details of the event, and display them using some other website, index or search them, or to load them into a calendar or diary program, for instance. Multiple instances can be displayed as timelines.
Consider this semi-fictional example:
The English Wikipedia was launched on 15 January 2001 with a party from 2-4pm at Jimmy Wales' house (more information).
The HTML mark-up might be:
<p> The English Wikipedia was launched on 15 January 2001 with a party from 2-4pm at Jimmy Wales' house (<a href="http://en.wikipedia.org/wiki/History_of_Wikipedia">more information</a>) </p>
<p class="vevent"> The <span class="summary">English Wikipedia was launched</span> on 15 January 2001 with a party from <abbr class="dtstart" title="2001-01-15T14:00:00+06:00">2</abbr>- <abbr class="dtend" title="2001-01-15T16:00:00+06:00">4</abbr>pm at <span class="location">Jimmy Wales' house</span> (<a class="url" href="http://en.wikipedia.org/wiki/History_of_Wikipedia">more information</a>) </p>
Note the use of the
abbr element to contain the machine readable, ISO8601, date-time format for the start and end times.
For whole-day dates, where no time is specified, the end-date must be recorded as exclusive (i.e. the day after the event ends). For example:
<abbr class="dtend" title="2001-02-01">31 January 2001</abbr>
Concerns have been expressed that, where it occurs, the use of the
abbr element (using the so-called abbr-design-pattern) in the above manner causes accessibility problems, not least for users of screen readers and aural browsers. Work is underway to find an alternative method of presenting ISO8601 date-time information. This is particularly problematic for exclusive end-dates (see above example).
The Geo microformat is a part of the hCalendar specification, and is often used to include the coordinates of the event's location within an hCalendar.
For a full list of attributes, see the hCalendar cheat-sheet.
Notable organisations and other websites using hCalendar include:
- Birmingham Town Hall and Symphony Hall
- Google (in Google maps)
- The Opera web browser website
- The Radio Times
- The University of Bath
- The University of Washington
- Yahoo!, on Yahoo! Local
- ↑ Web Standards Project, hAccessibility: Abbreviations in Microformats
- ↑ Microformats Wiki: Assistive Technology
- ↑ Microformats - Birmingham City Council
- ↑ Protalinski, Emil (2011-02-18). "Facebook adds hCalendar and hCard microformats to Events". ZDNet. http://www.zdnet.com/blog/facebook/facebook-adds-hcalendar-and-hcard-microformats-to-events/266. Retrieved 24 March 2011.
- ↑ Official Google Maps API Blog: Microformats in Google Maps
- ↑ David Storey - Microformats on Opera sites
- ↑ 7.0 7.1 7.2 7.3 7.4 hCalendar Examples in the wild · Microformats Wiki
- ↑ Wikipedia:Microformats