Current limitations

Data model:

  • Generalizations between classes are not allowed
  • Attributes can only have one of the following types: String and Integer and Role.
  • Association-ends can have multiplicity 0..1 or 0..*
  • There must be a enumerate called Role, with the roles.
  • There must be one and only one entity with an attribute called role with type Role.

Security model:

  • Roles should appears as the same name than in the data model.

OCL expressions:

With respect to types:

  • Only expressions of class types, Set- and Bag-types over class types, and Set- and Bag-types over String and Integer are allowed.
With respect to operations and iterators:
  • Operations on String are not allowed, except = and <>.
  • Operations on Bag-types are not allowed, except ->asSet().
  • ocIsTypeOf() and oclIsKindOf() are not allowed.
  • oclAsType() is not allowed.
  • asSet() is not allowed.
  • ->size() is not allowed.
  • min() and max() are not allowed.
  • ->sum() is not allowed.
  • ->one() is not allowed.
  • ->isUnique() is not allowed.
  • ->iterate() is not allowed.
  • ->closure() is not allowed.
  • let is not allowed.
  • if_then_else is not allowed.