hCard (short for HTML vCard) is a microformat for publishing the contact details of people, companies, organizations, and places, in (X)HTML, Atom, RSS, or arbitrary XML. hCard does this using a 1:1 representation of vCard (RFC 2426) properties and values.
It allows parsing tools (for example other websites, or Firefox's Operator extension) to extract the details, and display them using some other website or mapping tool, index or search them, or to load them into an address book program, for instance.
Consider the HTML:
<div> <div>Joe Doe</div> <div>The Example Company</div> <div>604-555-1234</div> <a href="http://example.com/">http://example.com/</a> </div>
With microformat markup, that becomes:
<div class="vcard"> <div class="fn">Joe Doe</div> <div class="org">The Example Company</div> <div class="tel">604-555-1234</div> <a class="url" href="http://example.com/">http://example.com/</a> </div>
Here the formal name (fn), organization (org), telephone number (tel) and web address (url) have been identified using specific class names; and the whole thing is wrapped in
class="vcard" which indicate that the other classes form an hcard, and are not just coincidentally named. If the hCard is for an organisation or venue, the fn and org classes are used on the same element, as in
<span class="fn org">Wikipedia</span> or
<span class="fn org">Wembley Stadium</span>. Other, optional, hCard classes also exist.
It is now possible for software, for example browser plug-ins, to extract the information, and transfer it to other applications, such as an address book.
Geo + adr
The Geo microformat is a part of the hCard specification, and is often used to include the coordinates of a location within an hCard.
The adr part of hCard can also be used as a stand-alone microformat.
Here are the Wikimedia Foundation's contact details, as a live hCard:
Wikimedia Foundation Inc.200 2nd Ave. South #358St. Petersburg, FL 33701-4313USAPhone: +1-727-231-0101Email: email@example.comFax: +1-727-258-0207
The mark-up (wrapped for clarity) used is:
<div class="vcard"> <div class="fn org">Wikimedia Foundation Inc.</div> <div class="adr"> <div class="street-address">200 2nd Ave. South #358</div> <div> <span class="locality">St. Petersburg</span>, <span class="region">FL</span> <span class="postal-code">33701-4313</span> </div> <div class="country-name">USA</div> </div> <div>Phone: <span class="tel">+1-727-231-0101</span></div> <div>Email: <span class="email">firstname.lastname@example.org</span></div> <div> <span class="tel"><span class="type">Fax</span>: <span class="value">+1-727-258-0207</span></span> </div> </div>
(Ordinarily, one would use
<abbr class="region" title="Florida">FL</abbr>
so that the output included
region="Florida", but the
abbr element is not supported on Wikipedia.)
Note that, in this example, the formal name (fn) and organisation (org) properties are combined on one element, indicating that this is the hCard for an organisation, not a person.
Other commonly used hCard attributes include
bday- a person's birth date
label- for non-granular addresses
note- free text
- Microformats: Empowering Your Markup for Web 2.0 (2007) by John Allsopp p. 125
- hCard spec on microformats.org
- hCard cheat-sheet
- Some have recommended using hCard Microformat for the sake of local search engine optimization. While there's no clear benefit to local search placement from using hCard, this article on hCard and local search outlines reasons why it's a good idea to incorporate.