• Aucun résultat trouvé

The aim of a resources repository is not only to collect heteroge-nous knowledge resources but especially to offer instruments for reusing them. In order to formalize the definition of processes over these resources, we have defined a set of generic primitive operations [Grauet al. 2008, Falquetet al. 2008]. We represent them using an abstract class within the TOK_Onto. Each operator can support multiple implementations depend-ing on the resources that are used as input. These operators are applied in order to generate new resources, which leads to the evolution of resources.

4.3 Representing resources management

For defining the ontology modules that are used for representing resources management operators and resources evolution, we will use elements of an existing ontology called OWL-S [Bursteinet al. 2004]. The semantic markup for web services is an ontology that models services in a declarative way in order to build a standard vocabulary for service descriptions. This ontology contains three modules for representing profiles, services and groundings (see figure 4.10). We imported the profiles module into our ontology.

Figure 4.10: Semantic Markup for Web Services ontology modules [Bursteinet al. 2004]

4.3.1 Resources engineering operators representation

The definition of resources management operators depends on the usage of the resources within the context of knowledge management and reuse. Many contributions in the literature propose tools and models for reusing and shar-ing knowledge. We define a resources management operator as an entity that uses one or multiple knowledge resources and provokes changes on entities of theses resources to generate modified new resource.

In the OWL-S ontologies, services are represented using a profile defini-tion. Within the specifications document, a service profile is referred to as:

“An OWL-S Profile describes a service as a function of three basic types of in-formation: what organization provides the service, what function the service computes, and a host of features that specify characteristics of the service.”5. We made the choice of using of the OWL-S ontology to describe resources management and combination operators within the repository because this ontology represents the standard vocabulary for service representation.

In the process of defining and representing knowledge resources manage-ment and combination (i.e. engineering) operators (alignmanage-ment, integration, annotations, composition, etc.) we realized that they can be modeled as services profiles. The model of resources operators is intended to define their signatures and types. Each profile is then instantiated by a specific im-plementation. For example, an ontology matching operator can be defined as a matching operator that has as category “Ontology Matcher’’, as input at least two resources of type “Ontology” and as result a resource of type

“Ontology alignment”, etc.

The profile representation in OWL-S (see figure 4.11) is used as a provider of the model that represents knowledge resources engineering operators but the actual representation of these operators in the TOK_Onto is defined by the class Resources_Management_Operator, which is a subclass of Profile.

The following restrictions are applied in order to give a specific representation of these operators in the context of the our research area (Heterogeneous knowledge resources combination and management).

Resources_Management_Operator v Profile

Resources_Management_Operator v ∃input Knowledge_Resource

Resources_Management_Operator v ∀keywords Datatype:string

Resources_Management_Operator v ∃output Knowledge_Resource

Resources_Management_Operator v ∀name Datatype:string

Resources_Management_Operator v ∀uses_method Knowledge_Processing_Method

5Sourcehttp://www.w3.org/Submission/OWL-S/

Resources_Management_Operator v ∀description Datatype:string

Resources_Management_Operator v ∃argument Object

Resources_Management_Operator v ∀uses_implementation Implementation_Source

Resources_Management_Operator v ∀uses_methodology Knowledge_Engineering_Methodology

Figure 4.11: OWLS profiles representation [Bursteinet al. 2004]

4.3.2 Process monitoring representation

The application of operators for managing and combining knowledge re-sources generates new knowledge rere-sources and can also change the content or the representation of a specific resource. Since the provenance of each resource is a required element for their presentation, the application of an operator or a sequence of operators on a set of knowledge resources have to be represented and stored as a provenance element.

Besides the application of operators, transforming or combining knowl-edge from different resources requires the application of a sequence or a set of operators, which leads us to a need for representing not only knowledge engineering processes but also knowledge engineering operations.

We define a process as a sequence of operators applied on the resources and their content. The process is represented using the class Knowl-edge_Engineering_Task. and an element of a process is represented by the Process_Monitoring_Element class:

Knowledge_Engineering_Task v ∀acronym Datatype:string

Knowledge_Engineering_Task v ≤ 1 description

Knowledge_Engineering_Task v ∀name Datatype:string

Knowledge_Engineering_Task v ∀description Datatype:string

Knowledge_Engineering_Task v ≤ 1 documentation

Knowledge_Engineering_Task v ≤ 1 acronym

Knowledge_Engineering_Task v ∀documentation Datatype:string

Knowledge_Engineering_Task v ≥ 1 composedOf Process_Monitoring_Element

Process_Monitoring_Element v ∃reference Datatype:anyURI

Process_Monitoring_Element v ∃description Datatype:string

Process_Monitoring_Element v ∃uses_algorithm Algorithm

Process_Monitoring_Element v ∀uses_operator Resources_Management_Operator

Process_Monitoring_Element v ∀uses_method Knowledge_Processing_Method

Process_Monitoring_Element v ∀output Knowledge_Resource

Process_Monitoring_Element v ∀has_run_date Datatype:dateTime

Process_Monitoring_Element v ∀argument Datatype:anyURI

Process_Monitoring_Element v ∀input Knowledge_Resource

Process_Monitoring_Element v ∀executedBy Party

Process_Monitoring_Element v ∃status Datatype:string

Process_Monitoring_Element v ∃acronym Datatype:string

By means of processes descriptions we aim to construct a process dictio-nary that stores each instance of a process and apply it each time there is an evolution of the involved resources. To describe these processes we used the OWL-S derive module, which is able to represent services of a certain profile or a composition of services of different profiles. The execution of a task that changes a resource creates an evolution-tracking element.

4.3.3 Resources evolution-tracking

Knowledge resources engineering within a repository requires tracking all the events that initiate a change of a resource. There are multiple approaches that have been proposed for modelling evolution and changes within re-sources [Berkes 2009, Stojanovic 2004]. We define an evolution as a change within an entity or a version of a resource within the repository. A change

action is represented as a modification that has as range either a resource as a whole or an entity of a resource.

Since we are managing knowledge resources and the processes that we are monitoring are applied on resources, then a change is always brought to the scale of the resource and an evolution is then represented as follows:

Resource_Evolution_Execution v ∃executedBy Party

Resource_Evolution_Execution v ∀has_run_date Datatype:dateTime

Resource_Evolution_Execution v ∀documentation Datatype:anyURI

Resource_Evolution_Execution v ∀acronym Datatype:anyURI

Resource_Evolution_Execution v ∀endorsedBy Party

Resource_Evolution_Execution v ∀uses_operator Resources_Management_Operator

Resource_Evolution_Execution v ∀description Datatype:string

Resource_Evolution_Execution v ∀evolution_action Resources_Evolution_Action

Resource_Evolution_Execution v ∀status Datatype:string

Resource_Evolution_Execution v ∃involves(Knowledge_Resource t Resource_Entity)

Resource_Evolution_Execution v ∀reference Datatype:anyURI

Resource_Evolution_Execution v ∀applied_to Knowledge_Resource

When a resource is modified (partially or wholly) as a result to an ap-plication of a process then all the processes executions that use this same resource are triggered to be re-executed to generate in their turn new ver-sions of the existing output. Many techniques can be used to manage the process execution and resource evolution within the repository. We prepared the models and structures to represent these events but we will not focus on defining an approach for resources evolution management.