Using ontologies to resolve semantic conflicts in

0 downloads 0 Views 299KB Size Report
resolve some problems and conflicts due to the ... resolve semantic conflicts in the IS design. 1. ..... version of the ontology is built manually from one or more CR ...
ICTA’07, April 12-14, Hammamet, Tunisia

Using ontologies to resolve semantic conflicts in information systems design

Mohamed MHIRI Faïez GARGOURI MIRACL Laboratory ISIM Sfax Institute,Tunisia {mohamed.mhiri, faiez.gargouri}@fsegs.rnu.tn Abstract Nowadays, new technologies contribute to make Information Systems (IS) more and more complex. So, IS modelling requires the use of a referential to resolve some problems and conflicts due to the ignorance of the field to be modelled, to the complexity and the multitude of the concepts used. These concepts come from heterogeneous sources. This heterogeneity often involves semantic ambiguities (for example synonymy, homonymy, antonymy, etc). This referential can be represented using ontology. For a given domain, ontology allows the identification of its concepts, their relationships and the semantic checking at the time of the conceptualization phase. Thereafter, this ontology is coupled with a CASE to check, at the time of applications design, the semantic coherence of the conceptual representations (CR) specified by the designers. In this paper, we present the use of ontologies as an assistance to resolve semantic conflicts in the IS design.

1. Introduction The information systems are important for the survival of any organization. Indeed, any organization IS, guarantee good circulation, coherence and an assistance to make good decisions. Nowadays, these systems are increasingly complex, requiring an enormous work of modelling. The designers are often confronted with a set of difficulties related mainly to their ignorance of the studied field and to the multitude of used concepts. These problems are due to the lack of a consensus on the vocabularies used for a given field. So, the designers can, in some cases, make syntactic, structural and/or semantic errors. These errors will have consequences on the coherence of the CR results and on the quality of its implementation.

On another side, the requirement analysis phase becomes also very difficult, in particular, because of the new orientation of the current applications, using massively new technologies. These applications are based on an enormous quantity of concepts coming from heterogeneous sources. Such heterogeneity often involves semantic ambiguities on the resulting CR. Current CASEs do not allow the detection or the resolution of such ambiguities. These are currently limited to the checking of some simple syntactic errors relating to specificities of the used diagrams. For example, it is possible to check that a class name is unique in a given diagram. Paradoxically, in a given CR, we can find that a class Car inherits from the class person. Several works [7], [5], [6] demonstrate that the ontology concept is important to analyze the knowledge in a given field, by modelling the relevant concepts for one or more applications of this field. Moreover, we emphasis in this paper, using an ontology to assist the IS designers. This paper is organized as follows. First, we outline IS design problems. Then, we present our approach for IS ontologies building. The last section presents an environment allowing the implementation of our approach. We finish this paper by a conclusion.

2. The IS design conflicts Modelling a given field requires a determination of its different entities and their relationships. These entities are not always simples nor organised. So, we must consider, when modelling, all the field’s concepts as well as their different relationships. For example, in the case of complex applications, such as E-trade and Web applications, designers are, more and more, confronted to a set of problems related to the specificities of such fields. In fact, such applications become increasingly complex, using an important set of concepts coming from heterogeneous sources. Heterogeneous information systems (HIS) can occur in many business contexts. The design of an information

system is shaped by the nature of the application, the type of data being processed, and the structure and culture of the organization developing the system. HIS can occur as a result of organizational evolution, and it can also be the effect of deliberate decisions to change the organization or the IS, including corporate acquisition, or the purchase of new computer technology [16]. Thereafter, designers have often to face their “ignorance” of the modelled field, its concepts and their relationships. Current IS design methods are not always adapted to the users needs. Such methods are too general, not adapted to the particular problems in the practice and too difficult to evolve the resulting CR. Also, it is not possible to guide effectively users in their work, to share and reuse systematically their experiments [19]. For that, these methods are limited to resolve some conflicts. Designers are often confronted to any problems when a designing a given domain. A typology of these conflicts is given in [16]. It distinguishes three types of conflicts: - Syntactic conflicts resulting from the ambiguity of terminologies used in CR (synonymy, antonymy, homonymy). - Structural conflicts occur when attributing different abstraction levels to a given concept (Class/Attribute, Attribute /Method ...). Semantic conflicts exist when the communicating parties use different representations or interpretations of the information that is being communicated. These conflicts are resulting from ambiguities generated by the different possible concepts’ relationships, such as for example, the hidden inclusion and the intersection classes and constraints which are not directly represented [4] between classes. These problems are generally non detectable by the current CASE. As solution, we propose to use an ontology. In fact, an ontology is an explicit specification of a conceptualization [8]. It represents a formal description of entities and their properties, relations, constraints and behaviour [4]. It can also be a convention for the vocabulary and its relationships [17].

