Transforming ontology-based conceptual models into relational schemas - Guidoni, Gustavo Ludovico (2023)
Despite the relevant contributions of ontology-based conceptual modeling and the widespread use of relational schemas, the combination of these two technologies has not yet received due attention. Among the conceptual modeling technologies, OntoUML stands out as a language to describe a domain of interest, having as its main niche the formulation and propagation of knowledge. Conceptual models produced with OntoUML can be seen as a “starting point” for other artifacts, such as relational schemas in a database realization. To produce a relational schema from the conceptual model in an automated way, it is necessary to bridge the gap between a series of constructs. The current literature provides some object-relational transformation approaches that could, in principle, be applied to ontology-driven conceptual models, such as those produced in OntoUML. However, there are important constructs that are not covered by such approaches that must be addressed. Most of the existing object-relational transformation approaches fail to support conceptual models that: (i) include overlapping or incomplete generalizations; (ii) support dynamic classication; (iii) have multiple inheritance; and (iv) have orthogonal hierarchies. This is because many of the approaches discussed in the literature assume primitives underlying object-oriented programming languages (instead of conceptual modeling languages). To solve this gap, this work aims to understand the forces that govern classical strategies for transforming class hierarchies into relational schemas, while raising some ontological meta-properties that characterize the classes in these models (like sortality and rigidity). The information obtained is used to guide the transformation of the conceptual model into a relational schema in order to avoid some problems in existing approaches, leading to the novel one table per kind strategy. In addition to automating relational schema generation, we also propose an automated ontology-based data access mapping for the resulting relational schema, in order to provide access data in terms of the original conceptual model, and hence queries can be written at a high level of abstraction (in SPARQL), independently of the transformation strategy selected. Further, we forward engineer additional constraints along with the transformed schema (ultimately implemented as triggers) to guarantee that the semantics of the source model is respected. The proposed approach is contrasted with dominant transformation approaches in the literature from the perspectives of: (i) the supported conceptual modeling primitives; (ii) size of the resulting schema; (iii) query answering performance; and (iv) usability of the resulting schema, for which an empirical study is reported.