Ego Linking Part I
Monday, November 17th, 2008Now’s the time for a major update of your FOAF file! (If you don’t have one already use FOAF-a-matic to create an initial version to start with)
URIs for things are much more common now than they were in the pre-http-range-14 days, when blank nodes were en vogue. So, you now may find the following URIs denoting people, or containing information about them:
- http://dblp.l3s.de/d2r/resource/authors/Firstname_Lastname
- http://semanticweb.org/id/Firstname_Lastname
- http://data.semanticweb.org/person/firstname-lastname
- http://tools.opiumfield.com/twitter/nick/rdf exports data about http://twitter.com/nick (but confuses the Person with the Document and following a person with knowing one)
- http://friendfeed.com/nick has direct FOAF export (but uses bnodes for people)
- http://dbpedia.org/resource/Firstname_Lastname (if you are really really famous)
The problem: each URI is separate, and information about the same real-world entity may be connected to multiple identifiers.
OWL provides a number of mechanisms for inferring equality: inverse functional properties (to establish equality on the same values for properties, e.g. SSN, passport number), owl:sameAs (direct equality), and a few more (functional properties and cardinality constraints for example, but that’s a story for another day).
Inverse functional property reasoning doesn’t work too well currently since the data is too nosiy (a lot of “unique” property values are “n/a”, “”, “yes”, “mbox:”, and so on, which are not unique at all), which leads to many bogus inferences.
So for now, I suggest to add the respective person URI via owl:sameAs predicates to your FOAF URI, which enables data aggregators to fuse all information about a person into a single view.
Even before you publish data about something, it might be a good idea to check if there’s already a URI for that thing. A quick search on SWSE can help.