An additional, it exists according to [3], two approaches for the ontology construction: from scratch or starting from the existing data bases. These approaches make possible to capture a certain semantic of the concepts and to clarify the contents of the information sources. So, an ontology represents a context of reference between co-operative systems. According to [2], ontology is considered as a conceptual system, including the concepts and its relations. For that, ontologies can be based on a structured terminology, to formalize and translate in an interpretable language by a machine. The authors ([6], [10], [9]) propose a consensus for design process of an exploitable ontology. This process is composed by three steps (i) conceptualization, (ii) ontologization and (iii) operationalization. It makes possible to pass from the untreated data to operational ontology. Our approach is based in this consensus. It consists in representing the set of the concepts and its relationships characterizing a specific field. This ontology allows the identification the concepts of a studied field and its relationships. It will be possible to couple this checking to the CASE, like Rational Rose, when designing application. Our ontology building starts from a set of object oriented CR modelling a given field and represent a corpus [11]. We suppose that the corpus is validated by their field’s experts. Our approach is divided in four steps - Construction of initial ontology. - Updating ontology: - Ontology representation with UMLOnto. - Ontology evolution.

3. Our approach for building information system’s ontologies

3.2. Ontology updating

3.1. Construction of initial ontology To build initial ontology, we choose a CR representing the greatest number of concepts and validated by the domain experts. This choice is justified by the fact that this CR contains the greatest set of concepts and its possible links, making it possible to represent a studied field. This construction consists in the extraction of the syntax of class names, its properties (attributes and operations) and its conceptual relationships. We means by conceptual relationships, all the links supported by UML. The ontology updating, consists in the addition of new concepts coming from the CR elaborated by the designers. It contains the following phases. For each RC:

Many works was proposed for the ontologies construction for a given field. As example, [1] propose an approach for textual ontology construction, to transform a natural language specification to formal language.

284

- Extraction of the concepts (conceptual classes, attributes, operations and links). This extraction is similar to the previous step. - Comparison between concepts extracted and current ontology concepts: determination of the semantic relationships. - Insertion the concepts of CR and its semantic relationships to the ontology. - Insertion the conceptual relationships of CR to ontology. In the following paragraphs, we present briefly these phases.

-

Antonymy relationship is used between two concepts completely disjoined. Example: Autonomy (man, woman). After the extraction of the various concepts in current CR, their comparison determines the adequate semantic relationship (figure 1).

3.2.1. Determination of semantic relationships between concepts

CR 1

By semantic relationship, we mean any relationship, not supported by UML and existing between two concepts. It is the case, for example of synonymy, homonymy ... These semantic relationships can link between different concepts treating the same studied field. These give more semantic to different conceptual schema, by comparing between concepts, its proprieties and its links. We suppose that a concept is a term characterised by syntax and semantic. So, the comparison between concepts can result fours different situations [20]: (i) Consensus: the designers use the same term to indicate the same concept. (ii) Correspondence: different terms indicate the same concept. (iii) Conflict: the same term is used for different concepts. (iv) Contrast: the designers identified concepts different terms to name them. In following, we present some semantics relationships [14]: - Identity relationship exists between two concepts having the same meaning and the same syntax. - Synonymy relationship exists between two different concepts which express the same meaning. Example: Synonymy (Person, individual). - Homonymy relationship: the same concept can have two different means. Example Homonymy (news, news). - Equivalence relationship is a semantic relation which exists between two concepts having the same context. Example: Equivalence (Factory, Supplier). - Classification relationship Kind_Of between two concepts expressing that one is particular case of the other. Example Kind_of (Mercedes, car).

