Re-using <br />social media data<br />Glenn JonesCodebits– Lisbon, Portugal4 Dec 2009<br />
Objects<br />Social Media<br />Aggregation<br />Conversation<br />Activity<br />
Identity<br />Relationships<br />Objects<br />Social Media<br />Aggregation<br />Conversation<br />Activity<br />
Most of us have built identities across the web, we fill in profiles, upload photos, videos, reviews and bookmarks<br />
Identity<br />Identity<br />Distributed Identity<br />Identity<br />Our web identity is fragmented or distributed<br />
Identity consolidation<br />
The power of XFN rel=me<br />&lt; a href=“http://www.glennjones.net/” rel=“me”&gt;http://www.glennj... &lt;/a&gt;<br />
A graph (map) of rel=me linkages<br />Found Site<br />Found Site<br />Start Site<br />Found Site<br />Found Site<br />Foun...
Types of social graph linkages<br />Start Site<br />Found Site<br />rel=me<br />Outward claim<br />Start Site<br />Found S...
Google Social Graph API<br />http://socialgraph.apis.google.com/otherme?<br />q=http://twitter.com/glennjones<br />
Google Social Graph API JSON<br />{ <br />   &quot;http://delicious.com/glennjonesnet&quot;: { <br />      &quot;attribute...
A JavaScript library that retrieves and aggregates profiles from across the web <br />
10 identities - outward rel=me links<br />20 identities - combined outward and inward rel=me links<br />5 additional ident...
Profile parsing<br />
§<br />Embedded microformathCard<br />
ufXtractmicroformat API<br />http://ufxtract.com/api/?url=http://slideshare.net/glennjones&format=hcard&output=json<br />
ufXtractmicroformat API<br />{<br />    &quot;microformats&quot;: {<br />        &quot;vcard&quot;: [{<br />            &q...
Google Social Graph API endpoint descriptions are not as complete as they could be<br />{ <br />   &quot;http://delicious....
Ident Engine – data overlayof endpoint descriptions<br />{<br />    &quot;name&quot;: &quot;Last.fm&quot;,<br />    &quot;...
Auto fill forms<br />
The most common details shared across <br />social media sites – work personas<br />
The most common details shared across <br />social media sites – social personas<br />
Parsing user generated content from discovered endpoints<br />
Ident Engine – user generated content endpoint descriptions<br />{<br />    &quot;name&quot;: &quot;Vimeo&quot;,<br />    ...
Ident Engine – data overlayof endpoint descriptions<br />Content types definitions<br />Schemas<br /><ul><li> Activity
 Audio
 Bookmarks
 Entries
 Events
 Friends
 Friends Status
 Images
 Interests
Lifestream
 Profile
 Resume
 Services
Upcoming SlideShare
Loading in …5
×

Re-using social media data

3,744
-1

Published on

the practical reuse of social media data and how it can create better user experience. Combining Google’s Social Graph API with open data sources like RSS and Microformats to provide a wealth information about your users.

Published in: Technology
1 Comment
10 Likes
Statistics
Notes
  • Looks like there's not much activity around Identengine =( No news at the http://identengine.com/blog/, is the project still alive?
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
3,744
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
63
Comments
1
Likes
10
Embeds 0
No embeds

No notes for slide
  • Apart from social media sites adding rel=me links to their profile pages and individuals marking up blogs with the elsewhere on the web patternA number of specialist sites are now listing peoples Distributed Identities to help project web personsa and also mark services that they aggregating information from
  • So now I have explained how this work how do we programmatically access this dataWell just over a year ago Google release the Social Graph APIIt has 3 major methods, the otherme method is the simplest In the example on the slide q= the starting point URL for its search
  • There are many software libraries that can parser microformatsUfXtract is a c sharp parser I wrote an I also host a web based API at ufxtract.comThe example URL in the slide shows how call for JSON respentation of the hCard on the slideshare profile we where just looking at
  • For sites which are more about interaction outside of work you could be looking at a smaller subset.Dropping job title, company and the bio
  • This is the last of the demos from the Ident Engine siteThe librarySearches for identities using the social graph APIIt then looks through the data overlays for information it can retrieve and builds a lifestream for that individualSo it has returned tweets, bookmarks and photo’s from flickrAll of this from entering a single URL
  • This is a close up of the profile listing page. As you can see it has profiles for two people which is incorrect. This is because using inward links it is always possible for the social graph to pick up rogue relationshipsI trace this particular problem to 24ways sites, which was corrected. Once a error is in the Google search index it can take a very long time to get rid of itThese problems only happen rarely, but I have 3 options to fix the problem
  • Re-using social media data

    1. Re-using <br />social media data<br />Glenn JonesCodebits– Lisbon, Portugal4 Dec 2009<br />
    2. Objects<br />Social Media<br />Aggregation<br />Conversation<br />Activity<br />
    3. Identity<br />Relationships<br />Objects<br />Social Media<br />Aggregation<br />Conversation<br />Activity<br />
    4. Most of us have built identities across the web, we fill in profiles, upload photos, videos, reviews and bookmarks<br />
    5. Identity<br />Identity<br />Distributed Identity<br />Identity<br />Our web identity is fragmented or distributed<br />
    6. Identity consolidation<br />
    7. The power of XFN rel=me<br />&lt; a href=“http://www.glennjones.net/” rel=“me”&gt;http://www.glennj... &lt;/a&gt;<br />
    8. A graph (map) of rel=me linkages<br />Found Site<br />Found Site<br />Start Site<br />Found Site<br />Found Site<br />Found Site<br />Found Site<br />Found Site<br />
    9. Types of social graph linkages<br />Start Site<br />Found Site<br />rel=me<br />Outward claim<br />Start Site<br />Found Site<br />rel=me<br />Inward claim<br />Start Site<br />Found Site<br />rel=me<br />Reciprocalclaim<br />
    10. Google Social Graph API<br />http://socialgraph.apis.google.com/otherme?<br />q=http://twitter.com/glennjones<br />
    11. Google Social Graph API JSON<br />{ <br /> &quot;http://delicious.com/glennjonesnet&quot;: { <br /> &quot;attributes&quot;: { <br /> &quot;rss&quot;: &quot;http://feeds.delicious.com/rss/glennjonesnet&quot;, <br /> &quot;url&quot;: &quot;http://delicious.com/glennjonesnet&quot;, <br /> &quot;profile&quot;: &quot;http://delicious.com/glennjonesnet&quot; <br /> } <br />}, <br /> &quot;http://huffduffer.com/glennjones&quot;: { <br /> &quot;attributes&quot;: { <br /> } <br />}, ...<br />
    12. A JavaScript library that retrieves and aggregates profiles from across the web <br />
    13. 10 identities - outward rel=me links<br />20 identities - combined outward and inward rel=me links<br />5 additional identities – side effect profile parsing<br />
    14. Profile parsing<br />
    15. §<br />Embedded microformathCard<br />
    16. ufXtractmicroformat API<br />http://ufxtract.com/api/?url=http://slideshare.net/glennjones&format=hcard&output=json<br />
    17. ufXtractmicroformat API<br />{<br /> &quot;microformats&quot;: {<br /> &quot;vcard&quot;: [{<br /> &quot;fn&quot;: &quot;Glenn Jones&quot;,<br /> &quot;n&quot;: {<br /> &quot;given-name&quot;: [&quot;Glenn&quot;],<br /> &quot;family-name&quot;: [&quot;Jones&quot;]<br /> },<br /> &quot;adr&quot;: [{<br /> &quot;locality&quot;: &quot;Brighton&quot;,<br /> &quot;country-name&quot;: &quot;United Kingdom&quot;<br /> }], ...<br />
    18. Google Social Graph API endpoint descriptions are not as complete as they could be<br />{ <br /> &quot;http://delicious.com/glennjonesnet&quot;: { <br /> &quot;attributes&quot;: { <br /> &quot;rss&quot;: &quot;http://feeds.delicious.com/rss/glennjonesnet&quot;, <br /> &quot;url&quot;: &quot;http://delicious.com/glennjonesnet&quot;, <br /> &quot;profile&quot;: &quot;http://delicious.com/glennjonesnet&quot; <br /> } <br />}, <br /> &quot;http://huffduffer.com/glennjones&quot;: { <br /> &quot;attributes&quot;: { <br /> } <br />}, ...<br />
    19. Ident Engine – data overlayof endpoint descriptions<br />{<br /> &quot;name&quot;: &quot;Last.fm&quot;,<br /> &quot;domain&quot;: &quot;last.fm&quot;,<br /> &quot;urlmappings&quot;: [{<br /> &quot;urltemplate&quot;: &quot;http://www.last.fm/user/{username}&quot;,<br /> &quot;schema&quot;: &quot;hCard&quot;,<br /> &quot;contenttype&quot;: &quot;Profile&quot;,<br /> &quot;mediatype&quot;: &quot;Html&quot;<br /> },<br /> {<br /> &quot;urltemplate&quot;:&quot;http://www.last.fm/user/{username} &quot;,<br /> ...<br />
    20. Auto fill forms<br />
    21. The most common details shared across <br />social media sites – work personas<br />
    22. The most common details shared across <br />social media sites – social personas<br />
    23. Parsing user generated content from discovered endpoints<br />
    24. Ident Engine – user generated content endpoint descriptions<br />{<br /> &quot;name&quot;: &quot;Vimeo&quot;,<br /> &quot;domain&quot;: &quot;vimeo.com&quot;,<br /> &quot;urlmappings&quot;: [{<br /> &quot;urltemplate&quot;: &quot;http://vimeo.com/{username}/videos/rss&quot;,<br /> &quot;schema&quot;: &quot;Atom&quot;,<br /> &quot;contenttype&quot;: &quot;Video&quot;,<br /> &quot;mediatype&quot;: &quot;Atom&quot;<br /> }<br /> ...<br />
    25. Ident Engine – data overlayof endpoint descriptions<br />Content types definitions<br />Schemas<br /><ul><li> Activity
    26. Audio
    27. Bookmarks
    28. Entries
    29. Events
    30. Friends
    31. Friends Status
    32. Images
    33. Interests
    34. Lifestream
    35. Profile
    36. Resume
    37. Services
    38. Slides
    39. Status
    40. Video
    41. Atom
    42. RSS
    43. XFN
    44. XFN-hCard
    45. hAtom
    46. hCalendar
    47. hCard
    48. hResume
    49. rel-tag</li></li></ul><li>To join together data across the web we need a stack of open data formats and non-proprietary APIs<br />Microformats Parser<br />Google’s Social<br />Graph API<br />RSS Library<br />OAuth<br />ATOM Library<br />
    50. Yahoo’s YQL API<br />
    51. Dealing with imposters androgue relationships<br />
    52. Split personality<br />
    53. Start without discovery<br />
    54. Let the user decide <br />
    55. Only use reciprocal or outward <br />rel=me links only<br />
    56. Only use outward or reciprocal<br />rel=me links only<br />
    57. Now it’s your turn to use identity discovery to build a little magic into your applications<br />
    58. Microformats Parsershttp://microformats.org/wiki/parsers<br />Microformats Parser - Optimus - XSLT <br />http://microformatique.com/optimus/<br />Microformats Parser - Cognition - Perlhttp://buzzword.org.uk/cognition/<br />Google Social Graph APIhttp://socialgraph.apis.google.com/<br />Social Graph Node Mapper<br />http://code.google.com/p/google-sgnodemapper/<br />YQL<br />http://developer.yahoo.com/yql/<br />Ident Enginehttp://identengine.com/<br />UfXtract<br />http://ufxtract.com/<br />Madgex Labshttp://lab.madgex.com/<br />Bloghttp://www.glennjones.net/<br />
    59. Creative Commons Attribution-Non-Commercial 2.0 UK: England & Wales Licence.Copyright Glenn Jones 2009www.glennjones.net<br />
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×