14
Copyright 2009 Digital Enterprise Research Institute. All rights reserved. Digital Enterprise Research Institute www.deri.ie Implementing Semantic Web applications: reference architecture and challenges Benjamin Heitmann, Sheila Kinsella , Conor Hayes, and Stefan Decker Workshop on Semantic Web Enabled Software Engineering 2009

Implementing Semantic Web applications: reference architecture and challenges

Embed Size (px)

DESCRIPTION

Best paper award at the workshop for Semantic Web enabled software engineering 2009, at the International Semantic Web Conference 2009. Full paper at: http://ceur-ws.org/Vol-524/swese2009_2.pdf Summary of the slides and the paper: * an empirical analysis of 98 Semantic Web applications based on an architectural analysis and an application functionality questionnaire * a reference architecture for Semantic Web applications * the main challenges of implementing Semantic Web technologies and their effect on an example application * approaches for mitigating the challenges

Citation preview

Page 1: Implementing Semantic Web applications:  reference architecture and challenges

Chapter♥ Copyright 2009 Digital Enterprise Research Institute. All rights reserved.

Digital Enterprise Research Institute www.deri.ie

Implementing Semantic Web applications:reference architecture and challenges

Benjamin Heitmann, Sheila Kinsella, Conor Hayes, and Stefan Decker

Workshop on Semantic Web Enabled Software Engineering 2009

Page 2: Implementing Semantic Web applications:  reference architecture and challenges

2

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Introduction

Focus of Semantic Web research until now:benefits of Semantic Web technology

Less research on: costs, effort, challenges of Semantic Web technology

Result:estimating cost/benefit offset for Semantic Web technologies is difficultobstacle for uptake of Semantic Web technologies by real-world projects

Our contributions: identify main challenges and outline Software Engineering solutions

2

Page 3: Implementing Semantic Web applications:  reference architecture and challenges

3

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Overview

3

Empirical Analysis of 98 Semantic Web applicationsarchitectural analysis + app functionality questionnaire

Reference Architecture for Semantic Web applicationsMain challenges of implementing Semantic Web technologies

and their effect on an example applicationApproaches for mitigating the challenges

Page 4: Implementing Semantic Web applications:  reference architecture and challenges

4

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Empirical analysis - Architectural

Goal: identify common functionality Result: components, allow comparison between apps98 papers about apps from SemWeb challenge 2003-2008 & Scripting for SemWeb challenge 2006-2008

4

Page 5: Implementing Semantic Web applications:  reference architecture and challenges

5

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Reference Architecture for Semantic Web applications

Empirical basis: architectural analysis provides standard decomposition criteriaallows comparing of functionality

5

Page 6: Implementing Semantic Web applications:  reference architecture and challenges

6

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Empirical analysis - Functionality

Goal: characterise capabilities of componentsResult: statistics about the range of variations for

each componentResults for 37 apps validated by authorsSurvey covers 27 properties in 7 areas of

functionality

6

Page 7: Implementing Semantic Web applications:  reference architecture and challenges

7

Empirical analysis - Functionality

Data Interface: data sources used (external/decentralised/evolving ?)Persistent Storage: Semantic Web standards supported (e.g. RDF, OWL, SPARQL ?)User Interface: generic/domain specificData Integration: manual/automaticSearch Service: structured/unstructured dataAuthoring: read-only/edit/create new dataCrawling: one-time/continuous

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Functionality Variations(examples)

7

Page 8: Implementing Semantic Web applications:  reference architecture and challenges

8

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Implementation challenges (1)

integration service is very common (72%)expensive: 80% require manual intervention76% allow updating data after initial integrationReasons:

use of non-standard termsincorrect usage of vocabulariesmultiple URIs for the same objects and incorrect merging

8

1. Integrating noisy and heterogeneous data

Page 9: Implementing Semantic Web applications:  reference architecture and challenges

9

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Implementation challenges (2)

70% allow access or importing of external data 60% can export data or are reusable as sourceonly 1/3 allow creation of new dataReason: standards are just emerging:

Linked Data principles: 2006, ~8 years after RDF (1999)RDFa for embedding RDF in HTML: finalised 2008GRDDL for converting (X)HTML to RDF: finalised 2007SPARQL update: not finalisedRDF forms and RDF pushback: not finalised

9

2. Missing or belated conventions and standards

Page 10: Implementing Semantic Web applications:  reference architecture and challenges

10

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Implementation challenges (3)

components have different data models (majority)object oriented (92%), relational database, graph based

slow, non-native APIs between components

10

3. Mismatch of data models and APIs between components:

4. Distribution of application logic across multiple components

Result of 3+4: higher maintenance costs, performance loss due to non-native API overhead

Logic included not just in code but queries, rules, formal vocabularies

58% using inferencing, 24% using queries

Page 11: Implementing Semantic Web applications:  reference architecture and challenges

11

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Example Application: SIOC explorer

11

3 - Mismatched data models: graph/relational/OOMismatched APIs: ruby<->java, SPARQL (slow)4 - distributed app logic: crawler, integration, primary app logic

1 - Integration: all data is RDF+SIOC, still 2 integration steps required2 - Unclear best practices: every SIOC exporter requires different crawling

Page 12: Implementing Semantic Web applications:  reference architecture and challenges

12

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Mitigating the challenges (1)

72% implement integration, 3 components required

Delegating generic integration simplifies architectureDrawback: application specific integration may still be

necessary

12

1. Delegating generic functionality to external providers

Page 13: Implementing Semantic Web applications:  reference architecture and challenges

13

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Mitigating the challenges (2)

most apps in survey created on case-by-case basis:multiple librariesmultiple programming languages mismatch of native APIsdistributed application logic

provide frameworks / software factories to assemble and customise complete applications

provide generic data integrationimplement best practices and guidelinescentralise application logicallow app specific customisation

inspiration: Ruby on Rails, PHPCake, Django (Python), Struts (Java)

13

2. Assembling applications from components:

Page 14: Implementing Semantic Web applications:  reference architecture and challenges

14

Digital Enterprise Research Institute www.deri.ie

[email protected] slide of 14

Summary

main challenges of implementing SemWeb techcost of integrating noisy or heterogeneous data

(non-RDF and RDF data)missing or belated standards and conventionsmismatch of data models and APIs between componentsdistribution of application logic across components

approaches to mitigate the challenges:delegate generic functionality to external servicessupport assembly of complete applications with

frameworksempirical foundation: analysis of 98 Semantic Web

applications

14