Archive for the 'Data Portability' Category

Danja rocks with his “DataPortability and me” video / some slides I’ve made for DP+SIOC

Wow! Danny Ayers has made the best video I’ve seen for the “DataPortability and me” competition, which ends today:

Travelling on the train to Dublin and back this morning, I gathered and made some slides for future presentations on DataPortability and SIOC:

(De-)centralised me

TechCrunch’s Michael Arrington has an interesting article today about the “centralised me”, a follow-up to Loic Le Meur’s post about wanting to re-centralise his decentralised social “map”. Here is a picture I drew some time back showing the decentralised me:

20080330a.png

I previously talked about how SIOC and FOAF can be used to represent this, and how this representation of people’s decentralised content is tied to the networks formed via social objects. (See also this paper.)

This is certainly something that fits with the ideas of DataPortability. I think people may have different requirements, including:

  • I may want to centralise my stuff on my own service, like Loic outlined.
  • I may want to see my stuff on a third-party service providing an aggregate view, like FriendFeed.
  • I may want to move all my stuff from multiple services to one third-party service.
  • I may just want to move the stuff I have on one service to another (e.g., move all my blog posts, comments, friends, etc. from WordPress.com to Acme Blog Service).

DataPortability, Microsoft’s Contacts API and OpenSocial.org

20080326a.png (No, the picture I created on the right ISN’T the new DataPortability logo; I totally missed out on the closing date, but it will serve as an image for this blog post. There have been some very cool submissions for the competition however.)

There were two interesting announcements yesterday in the portability space. The first was from Microsoft, announcing that they would be “working with Facebook, Bebo, Hi5, Tagged and LinkedIn to exchange functionally-similar Contacts APIs, allowing us to create a safe, secure two-way street for users to move their relationships between our respective services” (Contacts APIs provide contact data portability). The second was from Google, Yahoo! and MySpace, jointly announcing that an OpenSocial Foundation is to be formed as a non-profit entity (OpenSocial provides social application portability). Unfortunately, there is still some confusion regarding exactly what data portability functionality OpenSocial will offer (if any), and at the moment the consensus seems to be that DataPortability and OpenSocial aren’t as related as previously thought.

DataPortability (including Microsoft’s move in this area) is mainly about users being able to have portable data (profiles, identities, content like photos, videos, discussion posts) that they can move between the services and sites that they trust and choose to use. (See Uno de Waal’s interesting post on how the Microsoft Invite2Messenger service allows you to get your Facebook friends’ e-mail addresses in plain text.)

OpenSocial on the other hand is more about “gadget” portability, where social applications can be deployed across a variety of social networking sites. As summarised by Julian Bond, OpenSocial consists of a gadget API (for gadget programmers) and a standard for site owners to implement these gadgets on their own sites. The part of OpenSocial related to DataPortability is a REST API, details of which are a bit vague right now. Not to be confused with OpenSocial (although the similar names make this difficult), the Social Graph API from Google is more related to DataPortability as it indexes semantic data from many social networking sites like Hi5, MySpace, LiveJournal, Twitter, etc. and allows users to bring their social graph with them when they sign up for a new site that supports the API.

Apart from the lack of intersection between Microsoft (plus affiliate Facebook) and Google, a good few companies are in multiple “camps” (DataPortability, Contacts APIs, OpenSocial), as shown by the Venn diagram I drew below:

20080326b.png

Marc Canter and others have pointed out that although the Contact APIs from Microsoft are not open in themselves, at least the APIs seem to export as much data as they can import. Marc also says that Microsoft (and other big companies) may not be explicitly following the actions (e.g. the technical recommendations) of the DataPortability initiative, but rather claims that it would hurt them if they didn’t open up and go along with some portable data efforts given the current climate and the tide of users in favour of this.

For users to have true data portability, there needs to be some consensus on both the APIs and the formats needed to transfer / represent this portable data. It may be that a number of APIs and formats are required for different scenarios. The Semantic Web is an ideal means for representing the data to be ported from social websites, in that is well suited (using vocabularies like SIOC and FOAF) to represent how people and all kinds of objects on these sites are connected together (documents, discussions, meetups, places, interests, media files - whatever). Of course other data formats may be used, but most importantly, it would be a waste of time to come up with a bunch of new formats for representing the data that needs to be portable, because a lot of work has been done on how to best provide interoperable, reusable and linked data through efforts like the Semantic Web, AtomPub and the microformats community.

I’ll be attending the DataPortability Lunch Meetup in London on the 6th April 2008 if anyone there feels like a chat about some of these topics…

Related posts:

WebCamp SNP and BlogTalk 2008 approacheth…

I’m in Cork with a posse of eight from DERI, and it’s the night before two co-located events: the WebCamp workshop on social network portability (Sunday) and the BlogTalk conference on social software (Monday, Tuesday). Others that have arrived in Cork this evening include Niall Larkin, Ajit Jaokar, Aral Balkan, Ben Ward, Dan Brickley, Ross Duggan and Stephanie Booth.

I’m really looking forward to the talks, the discussions, the networking, the food, and some positive outcomes from the next three days. And with invited speakers of this quality, I know it’s going to be good.

