PROTÉGÉ-II provides a set of tools for developers of knowledge-based systems. PROTÉGÉ-II supports (1) the construction of problem solvers from reusable components (Eriksson et al., 1995), and (2) the generation of domain-specific knowledge-acquisition tools (Eriksson & Musen, 1993). In the PROTÉGÉ-II approach, the developer uses an ontology editor to create ontologies that model domain concepts and relationships. The developer then uses a program that generates automatically domain-specific knowledge-acquisition tools from these ontologies (Eriksson et al., 1994). Domain experts use these knowledge-acquisition tools to create knowledge bases (which consist of instances of classes in the domain ontology). Because these knowledge bases are defined in terms of domain-specific concepts, they must be mapped to domain-independent concepts that can be used by reusable problem-solving methods (Gennari et al., 1994). Figure 1 shows parts of the PROTÉGÉ-II architecture, and illustrates how a critique tool can use information from several representations in PROTÉGÉ-II as the basis for the critique-analysis process. Note that although PROTÉGÉ-II supports automatic generation of knowledge-acquisition tools, these tools can still be subject to critique, because PROTÉGÉ-II allows manual custom adjustments (see Section 4).
Figure: PROTÉGÉ-II and the Critique Tool. A critique tool can use information from many sources in a development environment. In PROTÉGÉ-II, there are three major representations that are relevant for a critique tool. (1) The ontology, which is the output of the ontology editor, provides the basis for ontology critiquing. (2) The tool definition, which is the output of knowledge-acquisition--tool generator, provides the basis for the critiquing the design of a knowledge-acquisition tool. (This definition is sometimes referred to as the Editor Ontology [EO] file.) (3) The knowledge base, which is generated by the knowledge-acquisition tool run-time system, provides the basis for the critiquing of knowledge entered by domain experts. (In the PROTÉGÉ-II approach, the knowledge base consists of instances of the ontology.) In the current prototype implementation of CT, only the tool definition (2) is used as the basis the critique analysis.
We have monitored the use of PROTÉGÉ-II to establish problematic areas and design flaws. We analyzed common complaints, and we approached problems by (1) redesigning tools that caused problems for their users (immediately or at a later time), (2) informing users about use-cases to avoid, and (3) writing critiquing rules for the critiquing tool. The critiquing tool can assist the users by helping them to avoid problems before they occur. A list of the advantages of a critiquing tool for PROTÉGÉ-II follows.
Let us examine some of the problems that can be approached by a critiquing system. Examples of common mistakes by the PROTÉGÉ-II users include (1) definitions of is-a relationships in the ontology that should be modeled as is-part relationships, (2) missing or incorrect slot definitions in the ontology, (3) illegal circular references in the ontology, and (4) inappropriate tailor-made layout of forms in knowledge-acquisition tools. A critiquing system can detect some of these mistakes automatically, whereas other mistakes (e.g., confused is-a and is-part relationships) cannot be detected readily.
Not all problems are caused by user mistakes, however. An example of a known type of problem in PROTÉGÉ-II arises from bugs in the layout-designer module that result in incorrect widget layout on forms in knowledge-acquisition tools. The critiquing tool checks for inconsistencies in the window layout, such as windows outside the screen area and widgets outside their window area, and reports these problems to the developer.