18th European Symposium on Computer Aided Process Engineering – ESCAPE 18 Bertrand Braunschweig and Xavier Joulia (Editors) © 2008 Elsevier B.V./Ltd. All rights reserved. OntoCAPE 2.0 – a (Re-)Usable Ontology for Computer-Aided Process Engineering Jan Morbach, Andreas Wiesner, Wolfgang Marquardt AVT-Lehrstuhl für Prozesstechnik, RWTH Aachen University, Templergraben 55, 52056 Aachen, Germany Abstract This contribution gives an overview on version 2.0 of OntoCAPE, a formal ontology for the domain of Computer-Aided Process Engineering (CAPE). We argue that a useful ontology must simultaneously strive for usability and reusability, explain how these goals are achieved by OntoCAPE, and present some application examples. Keywords: Ontology, CAPE, information modeling, knowledge representation. 1. Introduction An ontology is an explicit specification of a conceptualization, typically involving classes, their relations, and axioms for clarifying the intended semantics [1]. It constitutes a structured framework for the storage of information and knowledge, which can be reused and shared across different software applications. Particularly, ontologies have been suggested as a means to efficiently build knowledge-based software from reusable components [2]. To this end, the (generic) ontology must be transformed (i.e., extended and customized) into an application-specific knowledge base. OntoCAPE is a formal ontology designed for use with different types of CAPE tools that support such diverse tasks as mathematical modeling [3, 4], knowledge management [5], and data integration [6]. OntoCAPE emerged from two large, interdisciplinary research projects: the COGents project [3] and the IMPROVE project [7]. In IMPROVE, the conceptual basis for OntoCAPE was established by the information model CLiP [8]. Based on CLiP, the COGents project created version 1.0 of OntoCAPE [4], aiming at applications in the area of modeling and simulation. After the completion of COGents, the further development of OntoCAPE was taken over by IMPROVE. In 2007, version 2.0 was released [9], which has a broader scope than version 1.0, additionally aiming at applications in the area of process design. In the following, we will exclusively refer to OntoCAPE 2.0. Related efforts are, amongst others, the ISO 15926 Upper Ontology [10] and the POPE ontology [11]. An extensive review of these and other ontologies, including a comparison with OntoCAPE, can be found in [12]. The remainder of this paper is organized as follows: Sect. 2 gives an overview on OntoCAPE; in Sect. 3, the goals of ontology usability and reusability are introduced and discussed; Sect. 4 explicates how these goals are achieved by the design of OntoCAPE; Sect. 5 describes some prototypical software applications that demonstrate the practical applicability of the ontology; Sect. 6 concludes the paper by summarizing our findings. 2. An overview on OntoCAPE OntoCAPE is organized through three types of structural elements: layers, modules, and partial models (cf. Fig. 1). 2 J.Morbach et al. The layers subdivide OntoCAPE into different levels of abstraction, thus separating general knowledge from knowledge about particular domains and applications. The topmost Meta Layer, is the most abstract one; it holds a Meta Model that introduces fundamental modeling concepts and states the design guidelines for the construction of the actual ontology. Next, the Upper Layer of OntoCAPE defines the principles of general systems theory according to which the ontology is organized. On the subjacent Conceptual Layer, a conceptual model of the CAPE domain is established, which covers such different areas as unit operations, equipment and machinery, materials and their thermophysical properties, chemical process behavior, modeling and simulation, and others. The two bottommost layers refine the conceptual model by adding classes and relations required for the practical application of the ontology: The ApplicationOriented Layer generically extends the ontology towards certain application areas, whereas the Application-Specific Layer provides specialized classes and relations for concrete applications. notation Meta Model Meta Layer meta_model module module Layer Upper Layer OntoCAPE includes upper_level system module module partial model chemical_process_system Layer partial model CPS_realization Conceptual Layer plant plant_equipment fixture machine Application Oriented Layer Application Specific Layer apparatus applications e-procurement Fig 1: A detail of OntoCAPE demonstrating the overall structure of the ontology A module assembles a number of interrelated classes, relations, and axioms, which jointly conceptualize a particular topic (e.g., the module ‘plant’ provides a conceptualization of chemical plants). The boundaries of a module are to be chosen in such a way that the module can be designed, adapted, and reused to some extent independently from other parts of an ontology [13]. A module may include another module, meaning that if module A includes module B, the ontological definitions specified in B are valid in A and can thus be directly used (i.e., extended, refined …) in A. That way, OntoCAPE can be organized as an inclusion hierarchy of loosely coupled modules. Modules that address closely related topics are grouped into a common partial model (e.g., the partial model ‘plant_equipment’ clusters the thematically related modules ‘fixture’, ‘apparatus’, and ‘machine’). Unlike modules, partial models may be nested OntoCAPE 2.0 – a (Re-)Usable Ontology for Computer-Aided Process Engineering and may stretch across several layers. While the boundaries of the modules are chosen for practical considerations (such that the interdependencies between the individual modules are minimized), the boundaries of the partial models reflect the “natural” categorization of the domain. At present, OntoCAPE, including the Meta Model, has a total of 62 modules, which are clustered in 27 partial models; the modules on the upper three layers (down to and including the Conceptual Layer) comprise about 500 classes, 200 relations, and 1000 axioms. Additionally, OntoCAPE can be combined with other, specialized ontologies representing documents, work processes, and decision-making procedures, as described in [5, 12]. An extensive documentation of OntoCAPE as well as an implementation of the ontology in the OWL modeling language [14] are accessible at http://www.avt.rwthaachen.de/AVT/index.php?id=486 3. The challenge of (re-)usability Principally, any ontology has to meet two major goals: to be usable and to be reusable: The usability of an ontology denotes the degree to which the software component is useful for a specific task or application. The term also has the connotation of “ease of use” pertaining to the effort required by a user to operate the system. By definition, an ontology is never ready for use, but must always be adapted and refined to result in a knowledge base for the envisioned application. Therefore, the goal of ontology usability can be phrased as minimizing “the effort required to customize the ontology so that it can be used by humans or machines in a given application context” [15]. The reusability of an ontology can be defined as “the adaptation capability of an ontology to arbitrary application contexts” [15], including those contexts “that were not envisioned at the time of the creation of the ontology” [16]. Note that it is neither feasible nor desirable to design an ontology that is equally appropriate for all application contexts [17]; rather, the goal of reusability is to come up with an ontology that can be adapted to a preferably large number of applications. Unfortunately, it is difficult to simultaneously achieve high degrees of usability and reusability: Specializing in one kind of task makes the ontology more useable for this particular task, but it also decreases the likelihood of its reusability. A highly abstract ontology, on the other hand, may be applicable to a variety of different tasks, but it is unlikely to prove very useful for any of these without extensive modification and detailing. This challenge is known as the reusability-usability trade-off problem [18] in the literature. 4. Design features of OntoCAPE To resolve the aforementioned trade-off problem, OntoCAPE adopted a number of design features that were suggested in the literature. For lack of space, we will only discuss the most important ones: First to mention is the structuring of OntoCAPE into levels of abstraction, which has been recommended by numerous authors (e.g. [16, 17]). According to the trade-off problem, the general knowledge, which is located on the upper layers of OntoCAPE, can be reused in a variety of application contexts, but it is not immediately usable. By contrast, the knowledge located on the lower layers is ready for use, but problemspecific and thus hardly transferable to other applications. Thus, depending on the respective application, the appropriate level of abstraction for knowledge reuse must be found. In practice, this means that one needs to move up the ontology (starting from the Application-Specific Layer) until the encountered knowledge is generic enough to fit 3 4 J.Morbach et al. the respective application context. As an example, consider a CAPE tool, for the development of which a preferably large part of OntoCAPE is to be reused. The knowledge on the bottommost layer is application-specific and therefore of little value for any new tool. But already the above Application-Oriented Layer may contain some reusable knowledge (provided that the tool operates in an application area that is covered by OntoCAPE at all). If this is not the case, we need to move up to the Conceptual Layer; here, at the latest, some reusable knowledge can be found. Thus, one may reuse the ontology down to and including the Conceptual Layer, at least. A second design feature recommended by many ontologists (e.g., [13, 19]) is modularization, that is, the subdivision of the ontology in self-contained modules. By definition, modules have strong internal coherence but relatively loose coupling with the other parts of the ontology [17], which facilitates (i) their selective reuse and (ii) the obligatory customization effort. As for (i), one may choose to reuse only a selected part of the ontology; in this case, it is relatively simple to cut the connections between the modules to be reused and the remainder of the ontology. As for (ii), a single module can be more easily adapted and refined. The reason for this is that the newly defined terms do not have to be compatible with the entire ontology, but only with a subset, thus reducing the likelihood of inconsistencies between new and existing ontological definitions. A positive side-effect of modularization is that the modules are concise and therefore easier to deal with than a complete ontology, hence bringing further advantages with respect to maintenance and intelligibility. A third feature to be mentioned is the Meta Model, which is located on top of OntoCAPE. Its primary function is to guide the development of OntoCAPE. To this end, the Meta Model explicitly states the underlying design principles and establishes general standards for ontology engineering. Due to these properties, the Meta Model has also proven beneficial for the reuse of the ontology: Firstly, when the ontology needs to be modified for a particular application, the Meta Model ensures a consistent modeling style. Secondly, by means of so-called ‘design patterns’ – i.e., templates suggesting best practice solutions for recurring design problems – the Meta Model provides valuable guidance for extending the ontology. Thirdly, by examining the Meta Model, new users can quickly familiarize themselves with the modeling style of the entire ontology. Consequently, the users may evaluate at an early stage if the ontology is generally compatible with the target application. This is of special importance, since assessing the suitability of an ontology for a given application is one of the most time-consuming tasks in ontology reuse [15]. 5. Applications of OntoCAPE Some prototypical software applications have been developed around OntoCAPE, which demonstrate the ontology’s capability for reuse as well as its wide range of applicability: In the COGents project [2], OntoCAPE forms part of a multi-agent framework, which supports the selection and retrieval of suitable process modeling components from distributed model libraries. Within this framework, OntoCAPE serves as a communication language between interacting software agents, and between the software agents and the human users. Concepts from OntoCAPE are used to formulate a modeling task specification, which is then matched against available process modeling components also described through OntoCAPE. OntoCAPE has also been applied for the computer-aided construction of process models following an ontology-based approach [4]. This approach constructs a OntoCAPE 2.0 – a (Re-)Usable Ontology for Computer-Aided Process Engineering mathematical model in two successive steps. In the first step, a human modeler constructs a conceptual model of the chemical process; this is accomplished by selecting, instantiating, and connecting appropriate concepts from OntoCAPE that reflect the structural and phenomenological properties of the chemical process. Based on these specifications, the mathematical model is automatically created by a model generation engine in the second step: The engine selects and retrieves appropriate model components from a library of model building blocks; these model components are subsequently customized and aggregated to a mathematical model, according to the specifications of the conceptual model. OntoCAPE has furthermore been reused for the implementation of a Process Data Warehouse (PDW), which supports the management of experience knowledge in process design [5]. Within the PDW, OntoCAPE is utilized for the annotation of electronic documents and data stores. That way, one obtains a consistent, integrated representation of the contents of these heterogeneous information sources. These content descriptions can then be processed and evaluated by the semantic searching and browsing functions of the PDW, which support the navigation between and the retrieval of information resources. Currently, OntoCAPE is applied in an industrial project that is run in cooperation with partners from the chemical and software industries. The goal of this project is the development of an ontology-based software prototype for the integration and reconciliation of engineering data from distributed information sources [6]. In each reuse cycle, OntoCAPE has been tested and revised. As part of this process, a number of modeling errors and inconsistencies have been detected and eliminated. Moreover, the ontology has been remodeled such way that it is now applicable to a large number of tasks. Consequently, the quality of the ontology has gradually improved throughout these projects. 6. Conclusion We have presented OntoCAPE, a formal ontology for the domain of computer-aided process engineering that is explicitly designed for reuse. An implementation of OntoCAPE in OWL, supplemented by extensive documentation, can be downloaded free of charge at our website. OntoCAPE’s modular, layered structure, supports the partial, selective reuse of the ontology and allows an easy adaptation to various task requirements. The Meta Model provides guidance for extensions and modifications of the ontology and enables a fast screening for compatibility with application requirements. OntoCAPE has been applied in a number of software projects covering the application areas of modeling and simulation as well as process design and engineering. In the course of these projects, the quality of the ontology has gradually improved: Some former errors and deficiencies could be detected and corrected. Moreover, certain parts of the ontology have been reformulated – either to better support efficient reasoning or to enable a more user-friendly representation. As a result, OntoCAPE now constitutes a validated ontology of proven usability, with a high degree of reusability. References [1] M. Uschold and M. Gruninger, Ontologies: Principles, Methods and Applications, Knowl. Eng. Rev., 11 (1996) 93-155. [2] R. Neches and R. Fikes and T. Finin and T. Gruber and R. Patil and T. Senator and W.R. Swartout, Enabling Technology for Knowledge Sharing, AI Magazine, 12(3) (1991) 36-56. 5 6 J.Morbach et al. [3] B. Braunschweig and E.S. Fraga and Z. Guessoum and D. Paen and D. Pinol and A. Yang, COGents: Cognitive Middleware Agents to Support e-CAPE, in: B. Stanford–Smith and E. Chiozza and M. Edin (eds.): Challenges and Achievements in E–business and E–work, IOS Press, Amsterdam, 2002, pp. 1182–1189. [4] A. Yang and W. Marquardt, An Ontology-Based Approach to Conceptual Process Modeling, in: A. Barbarosa-Póvoa and H. Matos (eds.): Proceedings of the European Symposium on Computer Aided Process Engineering – ESCAPE 14, Elsevier, 2004, pp. 1159-1164. [5] S.C. Brandt, J. Morbach, M. Miatidis, M. Theißen, M. Jarke, W. Marquardt (2008): An ontology-based approach to knowledge management in design processes. Comp. Chem. Eng. 32, 320-342. [6] J. Morbach and W. Marquardt, Ontology-Based Integration and Management of Distributed Design Data. To appear in: M. Nagl and W. Marquardt (eds.): Collaborative and Distributed Chemical Engineering Design Processes: From Understanding to Substantial Support, Springer, Berlin, 2008, Chapter 7.1. [7] W. Marquardt and A. Nagl, Workflow and information centered support of design processes – the IMPROVE perspective, Comput. Chem. Eng., 29 (2004) 65-82. [8] B. Bayer and W. Marquardt, Towards integrated information models for data and documents, Comput. Chem. Eng., 28 (2004) 1249-1266. [9] J. Morbach and A. Yang and W. Marquardt, OntoCAPE - a Large-Scale Ontology for Chemical Process Engineering, Eng. Appl. Artif. Intel., 20(2) (2007) 147-161. [10] R. Batres and M. West and D. Leal and D. Price and K. Masaki and Y. Shimada and T. Fuchino and Y. Naka, An Upper Ontology Based on ISO 15926, Comput. Chem. Eng., 31 (2007) 519-534. [11] V. Venkatasubramanian and C. Zhao and G. Joglekar and A. Jain and L. Hailemariam and P. Suresh and P. Akkisetty and K. Morris and G. Reklaitis, Ontological Informatics Infrastructure for Pharmaceutical Product Development and Manufacturing, Comput. Chem. Eng., 30(10-12) (2006) 1482-1496. [12] J. Morbach and M. Theißen and W. Marquardt, Integrated Application Domain Models for Chemical Engineering, To appear in: M. Nagl and W. Marquardt (eds.): Collaborative and Distributed Chemical Engineering: From Understanding to Substantial Design Process Support, Springer, Berlin, 2008, Chapter 2.6. [13] H. Stuckenschmidt and M. Klein, Integrity and Change in Modular Ontologies, in: Proceedings of the International Joint Conference on Artificial Intelligence - IJCAI '03, Acapulco, Mexico, Morgan Kaufmann, 2003, pp. 900-905. [14] S. Bechhofer and F. van Harmelen and J. Hendler and I. Horrocks and D.L. McGuinness and P.F. Patel-Schneider and L.A. Stein, OWL Web Ontology Language Reference, W3C Recommendation, available at http://www.w3.org/TR/owl-ref/ (2004). [15] E. Pâslaru-Bontaş, Contextual Approach to Ontology Reuse: Methodology, Methods and Tools for the Semantic Web, PhD thesis, FU Berlin, available at http://www.diss.fuberlin.de/2007/230/index.html (2007). [16] T. Russ and A. Valente and R. MacGregor and W. Swartout, Practical experiences in trading off ontology usability and reusability, in: Proceedings of the Knowledge Acquisition Workshop (KAW99), Banff, Alberta, 1999. [17] W.N. Borst, Construction of engineering ontologies for knowledge sharing and reuse, CTIT PhD-thesis series, Universiteit Twente , No. 97-14, available at http://doc.utwente.nl/17864/ (1997).. [18] G. Klinker and C. Bhola and G. Dallemagne and D. Marques and J. McDermott, Usable and Reusable Programming Constructs, Knowl. Acquis., 3(2) (1991) 117-135. [19] A. Rector, Modularisation of Domain Ontologies Implemented in Description Logics and Related Formalisms Including OWL, in: S. Haller and I. Russell (eds.), Proceedings of the 16th International FLAIRS Conference, AAAI Press, Florida, 2003. [20] T.R. Gruber and G.R. Olsen, An ontology for engineering mathematics, in: J. Doyle and P. Torasso and E. Sandewall (eds.), Fourth International Conference on Principles of Knowledge Representation and Reasoning, Bonn, Germany, Morgan Kaufmann, 1994, pp. 258-269.