Semantic Web in Action Stefan Decker, Eyal Oren, Sebastian R. Kruk
Outline Introduction about DERI Interlinking online communities: SIOC Application development: ActiveRDF & BrowseRDF Sharing and interconnecting knowledge: JeromeDL Summary
DERI Galway – Mission DERI Galway’s  m ission is “to exploit semantics for helping p eople o rganisations s ystems to better collaborate and interoperate”.
Some statistics Founded June 2003 with 1 fulltime member Status May 2007: 98 members Core fulltime research active members: 2 Professors 6 additional senior scientific researchers 9 PostDocs 5 Research Staff 58 PhD, Master Students & Interns 18 members are administration & management, industry and community outreach, university liaison, subcontractors Still hiring aggressively
“ An extension of the current Web in which information is given well-defined meaning, better enabling computers and people to work in cooperation.” Sir Tim Berners-Lee et al., Scientific American, 2001: tinyurl.com/i59p “… allowing the Web to reach its full potential…”  with far-reaching consequences “ The  next generation  of the Web” What is the Semantic Web? (beware the hype)
The Semantic Web (so far)
Social semantic information spaces: SW 2.0 Web 2.0 and social software
SIOC: Semantically Interlinked Community Sites Stefan Decker
What is SIOC? Semantically-Interlinked Online Communities (SIOC) Connecting many types of online communities (blogs, forums, mailing lists, etc.) Interesting possibilities: Distributed linked conversations Decentralised discussion channels and communities “ I […] think the concept is HOT” – Robert  Douglass, Drupal Developer
 
 
 
 
 
 
 
 
 
 
SIOC Ontology
How can SIOC data be used?
Browsing SIOC with TimeLine (1)
Browsing SIOC with TimeLine (2)
Create SIOC export modules for popular open-source discussion systems Infecting the Web Infrastructure: During next upgrade cycle gigabytes of community data become available SIOC metadata exporters created for: Content management system (Drupal) Bulletin board system (phpBB)  Blogging system (WordPress) French blogging system (DotClear) How can SIOC disseminated?
 
