![]() |
University of Malta Department of Computer Science and A.I. Charlie Abela |
CCBROnto:
|
|
Introduction |
|
CCBROnto is an important component of PreDiCtS since it provides for:
In CCBROnto the topmost concept is a Case. Its basic components are defined by the CaseContext, Problem and Solution classes. This structure is motivated by the underlying methodology used in PreDiCtS. In the present prototype we adopted the CCBR approach to help the user refine a query for a particular service request. The problem description is defined by a set of discriminating QAP, which characterize a particular solution. On the other hand, the solution is a place holder for a service composition template and provides a container of knowledge about composition of generic service components. Ordering information is also considered since this is useful when binding with actual services is performed. In what follows we will explain in more detail the basic Case components and illustrate by means of an example how such a case is defined. |
|
Context |
|
Context knowledge is important since it helps to identify, why a case was created and by whom, certain aspects of case usage and the case relevance to problem solving. The Case Creator includes a reference to the Role description that the creator associates himself with, together with a foaf:Person instance definition that describes who this person is. |
![]() |
| Figure 1: CCBROnto Context definition |
|
The motivation behind using foaf is to keep track of reputation knowledge related to the person who created the case. The Case Context also provides a place holder for Case History. The knowledge associated with this feature is important when it comes to case ranking and usage, since it allows users to identify the relevance and usefulness of a case in solving a particular problem. It is also important for the case administrator when case maintenance is performed. Cases whose history indicates negative feedback may be removed from the case base. Case Provenance is also used in conjunction with trust issues, since it associates a case with a URL indicating the case origin. |
|
Problem |
|
The Problem state description in a PreDiCtS case allows for different similarity metrics to be used, including the taxonomic theory defined by Gupta. Every problem is described by a list of QAPs. Each QAp is associated with a CategoryName, a Question and an Answer. Each question has a textual description and is associated with a concept from the domain ontology through the isRelatedTo relation. We further assume that answers could be either binary or nominal-valued. For this reason we have created two types of answer classes, YesNoAnswer and ConceptAnswer. The former is associated with a literal represented by either a Yes or a No. While the latter, requires an association with a concept in some domain ontology, through the previously mentioned isRelatedTo property. |
![]() |
| Figure 2: CCBROnto Problem definition |
|
Solution |
|
The Solution in PreDiCtS provides a hook where any solution-definition can be inserted. In this prototype we represent solutions in the form of composition template. In this scenario the aim behind the use of such composition knowledge as solutions is to provide an answer to the user's request for a specific service functionality and at the same time allow for more flexibility when searching for actual services. Each Solution is defined to have an Action which has a description and isDefinedBy an AbstractTemplate. We assume that a template desription can be sub-classed by any service-composition description, such as that defined by OWL-S, though any process-definition language, such as WS-BPEL can be used. |
![]() |
| Figure 3: CCBROnto Solution definition |
|
Conclusion |
|
The OWL version of CCBROnto can be found here
|