A New Type Checking Approach for OCL Version 2.0?

  • Authors:
  • Andy Schürr

  • Affiliations:
  • -

  • Venue:
  • Object Modeling with the OCL, The Rationale behind the Object Constraint Language
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Object Constraint Language OCL is an integral part of UML, the Unified Modeling Language standard. It has been added to Rational's UML core as a logic-based sublanguage for the definition of integrity constraints (invariants) on class diagrams as well as for the definition of pre- and postconditions of operations. Despite of the fact that OCL is called a statically typed language its type checking rules are not precisely defined in the UML standard version 1.3. Furthermore, they have certain deficiencies concerning the treatment of collection manipulating operations. This paper compares three different approaches for the definition of modified OCL type checking rules, selects one of these approaches as the most appropriate one and explains the new type checking rules for this approach in more detail. All presented proposals are based on our experiences with the design of a rather similar statically typed constraint language that is part of the graph transformation language PROGRES.