Chapter

Transactions on Large-Scale Data- and Knowledge-Centered Systems XXIV

Volume 9510 of the series Lecture Notes in Computer Science pp 1-60

Date:

Reflective Constraint Writing

A Symbolic Viewpoint of Modeling Languages

* Final gross prices may vary according to local VAT.

Get Access

Abstract

In this article we show how to extend object constraint languages by reflection. We choose OCL (Object Constraint Language) and extend it by operators for reification and reflection. We show how to give precise semantics to the extended language OCL\(_{R}\) by elaborating the necessary type derivation rules and value specifications. A driving force for the introduction of reflection capabilities into a constraint language is the investigation of semantics and pragmatics of modeling constructs. We exploit the resulting reflective constraint language in modeling domains including sets of sets of domain objects. We give precise semantics to UML power types. We carve out the notion of sustainable constraint writing which is about making models robust against unwanted updates. Reflective constraints are an enabler for sustainable constraint writing. We discuss the potential of sustainable constraint writing for emerging tools and technologies. For this purpose, we need to introduce a symbolic viewpoint of information system modeling.

Keywords

Meta modeling Multi-level modeling Object constraint languages Generative programming Database migration Schema evolution clabjects Modeling tools UML OCL Z Genoupe