hcard-user-interface

(Difference between revisions)

Jump to: navigation, search
(address book integration: note "Save Contact" as an alternative verb/action label, could work well as a context-menu item)
Current revision (23:35, 30 September 2011) (view source)
(Additional user interface: context menu ideas, skype integration, anniversary too)
 
Line 24: Line 24:
== Additional user interface ==
== Additional user interface ==
Some examples of additional user interface for hCard. Note that most of these actions should be applicable to all instances of the microformat on the page at once (e.g. export all contacts), of for a selection of instances (e.g. export selected contacts), or one just one specific instance (e.g. export contact XYZ).
Some examples of additional user interface for hCard. Note that most of these actions should be applicable to all instances of the microformat on the page at once (e.g. export all contacts), of for a selection of instances (e.g. export selected contacts), or one just one specific instance (e.g. export contact XYZ).
 +
 +
'''context menu access''': right-clicking (control-clicking) on a specific contact could provide additional menu items (based on the below) that act on that specific contact.
=== address book integration ===
=== address book integration ===
Line 35: Line 37:
=== telephony integration ===
=== telephony integration ===
* If a <code>tel</code> (phone number) having type <code>home</code>, <code>work</code> or <code>cell</code> is present, provide options to dial it (NB applies to one number at a time only; except for possible conference-call uses) directly, or via
* If a <code>tel</code> (phone number) having type <code>home</code>, <code>work</code> or <code>cell</code> is present, provide options to dial it (NB applies to one number at a time only; except for possible conference-call uses) directly, or via
 +
** "Call Contact: {fn} {tel}" - e.g. if it's a browser running on a phone.
** built-in modem
** built-in modem
** bluetooth command to a paired device (e.g. cell phone)
** bluetooth command to a paired device (e.g. cell phone)
Line 42: Line 45:
**using on-line service
**using on-line service
** bluetooth command to a paired device (e.g. cell phone)
** bluetooth command to a paired device (e.g. cell phone)
 +
=== skype ===
 +
* If there's a "skype:" or "callto:" URL, then provide an option to:
 +
** "Skype Contact: {fn} {tel}" - e.g. if there is Skype installed on the system.
=== fax integration ===
=== fax integration ===
* If a <code>tel</code> of type <code>fax</code> is present, provide options to send a fax to it via:
* If a <code>tel</code> of type <code>fax</code> is present, provide options to send a fax to it via:
Line 47: Line 53:
** built-in fax modem
** built-in fax modem
=== birthday planning ===
=== birthday planning ===
-
* If a birth-date is present, treat it as a recurring hCalendar event.
+
* If a <code>bday</code> is present, treat it as a recurring hCalendar event.
 +
** "Save Contact Birthday: {fn} {bday}" - create an ics repeating event of the birthday.
 +
=== anniversary planning ===
 +
* If an <code>anniversary</code> (vCard4, hCard 2.0) is present, treat it as a recurring hCalendar event.
 +
** "Save Contact Anniversary: {fn} {bday}" - create an ics repeating event of the anniversary.
 +
 
=== address canonicalization ===
=== address canonicalization ===
* Given a postal code (or other partial address) fetch the full, canonical postal address for the relevant authority's website (e.g. [http://postcode.royalmail.com/portal/rm/postcodefinder]). If no country is defined, used the user's locality as the default.
* Given a postal code (or other partial address) fetch the full, canonical postal address for the relevant authority's website (e.g. [http://postcode.royalmail.com/portal/rm/postcodefinder]). If no country is defined, used the user's locality as the default.

Current revision

hCard User Interface

Contents

This page is for techniques and issues surrounding user-interfaces to author, publish, and display hCards.

Authors

Single Input Field for Names

When capturing name data that is later to be presented as a hCard, it's important that the data is collected at the highest fidelity possible. As not all names are suitable for hCard's implied-n optimisation (and therefore can't be output as fn, with n omitted), capturing component parts of the name individually enables the proper construction on n when generating the hCard.

Sometimes, however, constraints require a name be collected with a single field. Once such example is common blog CMSs (WordPress, TextPattern) that use a single database field to store the name against each post comment. In such cases it is always desirable to find a way to collect the name with higher fidelity. However, if this simply cannot be done, the implementer could chose to attempt to best-guess the component parts of the name to form a valid n.

One suggested 'best-guess' algorithm might be:

  1. If the name is one word, attempt implied nickname optimization
  2. If the name is two words, attempt implied n optimization
  3. For three or more words
    1. Perform a lookup against known sub-name combinations (e.g. 'Sarah Jane', 'Vander Wal')
    2. Apply the grammar "(honorific-prefix) given-name additional-name(s) family-name (honorific-suffix)"

The principal behind this suggestion is that it's better to make a good guess and potentially miscategorise an ambiguous name component than to generate an invalid hCard.

Additional user interface

Some examples of additional user interface for hCard. Note that most of these actions should be applicable to all instances of the microformat on the page at once (e.g. export all contacts), of for a selection of instances (e.g. export selected contacts), or one just one specific instance (e.g. export contact XYZ).

context menu access: right-clicking (control-clicking) on a specific contact could provide additional menu items (based on the below) that act on that specific contact.

address book integration

desktop to phone transfer

telephony integration

skype

fax integration

birthday planning

anniversary planning

address canonicalization

data export

data import

see also

The hCard specification is a work in progress. As additional aspects are discussed, understood, and written, they will be added. These thoughts, issues, and questions are kept in separate pages.

hcard-user-interface was last modified: Friday, September 30th, 2011

Views