Fuzzy Protégé For Fuzzy Ontology Models: E-Mail
Fuzzy Protégé For Fuzzy Ontology Models: E-Mail
Hanne GHORBEL --- Afef BAHRI --- Rafik BOUAZIZ MIRACL Laboratory, Faculty of economics and management of Sfax - Tunisia
E-mail
[email protected] ; [email protected]
Abstract. Fuzzy Protg is a semi-automatic collaborative tool for the construction of fuzzy ontology models, built as a Protg 3.3.1 tab plug-in. Fuzzy Protg is an extension of the well known ontology editor Protg for which we have defined new meta-classes to allow the definition of parameterized membership functions. Fuzzy Protg also gives support to instantiate fuzzy concepts and roles and allows automatic computing of membership degrees. Finally, Fuzzy Protg allows querying fuzzy ontologies based on fuzzy criteria. We present in this paper the internal architecture of Fuzzy protg and we give some details on its implementation and the way we use it to build and validate fuzzy ontologies. Key words. Semantic Web, Fuzzy Ontologies, Fuzzy Protg, Inference in Fuzzy Ontology, Interrogation for Fuzzy Ontologies.
1 Introduction
The web content is, for the most part, subject to imperfection (i.e. imprecision, uncertainty, ambiguity). Semantic Web ontologies are based on crisp logic and do not provide welldefined means for expressing imperfection. How to represent non crisp data, such as an expensive book, a good customer within the ontology definition. The idea of fuzzy set and fuzzy logic theory was first proposed by Zadeh [Zadeh, 75], as a mean of handling uncertainty. The appearance of a wide variety of methodologies for the construction of fuzzy membership functions motivates the application of fuzzy set theory in a great number of application fields. In this paper, we talk about the integration of fuzzy logic in ontology in order to define which we call fuzzy ontology. Ontology tools are most based on crisp logic and do not provide well-defined means for expression fuzzyness. We propose in this paper a framework for fuzzy ontology building, Fuzzy Protg, as an extension of the wellknown ontology editor Protg. Then we describe how Fuzzy Protg has been designed an implemented. The paper is structured as follows. Section 2 describes the internal architecture of the framework and the implementation details of the building modules, showing how to use Fuzzy Protg to define fuzzy ontology components. Section 3 defines a rule inference engine implemented with Jess. Section 4 presents a flexible query tool. Finally, in section 5, we conclude and present some topics for further research.
Young(Age) =
(Age 12) / (18 12) if 12 <= Age <= 18 1 if 18 < Age <= 30 (45 - Age) / (45 30) if 30 < Age <= 45 0 if Age < 12 Or Age > 45
The principle idea of our framework is the use of parameterized membership functions to allow automatic attribution of membership degree. Then we will be able to perform inconsistency checking as membership degrees are not randomly added as some works do. We define a new metaclass named Fuzzy_Class in the Protg metaclasses hierarchy (basic class is the class Thing). The figure 2 shows the metaclasses hierarchy of Fuzzy Protg. To use these metaclasses, we have to import the specific meta-data using Meta data plug-in. So, the Fuzzy Meta-Classes become classes systems, users of the framework can neither modify nor remove them (cf. Figure 3). Indeed, users may define a given fuzzy ontological component as a subclass of one of the Fuzzy classes defined in the model (i.e. Fuzzy_Class_Ti, Fuzzy_Class_Trz, Fuzzy_Class_L, Fuzzy_Class_R).
: Thing
: System
: Meta-Class
: Constraints
: Annotation
: Relation
: Fuzzy-Class
: Class
: Slot
: Facet
: Directed-Binary-
: Fuzzy-Class-Trz
: Fuzzy-Class-Tri
: Fuzzy-Class-L
: Fuzzy-Class-R
: Fuzzy-Relation
: Fuzzy-Relation-Trz
: Fuzzy-Relation-Tri
: Fuzzy-Relation-L
: Fuzzy-Relation-R
Degree_Of_Membership
0.8
Choose Slot
Constraints specification
Figure 4 presents then in the part "Treatment the user request by using Queries plug-in" an example of the requests which can be treated by Fuzzy Protg. In this example, the user needs to find the list of the "Young Person". With this intention, he must choose the fuzzy subset (i.e. fuzzy concept) Young_Person in the part Class. Thereafter, he must also state that its search criteria are the degree of membership. He has then to put in the part Slot the property "Degree_Of_Membership". Finally, he must specify the minimal degree of membership to seek (in our example 0.8). With all these stages, we succeeded to treat a great range of fuzzy requests users by using the degrees of membership already calculated with the module inference and validation.
6 References
[Ghorbel, 08a] H. Ghorbel, A. Bahri and R. Bouaziz ; Les langages de description des ontologies : RDF & OWL ; Proc. of Gnie lectrique et informatique GEI2008 ; pages 597-606 ; Sousse, Tunisie ; Mars 2008. [Ghorbel, 08b] H. Ghorbel, A. Bahri and R. Bouaziz ; A Framework for Fuzzy Ontology Models ; Proc. of journes Francophones sur les Ontologies JFO2008 ; Lyon, France ; pages 21-30 ; Dcembre 2008. [Stoilos, 06] G. Stoilos, U. Straccia, G. Stamou et J. Pan, General concept inclusions in Fuzzy Description Logic , Proc. of the 17th European Conference on Artificial Intelligence (ECAI-06), 2006. [Straccia, 06] U. Straccia, A Fuzzy Description Logic for the semantic Web , Proc. in Capturing Intelligence: Fuzzy logic and the semantic Web, Elie Sanchez ed., Elsevier, 2006. [Zadeh, 75] L. Zadeh, The concept of a linguistic variable and its application to approximate reasonning ; Proc. of Information Science ; Volume 4, Issue 4 ; pages 301-357 ; 1975.