Next steps :  Add Onion Rings of Vocabularies RDF Calendar Microformats
Semantic Web application development: ActiveRDF and BrowseRDF Eyal Oren
Semantic Web applications: Database-driven web applications Semantic Web applications Centralised Decentralised One fixed schema Semi-structured One fixed vocabulary Arbitrary vocabulary Centralised publishing Publish anywhere One datasource Many distributed datasources Closed system s Open systems
Motivation relational web applications: database object-relational mapping web application framework
Motivation relational web applications: database object-relational mapping web application framework
Motivation relational web applications: semantic web applications: database object-relational mapping web application framework
Motivation relational web applications: semantic web applications: database object-relational mapping web application framework data source
Motivation relational web applications: semantic web applications: database object-relational mapping web application framework data source RDF store
Motivation relational web applications: semantic web applications: database object-relational mapping web application framework ??? data source RDF store ???
Motivation relational web applications: semantic web applications: database object-relational mapping web application framework ??? data source RDF store ??? ActiveRDF Ruby on Rails
ActiveRDF: RDF(S) to OO mapping Intuitive mapping: RDF(S) classes to OO classes RDF resources to OO objects RDF triples to OO attribute values foaf:Person a rdfs:Class. john a foaf:Person. john foaf:name “John Breslin”. Person name:string john: Person name: “John Breslin”
ActiveRDF examples print names of john’s friends find all 30-year olds named John
ActiveRDF architecture proxy objects represent RDF resource, convert methods into queries abstract query API manages collection of data sources wraps RDF store with its own API
ActiveRDF object manager Represents RDF resources (including RDFS classes)  t hrough proxy objects Intercepts each method call, converts method call into read/write query Intercepts all dynamic finders calls, converts into query print john.foaf::name john.foaf::knows << jack FOAF::Person.find_all
ActiveRDF adapters Abstract RDF (or other) data into homogeneous API SPARQL endpoints, Sesame, Jena, YARS, Redland, ... Application data (e.g. Evolution emails) Desktop metadata (e.g. Apple Spotlight metadata) Reuse ActiveRDF framework with arbitrary data sources
Problems with intuitive mapping RDF Schema ≠ OO class definition OO: class membership determines instance behaviour RDF(S): instance behaviour determines class membership several consequences, e.g. RDF(S) properties propagate upwards See (Oren et al., WWW2007) for details and solutions
Faceted Navigation for RDF Data
Faceted browsing example: iTunes
Faceted browsing: limitations facets manually configured for a fixed domain music: genre, artist, album, title books: title, author, publisher recipes: ingredients, cuisine, calories, preparation time facets do not (fully) exploit interconnected data assume data homogeneity focus on one resource type (e.g.  songs ) only facets of  songs , not of  singers, albums, publishers
Faceted browsing on the Semantic Web faceted browsing is query construction facets in semantic web  data: information space: set of triples elements of interest: set of subjects facets: set of properties now  identify operators ... SELECT ?x  WHERE ?x author ?a and ?a age “30”.
Selection operators all thirty-year-olds all single people all people who know somebody with a friend called Stefan
Intersection operator all single thirty-year-olds that know somebody who has a friend called Stefan
Inverse operators all DERI employees all working people all people working for an Irish company
Interface construction algorithm select resources (constrain information space) select facets (arcs in constrained space) rank facets (identify most interesting facets) select ?s where ... select ?p where ...
Facet browsing: decision tree faceted browsing: constructing & traversing decision tree ...
Facet ranking: optimise decision tree decision tree affects navigation efficiency cardinality author: 300 values (all names unique) publisher: 5 values (only few topics) balance publisher: Springer (82%), rest (18%) topic: logic (30%), p2p (30%), web (40%) frequency location 5% (almost never given) author 100%  (no anonymous publications)
SIOC explorer Aggregate online community sources Dynamic faceted navigation Built on ActiveRDF and Ruby on Rails
JeromeDL the Semantic Digital Library Sharing and Interconnecting Knowledge Sebastian R. Kruk
Motivation How to integrate  and search  information from different  bibliographic  sources?  How to share and interconnect knowledge among people?
Yesterday ’s   world  of digital  content Digital library Database and archive (storage) Digital bibliographic descriptions (metadata)  Full-text search (interface) Pros: Content accessible online Federations of libraries – visit less places Cons: Lonely user No one to talk to, we need to find the right keywords, what if we do not know them (“man without an ear” paintings example) Still many problems with interconnecting (different) libraries
To morrow  of interconnected , social   media Social Semantic Information Spaces Semantic description (interconnected metadata) Annotations provided by users (social metadata) Collaborative search and browsing (interface) Features Search and browsing based on semantics empowers users Users contribute to the classification process Users can understand community driven annotations Users enhance digital content using blogs, wikis on the side RDF provides bases for interconnection of digital libraries
JeromeDL -  Properties Support for different kinds of  metadata  (DublinCore, BibTeX, MARC21)  Supporting  users and communities : users have control over their profile information; community-aware profiles integrated with bibliographic descriptions support for  community-generated knowledge
Metadata and Services in JeromeDL
Semantic  Metadata and Services
Browsing the data graph  – why? The search  does not end  on a (long) list of results The results are not a list (!) but a  graph „ Lost  in hyperspace” A need for  unified UI and services  for filter/narrow and browse/expand services Share browsing experience –  navigate collaboratively
Browsing the data graph  – how? Defines  REST  access to services and their composition Basic services:  access, search, filter, similar, browse, combine Meta services : RDF serialization, subscription channels, service ID generation ,  Context services : manage contexts, manage service calls/compositions in the context, lists contexts Statistics services : properties, values,  tokens
Browsing the data graph JeromeDL exploits interconnected data
Browsing the data graph … to allow browsing
Semantic  Metadata and Services
Social Semantic Collaborative Filtering Why? The bottom-line of acquiring knowledge:  informal communication  (“word of mouth”)  How? Everyone classifies  (filters) the information in bookmark folders (user-oriented taxonomy) Peers share  (collaborate over) the information (community-driven taxonomy) Result? Knowledge “flows“  from the expert  through the social network to the user System amass a lot of information  on  user/community profile  (context)
Social Semantic Collaborative Filtering Problems? The  horizon of a social network   (2-3 degrees of separation) How to handle  fine-grained information  (blogs, wikis, etc.) Solutions?  Inference engine to  suggest knowledge  from the outskirts of the social network Support for  SIOC metadata : SIOC browser in SSCF Annotations and evaluations of “local” resources
Social Semantic Collaborative Filtering foaf:knows xfoaf:include xfoaf:bookmark
Summary Some of DERI’s open-source SemWeb technology: Online communities metadata: SIOC http://sioc-project.org Data mapping: ActiveRDF http://activerdf.org Semantic Content Repository: JeromeDL http://jeromedl.org Faceted navigation: BrowseRDF, MultiBeeBrowse http://browserdf.org Social knowledge sharing: SSCF http://s3b.corrib.org Much more: http://deri.ie

