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 HTML mark-up might be:
hCalendar mark-up may be added using span
HTML elements and the classes vevent
, summary
, dtstart
(start date), dtend
(end date), location
and url
:
Note the use of the abbr
element to contain the machine readable, ISO8601, date-time format for the start and end times.
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.
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: