From Microformats Wiki
Revision as of 11:47, 6 November 2007 by Tantek (talk | contribs) (added Jeremy's post MicroformatID, reworked intro sentences, replacing SREG attributes with hCard)
Jump to navigation Jump to search

OpenID + microformats Brainstorming

This is a public space for capturing some ideas on how OpenID and Microformats can work together.

Relevant Microformats

  • hCard - for profiles
  • XFN
    • rel="friend" etc. for marking up relationships between profiles
    • rel="me" for identity consolidation among profiles
      • Can YADIS be extended to support rel="me"?

Ideas for use

  • Identity providers should provide hCard marked up profile pages
  • re-use hCard (vCard) vocabulary for HTTP query based key-value pairs of information requested and returned

Replace SREG attributes with hCard

Replace Attribute Exchange attributes with hCard

Many attributes in the attribute registry established at are reinventions of properties defined in vCard (and thus hCard). It would be preferable to reuse such vocabulary rather than reinventing it (see also naming-principles).

OpenID whitelist authentication for private hCard

A blog can use the URLs in its XFN Friendly blogroll as an OpenID whitelist to provide more information to those that login to the blog with one of those URLs. This technique can be used to provide more detailed private hCard contact information to only a subset of people (or services). You could also build the whitelist of OpenIDs by parsing data out of a social network API or an aggregated list of XFN friends of friends (following the ideas on social-network-portability).

Tom Morris has implemented this on his blog, and on a "family extranet".

In his blog post MicroformatID, Jeremy Keith explained how Tom's blog works:

Tom has an hCard on his blog. By default the information provided is fairly basic: an email address, a URL and a vague physical address. Right by the hCard, there’s a simple form that allows you to log on using OpenID. If you log on and you’re on a white list of Tom’s friends, the hCard is updated to reveal more information: telephone numbers and a complete physical address.

That’s pretty clever. And when you consider that OpenID is a URL-based authentication system and XFN is also based around URLs, it would be pretty easy to have the white list correspond to an XFN list on the same page as the hCard.

hCard | OpenID | XFN… it’s like Unix pipes for the Web: small pieces, loosely joined.

Tom recently explained this a bit more in his blog post Are you on the list? / Once again, in English:

Here's what I'm trying to do. I have an hCard on my blog - over in the sidebar. I want to make it so that the people who want to get my contact details can. I've had the fun experience of auto-dialling with Skype when microformats are present, and being able to download phone numbers onto my phone. Basically, I want to simulate electronically the situation I have when one gives their business card out to someone without having to carry bits of card around with me. The user experience should something like this:

User: "I know Tom. I want to contact him by phone or send him something by post." User goes to my blog and enters their OpenID. If user is on list, user sees extra information - my home address and phone numbers. This is all in an hCard, so they can use hCard tools like Operator to use the information in a more useful way.

This is important, as often people want to make data available, but not to everyone. OpenID is a good way of letting people authenticate, but not as intrusive as having them sign up and have to give you their e-mail and so on.


Ideally, when we have a few more pieces in place, we will have it so that we can do automatic OpenID inference - if you have a WordPress blog and I list you as a friend on say, Flickr and Twitter, then you can get access to my personal details. Personal details are also just the tip of the iceberg - everyone has things which they want only some of their friends to be able to see or use.

The general overall plan is to make it so that network connections can be used as a way of providing or denying services. Some people are using this 'graph' of connections to determine whether or not you are a comment spammer.


Microformats outside HTML

  • JSON representations of hCard etc.

See also