Semantic Web in Action

  • 1.
    Semantic Web inAction Stefan Decker, Eyal Oren, Sebastian R. Kruk
  • 2.
    Outline Introduction aboutDERI Interlinking online communities: SIOC Application development: ActiveRDF & BrowseRDF Sharing and interconnecting knowledge: JeromeDL Summary
  • 3.
    DERI Galway –Mission DERI Galway’s m ission is “to exploit semantics for helping p eople o rganisations s ystems to better collaborate and interoperate”.
  • 4.
    Some statistics FoundedJune 2003 with 1 fulltime member Status May 2007: 98 members Core fulltime research active members: 2 Professors 6 additional senior scientific researchers 9 PostDocs 5 Research Staff 58 PhD, Master Students & Interns 18 members are administration & management, industry and community outreach, university liaison, subcontractors Still hiring aggressively
  • 5.
    “ An extensionof the current Web in which information is given well-defined meaning, better enabling computers and people to work in cooperation.” Sir Tim Berners-Lee et al., Scientific American, 2001: tinyurl.com/i59p “… allowing the Web to reach its full potential…” with far-reaching consequences “ The next generation of the Web” What is the Semantic Web? (beware the hype)
  • 6.
  • 7.
    Social semantic informationspaces: SW 2.0 Web 2.0 and social software
  • 8.
    SIOC: Semantically InterlinkedCommunity Sites Stefan Decker
  • 9.
    What is SIOC?Semantically-Interlinked Online Communities (SIOC) Connecting many types of online communities (blogs, forums, mailing lists, etc.) Interesting possibilities: Distributed linked conversations Decentralised discussion channels and communities “ I […] think the concept is HOT” – Robert Douglass, Drupal Developer
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
    How can SIOCdata be used?
  • 22.
    Browsing SIOC withTimeLine (1)
  • 23.
    Browsing SIOC withTimeLine (2)
  • 24.
    Create SIOC exportmodules for popular open-source discussion systems Infecting the Web Infrastructure: During next upgrade cycle gigabytes of community data become available SIOC metadata exporters created for: Content management system (Drupal) Bulletin board system (phpBB) Blogging system (WordPress) French blogging system (DotClear) How can SIOC disseminated?
  • 25.
  • 26.
    Next steps : Add Onion Rings of Vocabularies RDF Calendar Microformats
  • 27.
    Semantic Web applicationdevelopment: ActiveRDF and BrowseRDF Eyal Oren
  • 28.
    Semantic Web applications:Database-driven web applications Semantic Web applications Centralised Decentralised One fixed schema Semi-structured One fixed vocabulary Arbitrary vocabulary Centralised publishing Publish anywhere One datasource Many distributed datasources Closed system s Open systems
  • 29.
    Motivation relational webapplications: database object-relational mapping web application framework
  • 30.
    Motivation relational webapplications: database object-relational mapping web application framework
  • 31.
    Motivation relational webapplications: semantic web applications: database object-relational mapping web application framework
  • 32.
    Motivation relational webapplications: semantic web applications: database object-relational mapping web application framework data source
  • 33.
    Motivation relational webapplications: semantic web applications: database object-relational mapping web application framework data source RDF store
  • 34.
    Motivation relational webapplications: semantic web applications: database object-relational mapping web application framework ??? data source RDF store ???
  • 35.
    Motivation relational webapplications: semantic web applications: database object-relational mapping web application framework ??? data source RDF store ??? ActiveRDF Ruby on Rails
  • 36.
    ActiveRDF: RDF(S) toOO mapping Intuitive mapping: RDF(S) classes to OO classes RDF resources to OO objects RDF triples to OO attribute values foaf:Person a rdfs:Class. john a foaf:Person. john foaf:name “John Breslin”. Person name:string john: Person name: “John Breslin”
  • 37.
    ActiveRDF examples printnames of john’s friends find all 30-year olds named John
  • 38.
    ActiveRDF architecture proxyobjects represent RDF resource, convert methods into queries abstract query API manages collection of data sources wraps RDF store with its own API
  • 39.
    ActiveRDF object managerRepresents RDF resources (including RDFS classes) t hrough proxy objects Intercepts each method call, converts method call into read/write query Intercepts all dynamic finders calls, converts into query print john.foaf::name john.foaf::knows << jack FOAF::Person.find_all
  • 40.
    ActiveRDF adapters AbstractRDF (or other) data into homogeneous API SPARQL endpoints, Sesame, Jena, YARS, Redland, ... Application data (e.g. Evolution emails) Desktop metadata (e.g. Apple Spotlight metadata) Reuse ActiveRDF framework with arbitrary data sources
  • 41.
    Problems with intuitivemapping RDF Schema ≠ OO class definition OO: class membership determines instance behaviour RDF(S): instance behaviour determines class membership several consequences, e.g. RDF(S) properties propagate upwards See (Oren et al., WWW2007) for details and solutions
  • 42.
  • 43.
  • 44.
    Faceted browsing: limitationsfacets manually configured for a fixed domain music: genre, artist, album, title books: title, author, publisher recipes: ingredients, cuisine, calories, preparation time facets do not (fully) exploit interconnected data assume data homogeneity focus on one resource type (e.g. songs ) only facets of songs , not of singers, albums, publishers
  • 45.
    Faceted browsing onthe Semantic Web faceted browsing is query construction facets in semantic web data: information space: set of triples elements of interest: set of subjects facets: set of properties now identify operators ... SELECT ?x WHERE ?x author ?a and ?a age “30”.
  • 46.
    Selection operators allthirty-year-olds all single people all people who know somebody with a friend called Stefan
  • 47.
    Intersection operator allsingle thirty-year-olds that know somebody who has a friend called Stefan
  • 48.
    Inverse operators allDERI employees all working people all people working for an Irish company
  • 49.
    Interface construction algorithmselect resources (constrain information space) select facets (arcs in constrained space) rank facets (identify most interesting facets) select ?s where ... select ?p where ...
  • 50.
    Facet browsing: decisiontree faceted browsing: constructing & traversing decision tree ...
  • 51.
    Facet ranking: optimisedecision tree decision tree affects navigation efficiency cardinality author: 300 values (all names unique) publisher: 5 values (only few topics) balance publisher: Springer (82%), rest (18%) topic: logic (30%), p2p (30%), web (40%) frequency location 5% (almost never given) author 100% (no anonymous publications)
  • 52.
    SIOC explorer Aggregateonline community sources Dynamic faceted navigation Built on ActiveRDF and Ruby on Rails
  • 53.
    JeromeDL the SemanticDigital Library Sharing and Interconnecting Knowledge Sebastian R. Kruk
  • 54.
    Motivation How tointegrate and search information from different bibliographic sources? How to share and interconnect knowledge among people?
  • 55.
    Yesterday ’s world of digital content Digital library Database and archive (storage) Digital bibliographic descriptions (metadata) Full-text search (interface) Pros: Content accessible online Federations of libraries – visit less places Cons: Lonely user No one to talk to, we need to find the right keywords, what if we do not know them (“man without an ear” paintings example) Still many problems with interconnecting (different) libraries
  • 56.
    To morrow of interconnected , social media Social Semantic Information Spaces Semantic description (interconnected metadata) Annotations provided by users (social metadata) Collaborative search and browsing (interface) Features Search and browsing based on semantics empowers users Users contribute to the classification process Users can understand community driven annotations Users enhance digital content using blogs, wikis on the side RDF provides bases for interconnection of digital libraries
  • 57.
    JeromeDL - Properties Support for different kinds of metadata (DublinCore, BibTeX, MARC21) Supporting users and communities : users have control over their profile information; community-aware profiles integrated with bibliographic descriptions support for community-generated knowledge
  • 58.
  • 59.
    Semantic Metadataand Services
  • 60.
    Browsing the datagraph – why? The search does not end on a (long) list of results The results are not a list (!) but a graph „ Lost in hyperspace” A need for unified UI and services for filter/narrow and browse/expand services Share browsing experience – navigate collaboratively
  • 61.
    Browsing the datagraph – how? Defines REST access to services and their composition Basic services: access, search, filter, similar, browse, combine Meta services : RDF serialization, subscription channels, service ID generation , Context services : manage contexts, manage service calls/compositions in the context, lists contexts Statistics services : properties, values, tokens
  • 62.
    Browsing the datagraph JeromeDL exploits interconnected data
  • 63.
    Browsing the datagraph … to allow browsing
  • 64.
    Semantic Metadataand Services
  • 65.
    Social Semantic CollaborativeFiltering Why? The bottom-line of acquiring knowledge: informal communication (“word of mouth”) How? Everyone classifies (filters) the information in bookmark folders (user-oriented taxonomy) Peers share (collaborate over) the information (community-driven taxonomy) Result? Knowledge “flows“ from the expert through the social network to the user System amass a lot of information on user/community profile (context)
  • 66.
    Social Semantic CollaborativeFiltering Problems? The horizon of a social network (2-3 degrees of separation) How to handle fine-grained information (blogs, wikis, etc.) Solutions? Inference engine to suggest knowledge from the outskirts of the social network Support for SIOC metadata : SIOC browser in SSCF Annotations and evaluations of “local” resources
  • 67.
    Social Semantic CollaborativeFiltering foaf:knows xfoaf:include xfoaf:bookmark
  • 68.
    Summary Some ofDERI’s open-source SemWeb technology: Online communities metadata: SIOC http://sioc-project.org Data mapping: ActiveRDF http://activerdf.org Semantic Content Repository: JeromeDL http://jeromedl.org Faceted navigation: BrowseRDF, MultiBeeBrowse http://browserdf.org Social knowledge sharing: SSCF http://s3b.corrib.org Much more: http://deri.ie