From Microformats Wiki
vcard-suggestions /
Jump to navigation Jump to search

vCard suggestions

As a result of experience using hCard to markup people, organizations, and contact information in general on real world websites, we have discovered a few aspects of RFC2426 vCard that could be improved. Thus we are documenting suggestions for improving vCard here as we find them, organized by RFC2426 section number for improvements to current properties, and a "new" section for new properties.

Tantek Çelik
Andy Mabbett
This page may be referenced as

Suggestions for Existing Properties

Suggestions for improvement could include new features and other such more major changes to the specification, organized under headings that reflect RFC 2426 vCard section numbers and heading. For documentation of errors, corrections, errata for vCard, please see vCard errata.

3.3.1 TEL Type Definition

  • The "type" for "TEL" lacks a "textphone" option (for the devices used by, e.g., people who are deaf or have speech difficulties. Example: Birmingham City Council (303 1119). It may be good to consider adding a "textphone" value to the "type" for "TEL".
    • +0 Tantek: I think a rethinking of the taxonomy of TEL types is merited, but I am uncertain whether it is worth growing the existing limited taxonomy or instead permitting user defined TEL types and thus allowing for natural evolution of a folksonomy of TEL types.
    • +1 Andy Mabbett: There are a limited number of types. Note also the cell vs. mobile issue.
  • The "type" for "TEL" lacks a "freephone" option. It may be good to consider adding a "freephone" value to the "type" for "TEL". Usually freephone numbers are not accessible from outside the country so it could help parsers with something?
  • The "type" for "TEL" lacks an "SMS short code" option. (Raised in e-mail, 2008-01-08 by Michael Smethurst)
    • Seems like 'sms' TEL TYPE is a viable implementation option --Guillaume 12:17, 8 Jan 2008 (PST).
  • FYI. Some existing Personal Information Manager software practices:
    • Mac OS X address book allows custom labels for TEL but not custom TEL TYPE per se, although for the user a custom TEL label just looks like a TEL TYPE
    • Microsoft Outlook does not allow custom TEL TYPE values. Also, Microsoft Outlook has a "Company" telephone type, but unfortunately it isn't mapped to anything in vCard i.e. if you export a contact with a company tel, it is lost.
    • Windows Mobile 6 displays SMS as a service that is only available if the telephone type is 'mobile'.
    • Thunderbird 2 (Mac) does not allow custom TEL TYPE values.

Note: it might be a good idea to look at the proposed registry for "tel:" URI parameters; especially the "phone-context" URI parameter, since it tries to solve a similar problem. (per e-mail, 2008-01-08).

3.3.2 EMAIL Type Definition

  • The "type" for "EMAIL" lacks distinction for various types of email, e.g. work or home.
  • The "type" for "EMAIL" lacks distinction for give an alternative to the e-mail like a contact form.

3.3.3 Suggestion for Types Definition

We can't have a generic type name cause we have to localize in French. so, for us, hCard work phone number is : <div class="tel"> <span class="type">Travail</span> : <span class="value">0321596224</span> </div>

How will a bot recognize that type ? We cannot specify every types in every languages in the specification. That's why i think something like this would be better : Travail : <span class="telwork">0321596224</span>

Please, use class and id attributes ONLY for micro formats specifications ! XML #cdata and #data are localized ! Thanks !

Suggestions for New Properties


Gender evidence

See gender examples.

  • Many pages publish implicit gender information, not easily machine parsable - using names (Andrew, Andrea), titles (Mr, Mrs, Miss), relationships (husband, brother), pronouns (he, she), etc. Please add such pages with specific URLs and quotes of the explicit information, and the implied genders to the gender examples page.

See also Genealogy Brainstorming.


Date of Death evidence

Instant Messaging

Subject differentiator

  • The use of "fn" and "fn org" differentiate between hCards for people and for other entities, but we perhaps need some further differentiator, between, say, organisations and venues (including buildings, governmental divisions, waypoints, etc.) at a level of granularity to be determined. Andy Mabbett 14:30, 11 Jul 2007 (PDT)


Additional "geo" sub-property; aka "altitude"


Additional "adr" sub-property; for people on, say, ships, oil rigs, and even space vehicles (e.g. the ISS)


Additional "adr" sub-property; for people off-planet (e.g. proposed moon base, Mars expedition)


Additional "geo" sub-property; for coordinates using non-WGS84 schema (terrestrial and for other bodies)

Global Location Number

Global Location Number (GLN) - generally used in electronic commerce transactions [1]. Andy Mabbett 06:43, 31 Aug 2007 (PDT)


For people, whose given-name is not stated (e.g. "A. N. Other"); to allow mark-up like:

   <span class="vcard">
     <span class="fn n">
       <span class="initials">A. N.</span>
       <span class="family-name">Other</span>

Alternative dates

For historic figures, where no birth and/ or death dates are known a "flourished" date, or "flourished from"+"flourished to" pair, would be useful.

In genealogy, some people have no recorded birth date, but their "baptised" date is known.


adr should have an optional continent child-property.

Suggestions for handling encodings

The vCard standard specifies that US-ASCII is assumed to be the encoding in the absence of a MIME content type header or a CHARSET parameter that indicates otherwise. This was an unfortunate choice. vCard .vcf files stored on a local filesystem do not contain a MIME header and the only way to reliably use an encoding other than ASCII is to tag each field with the "CHARSET=" label. This makes the vCard stream more complicated than necessary. This could be simplified by a revision of the standard that specifies UTF-8 as the default encoding. This could work safely with existing vCard .vcf files, which do not contain a MIME content header. The first vCard VERSION field would be the same encoded as either ASCII or UTF-8, so readers could easily determine which encoding to default to.

Furthermore, those creating vCard readers should be encouraged to support vCard .vcf files that begin with a UTF-8 BOM sequence. If the first three bytes of the file are 0xEF 0xBB 0xBF, the text file is UTF-8 encoded, and the vCard reader should assume UTF-8 is the default. Unfortunately many readers today fail to recognize the UTF-8 BOM and view the file as a corrupt vCard.

Suggestions made elsewhere


vCard Extensions to WebDAV (CardDAV)

defines extensions to the Web Distributed Authoring and Versioning (WebDAV) protocol to specify a standard way of accessing, managing, and sharing contact information based on the vCard format. This document defines the "addressbook-access" feature of CardDAV.

XEP-0154: User Profile

XEP-0154: User Profile specifies how to represent and manage profile data about IM users and other Extensible Messaging and Presence Protocol (XMPP) entities using the XMPP Data Forms extension. It has a far greater number of properties than vCard (possibly more than vCard will ever need), and reinvents and re-names some of the latter's properties, but may have some attributes worth considering for vCard.


On 2006-11-24, Paul Hoffman of the Internet Mail Consortium, responsible for the development and promotion the vCard standard, wrote in response to an e-mail from Andy Mabbett informing him of this web page:

There has been almost no interest in revising the vCard standard. This is due to lack of momentum, not the lack of good suggestions.

However, see events/2007-09-18-calconnect-vcard-workshop for an event with vCard modification on the agenda.

See Also