Composing Frameworks and Components for Families of Semantic Web Applications

This paper outlines a first methodology for a framework and component technology for Semantic Web applications, layered constraint frameworks. Due to the heterogeneity of the Semantic Web, different ontology languages will coexist. Applications must be able to work with several of them, and for good reuse, they should be parameterized by them. As a solution, we combine layered frameworks with architecture systems and explicit constraint specifications. Layered constraint frameworks can be partially instantiated on 6 levels, allowing for extensive reuse of components and variability of applications. Not only that applications can be instantiated for a certain product or web service family, also architectural styles, component models, and ontology languages can be reused or varied in applications. And hence, for the first time, this proposes a reuse technology for ontology-based applications on the heterogeneous Semantic Web.

[1]  Jan Bosch,et al.  Framework integration problems, causes, solutions , 1999, CACM.

[2]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[3]  Shi-Kuo Chang,et al.  Advances in Software Engineering and Knowledge Engineering , 1993, Series on Software Engineering and Knowledge Engineering.

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

[5]  Gregory D. Abowd,et al.  Formalizing style to understand descriptions of software architecture , 1995, TSEM.

[6]  Dirk Riehle,et al.  Framework development for large systems , 1997, CACM.

[7]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[8]  Uwe Aßmann,et al.  Invasive Software Composition , 2003, Springer Berlin Heidelberg.

[9]  Hans Albrecht Schmid,et al.  Systematic framework design by generalization , 1997, CACM.

[10]  Satoshi Matsuoka,et al.  ECOOP'97 — Object-Oriented Programming , 1997, Lecture Notes in Computer Science.

[11]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.