Plug-and-Play: Construction of Task-Speci c Expert-System Shells Using Sharable Context Ontologies

Previous approaches to the reuse of problem-solving methods have relied on the existence of a global data model to serve as the mediator among the individual methods. This hard-coded approach limits the reusability of methods and introduces implicit assumptions into the system architecture that make it di cult to combine reasoning methods in new ways. To overcome these limitations, the prot eg e-ii system associates each method with an ontology that de nes the context of that method. All external interaction between a method and the world can be viewed as the mapping of knowledge between the method's context ontology and the ontologies of the methods with which it is interacting. In this paper, we describe a context-de nition language called model, and its role in the prot eg e-ii system, a metatool for constructing task-speci c expert-system shells. We outline the requirements that gave rise to such a language and argue that sharable ontologies are a fundamental precondition for reusing knowledge, serving as a means for integrating problem-solving, domain-representation, and knowledge-acquisition modules. We propose an approach based on the kif ontology-sharing language for allowing developers to share knowledge-acquisition editors and problem-solving methods. 1 Reuse of Knowledge Over the past two decades, researchers have been looking for ways to increase the productivity of knowledge engineers. Early rule-based shells were realized to be the \assembly language" of knowledge engineering, providing increased exibility at the price of reduced understandability, maintainability, and reusability (Soloway et al., 1987). Instead, in an attempt to increase the knowledge bandwidth between the shell and the domain expert, researchers have turned to role-limiting architectures, replacing the generic rule-based architecture with task-speci c reasoning strategies and custom-tailored knowledge-acquisition editors (McDermott, 1988). Applications based on this architecture contain abstract, but in exible, data models that guide knowledge-acquisition and inference, enabling experts to manipulate knowledge at a high level of abstraction. We refer to these architectures as being driven by explicit, or strong, data models. Although such role-limiting architectures have been demonstrated to increase the productivity of system builders (Musen, 1989a), they are di cult to construct and, due to their commitment to a particular data model and problem-solving method, limited in the range of applications about which they can reason. The limitations of task-speci c architectures have led to the recent development of metatools (Eriksson and Musen, 1992). These tools perform knowledge acquisition at the meta