OCL FO : first-order expressive OCL constraints for efficient integrity checking

11Citations
Citations of this article
11Readers
Mendeley users who have this article in their library.
Get full text

Abstract

OCL is the standard language for defining constraints in UML class diagrams. Unfortunately, as we show in this paper, full OCL is so expressive that it is not possible to check general OCL constraints efficiently. In particular, we show that checking general OCL constraints is not only not polynomial, but not even semidecidable. To overcome this situation, we identify OCL FO, a fragment of OCL which is expressively equivalent to relational algebra (RA). By equivalent we mean that any OCL FO constraint can be checked through a RA query (which guarantees that OCL FO checking is efficient, i.e., polynomial), and any RA query encoding some constraint can be written as an OCL FO constraint (which guarantees expressiveness of OCL FO). In this paper we define the syntax of OCL FO, we concisely determine its semantics through set theory, and we prove its equivalence to RA. Additionally, we identify the core of this language, i.e., a minimal subset of OCL FO equivalent to RA.

Cite

CITATION STYLE

APA

Franconi, E., Mosca, A., Oriol, X., Rull, G., & Teniente, E. (2019). OCL FO : first-order expressive OCL constraints for efficient integrity checking. Software and Systems Modeling, 18(4), 2655–2678. https://doi.org/10.1007/s10270-018-0688-z

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free