CR n

Extraction the concepts and its relationships Determination of the semantic relationships between concepts

Formal rules base

Identity Synonymy HomonymyAntonymy KindOf Équivalence

Update Ontology

C1

ontology.xml

C3 C1

Ontology representation with UMLOnto

Figure 1. Determination of the semantic relationships between concepts

3.2.2. Insertion of CR concepts into the ontology The insertion of CR concepts into the ontology consists on an incremental updating of the ontology with concepts, having a semantic relationship with the current ontology concepts. This phase is semiautomatic assisting by the designer, who can confirm this phase or help to solve some ambiguities. These ambiguities are resulting, if the concept doesn’t have any semantic relationship with an ontology concept. In such cases, two options are possible: - inserting this concept in the current ontology, - Choosing a semantic relationship with another concept existing in ontology.

3.2.3. Insertion the conceptual relationships in ontology After inserting the concept in ontology, a re-analysis is realized in current CR to determine its conceptual

285

changes by creating and managing different versions of it. The ontology update must preserve its structure. We can have two types of update: - Corrective updates, allow correcting the structure of the concepts and the relations between these structures. - Evolutionary updates make it possible to add new concepts and their relationships. In our work, we propose a set of operators to make one or more changes in an ontology. There operators are defined by the minimal pre-conditions, that a concept has to satisfy before its application, and the maximal post-conditions, that concept verifies after every transformation. An operator application can propagate a change in the whole ontology structure. It is characterized by defined syntax and semantic, and can have one or more arguments (attribute, operation, concept, …). The following sub-sections present our operators defined to deal with ontology updating. We consider an ontology (Ocsi) dedicated for the IS design, characterized by a set of concepts (C), its properties (attributes Ac and operations Opc) and its relationships between concepts (Rel): conceptual and semantic. This ontology is represented by the following tuplet:

relationships. Thereafter, these relationships are added in ontology. Consequently, the ontology is progressively updated with the new concepts as well as its semantic and conceptual relationships.

3.3. An ontology UMLOnto

representation

with

The representation of our ontology requires the use of a comprehensible and semi-formal language to represent the concepts and their relationships. For that, we proposed an extension of the well know language UML; named UMLOnto [12]. This extension adds new stereotypes characterizing our ontology. It consists in the concept of class (CC), the concept of class association (CCA), the semantic relationships between the concepts (synonymy, homonymy, equivalence, antonymy). However, it should be noted that the identity relationship can not be represented in UMLOnto because it makes it possible to differentiate with the homonymy relationship. The diagram obtained is called concepts diagram.

3.4. Ontology evolution According to [21], “Ontology Evolution is the timely adaptation of an ontology to the arisen changes and the consistent propagation of these changes to dependent artefacts”. Indeed, an ontology must be adapted to the increasing evolution of the users needs. In the literature, the distinction between management, modification, evolution and versioning of ontologies has been, in some cases, confused. According to database community [18]: - Ontology management is the set of methods and techniques that is necessary to efficiently use multiple variants of ontologies from possibly different sources for different tasks. Therefore, an ontology management system should be a framework for creating, modifying, versioning, querying, and storing ontologies. It should allow an application to work with an ontology without worrying about how the ontology is stored and accessed, how queries are processed, etc; - Ontology modification is accommodated when an ontology management system allows changes to the ontology that is in the use, without considering the consistency; - Ontology evolution is accommodated when an ontology management system facilitates the modification of an ontology by preserving its consistency; - Ontology versioning is accommodated when an ontology system management allows ontology

