Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Semantic Web Workshop...
-
Upload
benjamin-heitmann -
Category
Technology
-
view
108 -
download
2
description
Transcript of Leveraging existing Web Frameworks for a SIOC explorer (Scripting for the Semantic Web Workshop...
Chapter Copyright 2007 Digital Enterprise Research Institute. All rights reserved. www.deri.org
Digital Enterprise Research Institute www.deri.ie
Leveraging existing Web frameworks for a SIOC explorer
Benjamin Heitmann and Eyal OrenDigital Enterprise Research Institute,National University of Ireland, Galway
1
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Overview
Part 1: Introducing SIOC Enabling Mash-Ups of community focused content
Part 2: Faceted browsing of community sites Balancing between domain specific and domain agnostic
Part 3:Reusing existing web frameworks Ruby on Rails meets the Semantic Web
2
Chapter Copyright 2007 Digital Enterprise Research Institute. All rights reserved. www.deri.org
Digital Enterprise Research Institute www.deri.ie
Part1: Introducing SIOC
3
Benjamin Heitmann and Eyal Orenof 18
Use case: tracking a music community
?
4
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Solving the use case
Tracking an emerging music community over time Question: What is happening in the Dubstep scene
in Dublin? Solutions that do not work:
Google:– Sites updated too frequently– Bad results: new and relevant pages get buried due to ranking
RSS: – not all types of sites have RSS– RSS feeds do not include all relevant information
5
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
SIOC: enables community mashups
web siteexporters
linked data:
microformats (contact, location, event)
after aggregation:
6
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Details: the SIOC ontology
SIOC allows re-using the data at the center of a community: content:
– blog and forum posts– wiki pages– freeform text (new types can be defined)
topics: – tags and categories– complex hierarchies possibly with SKOS
user relations:
FOAF and openID identities
the next SIOC version will be geared towards major social networking sites and Web 2.0 hub sites
7
Chapter Copyright 2007 Digital Enterprise Research Institute. All rights reserved. www.deri.org
Digital Enterprise Research Institute www.deri.ie
Part 2:Faceted browsing of community
sites
8
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Exploring SIOC data
SIOC Explorer crawls and aggregates SIOC data allows exploring and browsing
– filter by topic– view posts of a certain day
Implements faceted browsing step-wise filtering of displayed content filtering works across sites
Available at http://activerdf.org/sioc/
9
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Filtering demonstration
10
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Faceted browsing done right
Balance between domain specific
– only show SIOC forums and SIOC posts– focus user attention
domain agnostic– all other data is used for navigation– use unexpected data as filter– example: use author hobbies @@foaf interests as filter
fine tuning: disable a-priori unwanted predicates
complex facets use entities with multiple properties as filter example: see all post of a FOAF person with a FOAF
homepage http://eyaloren.org
11
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Complex facets demonstration
12
Chapter Copyright 2007 Digital Enterprise Research Institute. All rights reserved. www.deri.org
Digital Enterprise Research Institute www.deri.ie
Part 3: Reusing existing web frameworks
13
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Comparing the nature of Web and Semantic Web applications
14
Web applicationsSemantic Web applications
data: schema compliant semi-structured and dynamic
schema: fixed arbitrary and evolving
data sources: single and centralised
multiple and distributed
model semantics: closed world open world
runtime state: closed system open system
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Frameworks for the Semantic Web?
15
enough sophisticated Web Application Frameworks exist today:
but: no integration of Semantic Web libraries into the framework architecture
ActiveRDF fits transparently into the Ruby on Rails architecture
View
Controller
Model
ActiveResource
ActiveRDF
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
ActiveRDF bridges the gaps
between data models object oriented access to RDF triples:
eyal.foaf::knows = knud ActiveRDF can provide model objects for Rails Ruby meta-programming allows ActiveRDF to emulate
open world semantics
between developer communities Semantic Web developers:
– benefit from existing Ruby and Rails ecosystem
Web and Web 2.0 developers:– gain access to Semantic Web infrastructure
16
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
ActiveRDF code examples:
17
Model: create a Rails model objects from RDF schemaNamespace.register :sioc, 'http://rdfs.org/sioc/ns#'class
Controller: application logic access to RDF dataclass PostController < ApplicationController require_dependency ‘sioc’ def display_all_posts @displayed_posts = SIOC::Post.find_all render :action => ‘list’ endend
View: display RDF data in user interface<% @displayed_posts.each do |p| %> <%= p.title %><% end %>
Digital Enterprise Research Institute www.deri.ie
Benjamin Heitmann and Eyal Orenof 18
Summary
SIOC explorer SIOC enables re-use of the data at the centre communities
and social networks The SIOC explorer allows faceted browsing of community
data All data included in the SIOC export can be use for
navigating the community content
ActiveRDF transparently integrates with Ruby on Rails bridges the gaps between
– Web developers and Semantic Web developers– Semantic Web data model and Ruby scripting
18