Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

FOAF & SIOC applications

Wird geladen in …3

Hier ansehen

1 von 40 Anzeige

Weitere Verwandte Inhalte

Andere mochten auch (14)

Ähnlich wie FOAF & SIOC applications (20)


Weitere von Alexandre Passant (20)

Aktuellste (20)


FOAF & SIOC applications

  1. 1. FOAF & SIOC applications Alexandre Passant - http://apassant.net LaLIC, Université Paris-Sorbonne, France Guest presentation at Harry Halpin’s ESWC2008 tutorial Linking Social Networks, Microformats, and the Semantic Web using GRDDL
  2. 2. Using FOAF data http://flickr.com/photos/poagao/2305789735/ by Poagao
  3. 3. FOAF data = RDF data • Use existing RDF tools / APIs • librdf, ARC2, RAP, Jena ... • SPARQL • Semantic Mashups ! • Combine RDF data from various sources with FOAF • Use Web 2.0 interfaces to browse your FOAF profile
  4. 4. FOAF, a LOD citizen http://richard.cyganiak.de/2007/10/lod/
  5. 5. DBpedia mobile • Combining mobile and Semantic Web technologies • People based near DBpedia resources • http://wiki.dbpedia.org/DbpediaMobile
  6. 6. foafmap.net • Social-network geolocation • Your network on a GoogleMap
  7. 7. Reusing FOAF in Web 2.0 applications • Anytime you register to a new service: • Fill-in personal detail, find friends and invite them • “Social Network Fatigue” • Do not panic, you have a FOAF profile ! • A machine-readable view of your identity and your connections • Can be used when log-in to applications • Authentication / Privacy issues
  8. 8. FOAF in revyu.com • A review website combining Web 2.0 and Semantic Web technologies • Re-use your FOAF profile to get personal details
  9. 9. Linking FOAF from OpenID • Add a link to your FOAF profile from your OpenID URL, so that services can get your machine-readable profile when you log-in <head> <link rel=quot;metaquot; type=quot;application/rdf+xmlquot; title=quot;FOAFquot; href=quot;foaf.rdfquot; /> </head> • Embeds RDF in your OpenID URL using RDFa
  10. 10. Linking OpenID from FOAF • The foaf:openid property • :me foaf:openid <http://apassant.net/> • A first authentication layer • Ensure that the retrieved FOAF file identifies the person logged with this OpenID URL SELECT ?who WHERE { ?who foaf:openid <$url> . }
  11. 11. FOAF + OpenID scenario • Bob creates an account on Networkr using OpenID • Networkr retrieves the FOAF profile and URI using the foaf:openid property • It identifies if there are any people already subscribed to it who are listed in Bob’s defined relationships • If so, Bob can add them as “local connections”, share data with them, etc. without having to once again search for / add his friends • Specific rules • If and only I know X from Flickr, he / she can see my pictures on Networkr
  12. 12. SparqlPress • A WordPress plug-in to consume and produce RDF data • http://wiki.foaf-project.org/SparqlPress • OpenID compliant • You log-in, the blog retrieve your identity, accounts ...
  13. 13. Getting FOAF from myfavoritesocialwebsite.com http://flickr.com/photos/wilbertbaan/244105100/ by wilbertbaan
  14. 14. Existing exporters for popular websites • Facebook, Flickr, Twitter ... • A unified model for your social network wherever it comes from • Forget APIs, use RDF tools and SPARQL
  15. 15. Flickr FOAF exporter • http://apassant.net/home/2007/12/flickrdf • Translation of API call results to RDF • Using various vocabularies and datasets • FOAF, SIOC, Geonames, lingvoj • Linked Data principles • Write your own ! • Only basic programming skills required • Be careful with terms of service
  16. 16. Identity management across social networks • A need to unify from different services so as to represent one’s unified identity based on URIs • flickr:Bob = twitter:bobby = fb:bob77 • Identity and social network unification • All relevant properties and relationships are linked to a single foaf:Person • Explicit versus implicit methods • Linked Data principles • owl:InverseFunctionalProperty
  17. 17. Explicit identity unification using Linked Data • http://www4.wiwiss.fu-berlin.de/bizer/pub/ LinkedDataTutorial/ • owl:sameAs: Used to identify two resources with different URIs as being the same resource • rdfs:seeAlso: “More information about this resource can be found here”, can be used by Semantic Web tools such as Tabulator
  18. 18. Implicit identity unification using IFPs • owl:InverseFunctionalProperty • If two resources share the same value for an IFP, they are the same • foaf:mbox, foaf:openid ... • New issues to take into account • I have pictures of me getting drunk on MySpace, I’m looking for a job on LinkedIn, and registered on both using the same e-mail. Do I really want to merge this !? • We are not all “information nudists”, many people want to fragment their online identity
  19. 19. Interlinking FOAF networks http://apassant.net/home/2007/12/flickrdf/data/people/33669349N00 flickr:2233977@N00 flickr: 24266175@N00 foaf:knows flickr: 43184127@N00 foaf:knows foaf:knows flickr:33669349@N00 twitter:CaptSolo owl:sameAs twitter:Wikier twitter:CharlesNepote myuri:me foaf:knows foaf:knows owl:sameAs foaf:knows owl:sameAs twitter:potiontv twitter:terraces foaf:knows myblog:a2 http://tools.opiumfield.com/twitter/terraces/rdf foaf:knows foaf:knows foaf:knows myblog:a30 myblog:a26 myblog:a19 http://myblog/foaf-export
  20. 20. Browsing interlinked social networks • http://apassant.net/home/2008/01/foafgear • Thanks to common semantics, only 100 lines of code
  21. 21. Modeling Social Media Contributions with SIOC http://flickr.com/photos/ejpphoto/2314610838/ by EJP Photo
  22. 22. Social Media Contributions • Lots of user-created and distributed content: • Blog posts, wiki pages, pictures, bookmarks ... • Called “Social Media Contributions” or SMC • A need for common semantics to • Provide a single model for any SMC, wherever it comes from • Enables the use of SPARQL queries instead of APIs • Interlink data and find relationships between content • From documents to resources, from WWW to GGG
  23. 23. SIOC • Semantically-Interlinked Online Communities • http://sioc-project.org • A ontology to represent the activities of online communities on the Web • W3C Member Submission, June 2007 • Namespace: http://rdfs.org/sioc/ns • 5 top-level classes: User, Role, Space, Container, Item • A “SIOC Types” module for Social Web content • A Semantic Web citizen: • Reusing and interlinking existing ontologies
  24. 24. The SIOC ontology
  25. 25. SIOC data example
  26. 26. SIOC applications • More than 40 applications creating and consuming SIOC data • http://rdfs.org/sioc/applications/ • Creating SIOC data • Drupal, Wordpress, Vbulletin ... • APIs to write your own: PHP, Java, Perl • SWAML, IRC2RDF ... • Browsing SIOC data • Generic RDF tools, SIOC browsers
  27. 27. SIOC explorer • Faceted SIOC browsing using Ruby on Rails • http://activerdf.org/sioc
  28. 28. Combining FOAF and SIOC for Data Portability http://flickr.com/photos/7603557@N08/466749514/ by lars hammar
  29. 29. Connecting FOAF and SIOC • sioc:User • Can be thought of as a virtual representation of any person online, within the context of a given social media website or community • A subclass of foaf:OnlineAccount • foaf:holdsAccount • “The foaf:holdsAccount property relates a foaf:Agent to a foaf:OnlineAccount for which they are the sole account holder.” • Links a foaf:Person to various sioc:User(s) • As many sioc:User(s) as required can be linked to a single person
  30. 30. People and accounts
  31. 31. People, accounts and SMC
  32. 32. Retrieving SMC • Retrieving all SMC from a given user thanks to interlinked data between his foaf:Person, his various sioc:User and related contributions SELECT ?user ?item WHERE { <$uri> foaf:holdsAccount ?user . ?item sioc:has_creator ?user . }
  33. 33. Sindice SIOC widget • WP plugin to retrieve all contributions of a user • http://sindice.com/developers/siocwidget
  34. 34. Data Portability with SIOC • How do move my data from one service to another ? • Data Portability thanks to the common semantics • Get SIOC data from existing exporters • Parse SIOC RDF data (e.g. using ARC2 for PHP) • Convert SIOC data to the content model of the target system • Store data in the target application
  35. 35. Wordpress SIOC importer • Import any external SIOC data and then reuse as if it was a native WordPress blog post • http://wiki.sioc-project.org/w/SIOC_Import_Plugin
  36. 36. SMOB: Microblogging with FOAF and SIOC http://flickr.com/photos/monster/310530160/ by Monster.
  37. 37. Semantic microblogging • Microblogging phenomenon • Sweet spot between blogging and instant messaging • Closed-worlds, DP issues • SMOB: Semantic Microblogging • http://smob.sioc-project.org • Distributed architecture • Machine-readable meta-data • Adding semantics to content
  38. 38. SMOB architecture • An ecosystem of publishing interfaces and aggregation servers Updates stored Subscribes to locally public updates Alex's microblogging Sends updates Reuses data client Server A John Sends updates Local RDF store Server B Updates stored locally Tuukka's microblogging Browses locally client Subscribes to public updates Uldis
  39. 39. SMOB server in use • Data storage using ARC2, browsing with Exhibit • http://smob.sioc-project.org/server
  40. 40. Thank you ! • Thanks to John Breslin and Uldis Bojars (DERI Galway) for help with the slides • Check the slides of our WWW08 tutorial “Interlinking Online Communities and Enriching Social Software with the Semantic Web” • Social Data on the Web workshop @ ISWC2008 • http://sdow2008.semanticweb.org/ • Pictures under CC-licence from flickr.com