Abstract
There are some data models and query languages based on the application of fuzzy set theory. Their goal is to provide more flexible DBMS that allow the expression of user preferences in querying as well as imprecision in data. In this sense, the FuzzyEER data model proposes four kinds of fuzzy attributes. One of them, named Type 3, consists of a set of labels provided of a similarity relation. An extension of SQL, named FSQL, allows the expression and use of fuzzy attributes. Nevertheless, FSQL does not allow using fuzzy attributes in some clauses based on data ordering, due to semantics problem. This chapter presents a solution for this problem in case of Type 3 fuzzy attributes. Main contribution consists in how to process queries involving such attributes by means of an extension to an existing RDBMS. Formal semantics, grammar, catalogue definition and translation schemas are contained in this chapter.
TopIntroduction
Traditional databases only handle precise data and conditions. In many scenarios this is not quite fit for representing the actual information needs of users. In the real world, there might be partial or imprecise information about the values of some data. The user may also have selection criteria that are not precise.
The incorporation of some of these concepts in the modeling and manipulation of databases gave birth to different fuzzy relational model proposals (Buckles & Petri, 1982; Fukami, Umano, Muzimoto & Tanaka, 1979). These were later generalized to an extended model for fuzzy relational databases, known as GEFRED (Generalized model of Fuzzy Relational Databases) (Medina, Pons, & Vila, 1994).
From the GEFRED model, the Enhanced Entity-Relationship model (EER) and the Structured Query Language (SQL) language were formally extended into the FuzzyEER model (Encyclopedia of Information Science and Technology, 2014) and the FSQL language (Galindo, Urrutia, & Piattini, 2006), that is an extension of SQL that allows flexible conditions in queries. The EER is an ER model that allows for generalizations/specializations and categories. The FuzzyEER model is an extension of the EER model for the creation of conceptual schemas with fuzzy notation and semantics. This extension includes elements of different conceptual model proposals for fuzzy databases, such as fuzzy attributes, fuzzy entities, fuzzy relations, and fuzzy specializations, among others.
In order to incorporate concepts from the FuzzyEER model (Galindo et al., 2006) in a relational DMBS, previous work includes a relational implementation schema called FIRST (Fuzzy Interface for Relational SysTem) (Medina, Pons, & Vila, 1995). The most recent version of this schema is called FIRST-2. The metadata that defines the fuzzy elements of FuzzyEER in FIRST-2 are stored in a relational catalog called FMB (Fuzzy Metaknowledge Base).
For representing fuzzy data, FuzzyEER and FSQL (Galindo et al., 2006) define for types of fuzzy attributes:
Type 1: Attributes with precise data values, provided with linguistic labels, interpreted as fuzzy numbers with the purpose of being used in fuzzy conditionals.
Type 2: Attributes with fuzzy data values, represented as fuzzy numbers. These attributes are possibility distributions on an ordered domain.
Type 3: Attributes with values in a domain formed by labels provided with a similarity relations between such labels. It can additionally have possibility distributions.
Type 4: Similar to Type 3, without the similarity relationship.
FSQL forbids using fuzzy attributes in ordering and grouping criteria, except for Type 1, that are actually precise values. This is unsatisfying. The representation of fuzzy attributes is very limited and only allows a certain set of values. FSQL allows any fuzzy binary relationship in place of a similarity relationship, as it does not have a well-defined semantics for them. These deficiencies must be addressed and corrected. The focus of this chapter is in Type 3 fuzzy attributes, restricted to the case of a set of labels with a provided similarity relationship.
We extend SQL in order to integrate this attributes type in the database queries. The main contribution of this chapter is to describe the translation schemes that allow translate instructions of extended SQL to instructions of native SQL. Our proposal consists into implement a mildly coupled architecture where the translation schemes are incorporated into a mediator layer which extends a Relational Database Management System (RDBMS).
TopBackground
Fuzzy Set theory was proposed by Zadeh (1965) as a way of representing imprecision and uncertainty. His initial motivation was control system applications, but with time they were beginning to be used in prediction and optimization, pattern recognition and expert systems. This theory provides a mathematic on formal computational framework for representing the notions vague or imprecise nature.
Key Terms in this Chapter
FSQL (Fuzzy SQL): An extension of the SQL language that allows some fuzzy data and conditions expression.
ORDER BY: Clause of SQL expression intended for ordering the list of retrieved tuples in a specific order, particularly, in this case the ordering is based in fuzzy similarity relationship.
FuzzyEER: An extension of the EER (Enhanced Entity Relationship) model for the creation of conceptual schemes with fuzzy semantic notation.
Translation Scheme: A conversion pattern of an expression from a source language to an object language that preserves the semantics, particularly, in this case from a fuzzy extension of SQL to classic SQL.
Type 3 Attributes: Attributes with values in a fuzzy domain consisting of labels provided with a similarity relationship.
Fuzzy Set: Extended set where the belonging of an element is given by a membership function whose range is the [0, 1] interval.
Fuzzy Domain: User defined type for fuzzy data.
Similarity Relationship: A fuzzy set in X × X , whose membership function is reflexive, symmetric, and transitive. It is a generalization of the classical equivalence relationship.
Fuzzy Catalog: Set of metadata tables that describe fuzzy domains as well as columns of these types that include labels and the definitions of similarity relationships.
GEFRED (Generalized Model of Fuzzy Relational Databases): An extended model for fuzzy relational databases.