OpenID for the Semantic Web
Managing multiple sets of sign-on information (username and password) is a task that many people hate. I often forget either the username or the password for a less frequently visited web site, and sometimes I forget both. OpenID is an emerging framework that attempts to solve this problem. This framework built based on a simple idea that users on the Web can be uniquely identified by URI.
As popular web sites such as Zooomr, Livejournal and Technorati begin to support OpenID, I wonder if we can use OpenID for identifying people and discovering the semantic description about them on the Semantic Web?
How OpenID works
A user picks an OpenID Identity Provider (e.g., Verisign’s PIP and MyOpenID.com). Register a unique URI with the Identity Provider. Typically this URI is in the form of HTTP URL — e.g. http://harry.chen.myopenid.com. Once this URI is registered and authenticated, it can be used for signing on to any web sites that supports the OpenID protocol. Should the user wants to change the password used for authenticating his/her OpenID, the user changes it with the Identity Provider and not with the individual OpenID-enabled web sites.
OpenID for identifying and describing FOAF people
An obvious application of the OpenID URI is to use which to identify instances of FOAF Person in a FOAF document. In the past, there were discussions about what URI format is best for representing a FOAF Person. Some said it should be the home page URL of a person, and some others said it should be a standard URI pattern convention (e.g., http://harry.hchen1.com/me). I think an OpenID URI is a better approach. Not only it’s a unique URI, but also it has a functional purpose — authenticating users on the Web. Why reinventing new URI for myself if I already have a URI that uniquely identifies me in a dozen different web sites?
Moreover, I believe that OpenID can be exploited for publishing semantic description about people. OpenID supports a special kind of authentication method called “delegating authentication“. We can exploit this method to fetch RDF descriptions (e.g., FOAF documetns) about the person that an OpenID URI identifies.
This is how delegating authentication works. Sometimes users want to use customized URI for their OpenID identification. For example, I may want to use http://harry.chen.ebiquity.umbc.edu as oppose to http://harry.chen.myopenid.com. However, users may not be capable of running or don’t wish to run an Identity Provider. For example, I’m not authorized to host an OpenID Identity Provider on ebiquity.umbc.edu. In this case, a user can define configurations for delegating authentication in an HTML document that is linked from the customized URI (see an example and howto).
Since the configuration block for delegation authentication builds on HTML
link, the rel and href attribute, we can add to this block with links to a FOAF document about a person.
The benefit of this approach is that any OpenID-enabled sites can automatically fetch personal profile information about the users (a photo image that the depicts the person, their home base location, nearby airport, a group of people that the user knows etc.). I’ve added the above definition in my OpenID HTML page.
Concluding Remarks
OpenID is an emerging web framework that attempts to simplify the management of web authentication profiles (usernames and passwords). Since URI is used to identify users in this framework, I believe we should borrow those URI to represent people in FOAF documents. In addition, I believe we can extend OpenID’s “delegating authentication” method to link FOAF documents from people’s OpenID URI. Not only this will bring forth the benefit of having a single sign-on, but also enable web sites to automatically discover people’s profiles and their social network information.




















[...] more on OpenID and the semantic web [...]
Pingback by darcusblog » Blog Archive » OpenID and Identity — October 25, 2006 @ 12:26 pm
My OpenID is: http://www.openlinksw.com/dataspace/kidehen@openlinksw.com
My Personal URI is exactly the same
You can explore the same concept by simply opening an account at: http://myopenlink.net:8890/ods which basically creates a Data Space for you that includes a personal URI that is also an OpenID 
Comment by Kingsley Idehen — October 25, 2006 @ 5:15 pm
Continuing on the same theme, you will find an even more demonstrative example of OpenID being the key to my Data Space via: http://myopenlink.net:8890/dataspace/kidehen@openlinksw.com
Note: the experimental nature of this server means it can be a little volatile etc..
Comment by Kingsley Idehen — October 25, 2006 @ 5:27 pm
I’d like an elegant URI for OpenID, and also for my foaf:Person. Could I make them the same? Should I?
Comment by Dave Brondsema — October 25, 2006 @ 9:38 pm
Dave, I think it’s a good idea to use the same URI for OpenID and foaf:Person. This is exactly what I have advocated in this blog post.
You may start with picking a URI for your OpenID. How about http://dave.brondsema.net/, http://brondsema.net/dave or http://dave.brondsema.net/me?
Once you’ve set up an OpenID URI using the “delegating authentication” method, you can edit your FOAF file to identify yourself using that URI.
Comment by harrychen — October 26, 2006 @ 7:03 am
Harry, if I make my foaf document available at http://brondsema.net/dave it looks like I couldn’t make that a OpenID 1.0 URL, right? The OpenID 1.0 spec indicates that the Identifier URL has to be HTML. Yadis, should work, though, since it supports an X-XRDS-Location header. I imagine that a Consumer wouldn’t mind if the body was RDF if it had that header.
Comment by Dave Brondsema — October 26, 2006 @ 6:01 pm
Dave, I think there is a work-around to support what you wanted to do. I took the instruction from RDF in HTML (see Embed XML RDF Part II), and made few changes to my OpenID HTML. I added FOAF description to the page. It passed W3C RDF validation. It also worked for me to sign into livejournal.com. I hope this helps.
Comment by harrychen — October 26, 2006 @ 6:23 pm
Harry, while I don’t think all RDF parsers will support that, it’s a good idea. Thanks
Comment by Dave Brondsema — October 26, 2006 @ 9:03 pm
Here is a blog post that tries to make the case for OpenID: The Case for OpenID by Phil Becker (ZDNet).
Comment by harrychen — December 5, 2006 @ 2:01 pm
[...] OpenID for the Semantic Web: [...]
Pingback by Synesthesia » Links Roundup for 2007-01-04 — January 26, 2007 @ 4:39 am