Transformations of Check Constraint PIM Specifications

keywords: Check constraint, platform independent model, model-driven architecture, model-to-model transformation, model-to-code transformation, SQL/DDL generation
Platform independent modeling of information systems and generation of their prototypes play an important role in software development process. However, not all tasks in this process have been covered yet, i.e. not all pieces of an information system can be designed using platform independent artifacts that are later transformable into the executable code. One of the examples is modeling of database check constraints, for which there is a lack of appropriate mechanisms to formally specify them on a platform independent level. In order to provide formal specification of check constraints at platform independent level, we developed a domain specific language and embedded it into a tool for platform independent design and automated prototyping of information systems, named Integrated Information Systems CASE (IIS*Case). In this paper, we present algorithms for transformation of check constraints specified at the platform independent level into the relational data model, and further transformation into the executable SQL/DDL code for several standard and commercial platforms: ANSI SQL-2003, Oracle 9i and 10g, and MS SQL Server 2000 and 2008. We have also implemented these algorithms in IIS*Case as a part of the process of generation of relational database schema.
mathematics subject classification 2000: 68U35, 68P15
reference: Vol. 31, 2012, No. 5, pp. 1045–1079