Implementing Semantic Web applications : reference architecture and challenges

To date, Semantic Web research has tended to focus on data modelling challenges, at the expense of software architecture and engineering issues. Our empirical analysis shows that implementing Semantic Web technologies creates challenges which can affect the whole application. Standard solutions and best practices for Semantic Web technologies are just emerging. The lack of these has been an obstacle for implementing and deploying applications which exploit Semantic Web technologies for real world use cases. In this paper we conduct an empirical survey of Semantic Web applications. We use this empirical data to propose a reference architecture for Semantic Web applications, and to identify the four main challenges for implementing the most common functionality related to Semantic Web technologies from a software engineering perspective: (i) the issues involved in integrating noisy and heterogeneous data, (ii) the mismatch of data models and APIs between components, (iii) immature and belated best practices and standards, and (iv) the distribution of application logic across components. We describe two orthogonal approaches for mitigating these challenges: (a) simplifying the application architecture by delegating generic functionality to external service providers, and (b) assembling and customising of components provided by software frameworks for rapid development of complete applications.

[1]  Andreas Abecker,et al.  Ontologies for Knowledge Management , 2004, Handbook on Ontologies.

[2]  Eyal Oren,et al.  A Prototype to Explore Content and Context on Social Community Sites , 2007, CSSW.

[3]  Armin Haller,et al.  A Flexible Integration Framework for Semantic Web 2.0 Applications , 2007, IEEE Software.

[4]  Ian Horrocks,et al.  OIL: An Ontology Infrastructure for the Semantic Web , 2001, IEEE Intell. Syst..

[5]  Stefan Decker,et al.  Semantic Sitemaps: Efficient and Flexible Access to Datasets on the Semantic Web , 2008, ESWC.

[6]  Li Ding,et al.  Characterizing the Semantic Web on the Web , 2006, SEMWEB.

[7]  Andreas Harth,et al.  SIOC: an approach to connect web-based communities , 2006, Int. J. Web Based Communities.

[8]  Andreas Harth,et al.  Performing Object Consolidation on the Semantic Web Data Graph , 2007, I3.

[9]  Huajun Chen,et al.  The Semantic Web , 2011, Lecture Notes in Computer Science.

[10]  Jorge S. Cardoso The Semantic Web Vision: Where Are We? , 2007, IEEE Intelligent Systems.

[11]  Tom Heath,et al.  How to Publish Linked Data on the Web - Proposal for a Half-day Tutorial at ISWC2008 , 2008 .

[12]  Michael Eichberg,et al.  A Handbook of Software and Systems Engineering , 2009 .

[13]  Elena Paslaru Bontas Simperl,et al.  ONTOCOM Revisited: Towards Accurate Cost Predictions for Ontology Development Projects , 2009, ESWC.

[14]  Eyal Oren,et al.  Sindice.com: a document-oriented lookup index for open linked data , 2008, Int. J. Metadata Semant. Ontologies.

[15]  Andreas Harth,et al.  An Interactive Map of Semantic Web Ontology Usage , 2008, 2008 12th International Conference Information Visualisation.

[16]  Alta van der Merwe,et al.  A Functional Semantic Web Architecture , 2008, ESWC.

[17]  Avraham Leff,et al.  Web-application development using the Model/View/Controller design pattern , 2001, Proceedings Fifth IEEE International Enterprise Distributed Object Computing Conference.

[18]  Ian Horrocks,et al.  The Semantic Web: The Roles of XML and RDF , 2000, IEEE Internet Comput..

[19]  Dieter Fensel,et al.  Towards the Semantic Web: Ontology-driven Knowledge Management , 2002 .

[20]  Eyal Oren,et al.  ActiveRDF: Embedding Semantic Web data into object-oriented languages , 2008, J. Web Semant..

[22]  Mary Shaw,et al.  An Introduction to Software Architecture , 1993, Advances in Software Engineering and Knowledge Engineering.

[23]  Enrico Motta,et al.  Characterizing Knowledge on the Semantic Web with Watson , 2007, EON.