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[1] 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.

Example

edit

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.wiki.x.io/wiki/History_of_Wikipedia">more information</a>)
</p>

hCalendar mark-up may be added using span HTML elements and the classes vevent, summary, dtstart (start date), dtend (end date), location and url:


<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">2pm</abbr>-
    <abbr class="dtend" title="2001-01-15T16:00:00+06:00">4pm</abbr> at 
    <span class="location">Jimmy Wales' house</span> 
    (<a class="url" href="http://en.wiki.x.io/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.

Accessibility concerns

edit

Concerns have been expressed[2] 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.[3] The newer h-event microformat therefore uses the HTML5 element time instead:

<time class="dt-start" datetime="2013-06-30 12:00">30<sup>th</sup> June 2013, 12:00</time>

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.

Attributes

edit

For a full list of attributes, see the hCalendar cheat-sheet.

Users

edit

Notable organisations and other websites using hCalendar include:

References

edit
  1. ^ Microformats.org: Browser Support for Microformats
  2. ^ Web Standards Project, hAccessibility: Abbreviations in Microformats
  3. ^ Microformats Wiki: Assistive Technology
  4. ^ Microformats – Birmingham City Council
  5. ^ Protalinski, Emil (2011-02-18). "Facebook adds hCalendar and hCard microformats to Events". ZDNet. Archived from the original on February 19, 2011. Retrieved 24 March 2011.
  6. ^ Official Google Maps API Blog: Microformats in Google Maps
  7. ^ Microformats.org: Google adds support for hCalendar and hRecipe Rich Snippets
  8. ^ Google Webmaster Tools: Rich snippets - Events
  9. ^ David Storey – Microformats on Opera sites
  10. ^ a b c d e hCalendar Examples in the wild · Microformats Wiki
  11. ^ Wikipedia:Microformats
edit