Unfortunately, I’m missing the Irish Blog Awards for the second year running, but boards.ie’s Managing Director Gerry Shanahan is representing us as a sponsor. At least I hope to meet up with many of the bloggers at tomorrow night’s optional blogger’s dinner at Rossini’s here in Cork (43 people have signed up).

More blog posts about the events will be available via the tags webcampsnp and blogtalk2008. Here are some recent posts:

Five days left to register online for BlogTalk 2008!

Please note that online registration for BlogTalk 2008 (and WebCamp Social Network Portability) will close next Wednesday, 26th February 2008.

You can register at Amiando.

There are a few discount codes out there.

(Don’t forget to sign up for the optional blogger’s dinner as well!)

DataPortability and me, JB

As part of the DataPortability initiative, I’ve put together this video explaining why I think it’s important and how it fits in with the Semantic Web and SIOC:

(Edit: An audio recording of this morning’s steering group telecon is now available.)

Semantic Web for Dummies

20080220a.jpg I referenced this on the SIOC-Dev mailing list recently, and when I pasted it on the DataPortability.org steering group chat this morning (in parallel with our first phone conference), Drummond Reed suggested I blog it. It’s originally from MIT’s Stefan Marti:

XML customised tags, like:
<dog>Nena</dog>
+ RDF relations, in triples, like:
(Nena) (is_dog_of) (Kimiko/Stefan)
+ Ontologies / hierarchies of concepts, like:
mammal -> canine -> Cotton de Tulear -> Nena
+ Inference rules like:
If (person) (owns) (dog), then (person) (cares_for) (dog)
= Semantic Web!

(Picture by Duncan Hull.)

The Google Social Graph API: the good and the bad

I was very interested to hear about the launch of Google’s social graph API at the weekend. The social graph API “returns web addresses of public pages and publicly-declared connections between them”, where the connections are currently being obtained from crawled XFN and FOAF links. Dan Brickley, the co-creator of FOAF said:

The Google API looks like a step in a very interesting direction. Of course it will be possible to think of many things it doesn’t yet do, but I encourage everyone here to have a think about simple, practical and useful incremental improvements to it. We can do a lot more eg. with full SPARQL access, but proving full SPARQL to the aggregation of the planet’s public FOAF/XFN data isn’t going to happen anytime soon. Interesting times :)

In answer to Niall Larkin’s question about how this relates to SIOC, such services help us because by providing an easy method to find one’s social graph (both “me” and “knows” connections), it also makes it easier to find your social objects which can be described using SIOC (see my previous illustration, and see also Kingsley Idehen’s demonstration of how this can work).

In short, you can use FOAF to create the social graph, and use SIOC to represent social objects.

Not everybody is entirely happy (see the comments on Tim O’Reilly’s blog post), with the majority of objections being in relation to the APIs being operated by a for-profit as opposed to a non-profit organisation, and there is some opposition to the idea of a single point of control rather than having a set of distributed indexes.

Perhaps we need something similar to “nofollow” links for the public social graph as well. We will discuss these issues and some other important social network portability topics at WebCamp SNP in four weeks time.

Edit: What I can add to this is my gut feeling that it probably requires a company like Google to make an API that can gather the required momentum and that people will use; previous FOAF aggregator efforts like Plink and FOAFSpace could have done this, but they would have found it much harder to gain critical mass.

Interviewed for Data Portability article on PCWorld.com / WashingtonPost.com; SIOC mentioned

I was interviewed recently as part of an article by Juan Carlos Perez for PC World about Data Portability, talking about synergies with SIOC (the article has since been syndicated by many media outlets including the Washington Post).

I think Juan wrote a balanced article which outlines the main goals of the initiative and addresses the worries that some companies are still unsure of what to expect. Since DP is just a few months old, it is therefore impressive that companies like Microsoft, Google, Facebook, Plaxo and Digg are getting involved at this early stage.

For those who are unaware of the initiative, the DataPortability.org working group was recently established to look at ways in which data can be ported from one social media service to another. For example, one of their sample scenarios involves using the YADIS communications protocol to discover an identity for a particular person, which then returns a YADIS / XRDS document indicating which identities that person prefers to use and what services those identities are held on. Then, the WRFS abstraction model can be used to find out what containers the returned identities hold on those services.

SIOC is an ideal representation method for describing all content created by a person (via their user accounts) on various social media sites and the structure contained therein (see my previous post). One of the problems with combining social media data is in knowing exactly what accounts the user holds on different social media sites. As mentioned, YADIS / XRDS / WRFS can be used for discovery purposes, and the combination of the FOAF and SIOC vocabularies is particularly well suited to describe a person’s social network profile, their user accounts and the content items created using those accounts in various containers.

Yet SIOC is more that just a way to represent personal containers of data. I think that another task for the DataPortability.org workgroup is to discuss what methods can be used to port not just personal sets of data but whole sets of community data - especially for niche groups. SIOC was initially created to provide a way to describe the content from online communities (mailing lists, message boards, etc). While it was soon used for people’s blogs and more recently for other personal sets of Web 2.0-type content items, it has the concepts needed to describe the structure and contents of a community site as a whole. If someone runs a community site, and they decide that they want to port their group from one place to another, SIOC can be used to describe the structure (and content if combined with other vocabularies) of most community sites in order to re-create it on a different information system.

(Edit: The related workshop on social network portability will be held in Cork on the 2nd of March 2008.)