Polymorphism in Datalog and Inheritance in a Metamodel

Paolo Atzeni, Giorgio Gianforme, Daniele Toti. Polymorphism in Datalog and Inheritance in a Metamodel. In Sebastian Link, Henri Prade, editors, Foundations of Information and Knowledge Systems, 6th International Symposium, FoIKS 2010, Sofia, Bulgaria, February 15-19, 2010. Proceedings. Volume 5956 of Lecture Notes in Computer Science, pages 114-132, Springer, 2010. [doi]

Abstract

We discuss the restructuring of a metamodel designed for representing several data models in a uniform way. This metamodel is currently used within MIDST, our Model Management proposal for performing translations of schemas and databases from a model to another. Such a restructuring is carried out by introducing hierarchies and, consequently, extending Datalog by providing it with inheritance and polymorphism in order to take advantage of them. In comparable scenarios, where predicates of the metamodel share structural elements and rules are syntactically and semantically similar, the use of hierarchies and a particular form of polymorphism provide significant advantages. These advantages range from simplifying the specification of elementary and complete translations (i.e. Datalog rules and programs, respectively) to ensuring a higher level of reuse for them, thus further improving the development of such rule-based systems.