Ocsi = < C, Ac, Opc, Rel > - Delete concept: This operator consists in deleting a concept c and its proprieties in Osci. This operator uses the deletePropriety operator. Delete-Concept (Ocsi, c: C). - Add a concept: It allows to add a new concept c’ in ontology. It requires obviously the addition of its properties (attributes and operations). Add-Concept (Ocsi, c ') - Rename concept: It is used to rename a concept. It replaces the old name c by a new name c'. It allows correcting the errors and the possible syntactical ambiguities which we can find in ontology. rename-Concept (Ocsi, c:C, c') - Move property: It allows to move a property p from a source concept cs to a destination concept sd. Move-Prop(Ocsi, p: P, cs: C, cd: C) - Group two concepts: It allows to group two concepts (ci, cj) in a generic concept cg. This factorization allows an ontology optimization, by enforcing the degree of granularity and modularity of the ontology and to facilitate its re-use. The aggregation of the common properties must use the comparison between properties. This comparison determines the common

286

and coherent concepts to be grouped. Groupconcepts (Ocsi, c: C, ci: C, cj: C, cg) The use of these operators (add concept, delete concept, rename concept and group concept) can influence the quality and the ontology structure. Indeed, the use of such operators can provoke isolated concepts (without conceptual or semantic relationships), redundant or wrong relationships. As solution, we propose other operators allowing the addition, the replacement, the deletion of the relationships between the concepts. We suppose that these relationships are binary. - Add relationship: It allows adding conceptual relationships between two concepts ci and cj. This relationship can be an association, an aggregation, a composition or an inheritance. This addition must preserve the semantic concept coherence. Add-relationship (Ocsi, rel, type, ci :C, cj :C) - Replace relationship : It allows replacing an existing relationship rel by another rel’, to correct a conceptual errors and propagate the possible changes in ontology. Replacerelationship (Ocsi, rel : Rel, rel’, type, ci :C, cj : C) - Delete relationship : It used to delete a relationship between two concepts ci and cj. This relationship can be conceptual or a semantic relationships. Delete-relationship (Ocsi, rel : Rel, type, ci :C, cj :C) The adding semantic relationship is obtained by using a comparison algorithm between concepts. This step is in experimentation in our team.

Ontological Base

Formal Rules

Ontology Visualisation

UMLOnto Files

XML Files

Ontology building & Updating Extraction of CR’ concepts and their conceptual relationships

Determination of the semantic relationships between concepts

IS Ontology

Figure 2. Framework Architecture

CR

Concept i

Comparison between concept i and current ontology

Ontology

Formal rules base

Semantic rule checking

No checked

Checked

Addingconcept i in ontology

4. An environment for using IS ontology design

Goingto anotherr test with another semantic relationship

Going to next concept

In this section, we present an environment, the OntoBuilder prototype (figure 2.). It is an extension of the ArgoUML tool [13]. It makes possible to support, in addition to the functionalities of ArgoUML, the ontology modules (extraction, updating, representation and evolution). The first version of the ontology is built manually from one or more CR sources representing a corpus. Then, we take a new CR to represent the ontology process to resolve semantic conflicts. The resolving of semantic conflicts is obtained by using the comparison algorithm [14]. The last one is based on comparison concepts between CR and current ontology [15] (Figure 3).

Figure 3. Comparison concepts between ontology and CR

5. Conclusion In this paper, we used an ontology to resolve the semantic conflicts in IS design. For that, we proposed an approach for building ontology, in order to help designers during IS design of a given field. This approach allows: i) the extraction of concepts and their relationships, ii) the ontology updating by determination the semantic relationships between concepts, iii) the ontology UMLOnto representation and iiii) the ontology evolution using specific operators. In our future works, we will complete the development of the environment by reinforcing the coupling between the IS design and ontologies. Then, we will propose some rules ensuring the coherence and

287

[11] Mhiri M., Mtibaa A., Gargouri F., « Towards an approach for building information systems’ontologies », FOMI’2005, 1st workshop Formal Ontologies Meet Industry, 9-10,June, Verona, Italy, 2005.

the completeness of ontologies dedicated for the IS design.

6. References [1] Assadi H., Bourigault D., « analyses syntaxique et statistique pour la construction d'ontologies à partir de textes », Ingénierie des connaissances, évolution récentes et nouveaux défis, chapter 15, Eyrolles, collection technique et scientifique des Télécommunications. p. 243255, 2000.

[12] Mhiri M., Mtibaa Towards a language for systems’ontologies », International Conference Knowledge Engineering, p.743-746.

[2] Bachimont B., Baneyx A., Malaisé V., Charlet J., Zweigenbaum P., « Synergie entre analyse distributionnelle et patrons lexico-syntaxiques pour la construction d'ontologies différentielles » Terminologie et Intelligence Artificielle (TIA'2005), Rouen, France, 4-5 avril 2003.

[13] Mhiri M., Chabaane S., Gargouri F., “A Framework for Information Systems’ Ontologies”, 2nd International Conference on Information & Communication Technologies: From Theory to Applications (ICTTA’06), Damascus-Syria, 24-28 Avril, 2006.

[3]Benslimane D., Arara A., Yetongnon K., Gargouri F., Ben Abdallah H. « Two approaches for ontologies building :From-scratch and From existing data sources », the 2003, International Conference on Information Systems and Engineering ISE 2003, Montreal, Canada, 2024 July 2003.

[14]Mhiri M., Chabaane S., Mtibaa A., Gargouri F., « An algorithm for building Information System’s ontologies », 8th International Conference on Enterprise Information Systems. Paphos ICEIS 2006, Cyprus, 23-27 May 2006.

A., Gargouri F., « UMLOnto: the specification of information SEKE’05, the Seventeenth on Software Engineering and Taiwan, China, 14-16 July, 2005,

[15] Mhiri M., Gargouri F., Benslimane D., « Détermination automatique des relations sémantiques entre les concepts d’une ontologie », INFORSID’2006, Hammamet, 31 Mai au 3 juin 2006.

[4] Berrabah D., Boufares F., Ducateau C.F., Gargouri F., Heiwy V., « Les conflits entre les contraintes dans les schémas conceptuels de bases de données : UML-EER », Eighth Maghrebian Conference on Software Engineering and Artificial Intelligence, Sousse Tunisia, 9-12 may, 2004, pp. 437.

[16] Naiman C.E., Ouksel A.M., “A Classification of Semantic Conflicts in Heterogeneous Database Systems”, Journal of Organizational Computing 5(2),167-193, 1995.

[5] Frédéric F., « L’ingénierie ontologique », Institut de Recherche en Informatique de Nantes, Rapport de recherche No 02-07, Octobre 2002.

[17] Ranwez C., « Composition Automatique de Documents Hypermédia Adaptatifs à partir d'Ontologies et de Requêtes Intentionnelles de l'Utilisateur », Thèse de doctorat, université de Montpellier, II sciences et techniques du languedoc, décembre 2000.

[6]Gandon F., Dieng-Kuntz R., « Ontologie pour un système multiagents dédié à une mémoire d’entreprise », In Actes des journées francophones d’Ingénierie des Connaissances IC’2001,1-20, Presses Universitaires de Grenoble, 2001.

[18] Roddick J.F., “A survey of schema versioning issues for database systems”, Information and Software Technology, Volume 37, Number 7, pp. 383-393, 1996.

[7] Gomez P.A. « Tutorial on Ontological Engineering», IJCAI99 International Joint Conference in Artifical Intelligence, Stockholm, Sweden, 1999.

[19] Rolland C., Plihon V., “Using generic chunks to generate process models fragments”, Proc. of 2nd IEEE International Conference on Requirements Engineering, ICRE’96, Colorado Spring, 1996.

[8]Gruber T.R, “Toward Principles for the Design of Ontologies, Used for Knowledge Sharing”, Stanford Knowledge Systems Laboratory, 1993.

[20] Shaw M.L.G, Gaines B.R., “Comparing conceptual structures: consensus, conflict, correspondence and contrast”. Knowledge Acquisition, 1, 341-363, 1989.

[9]Grüninger M., Fox M S, “Methodology for the Design and Evaluation of Ontologies”, Workshop on Basic Ontological Issues in Knowledge Sharing, IJCAI, 1995, Montreal.

[21] Sure Y., Haase P., “D3.1.1.b State of the art in ontology Evolution”. SEKT Semantically Enabled knowledge Technologies, Institute AIFB, University of Karlsruhe, 2004.

[10]Leclère L., Trichet T., Frûst F., « Construction of an ontology related to the projective geometry ». RFIA 13th congrès des Reconnaissance des Frames et Intelligence Artificielle, 2002, France.

288