Skip to main content
. 2019 Aug 19;5:e212. doi: 10.7717/peerj-cs.212

Table 3. OntoUML anti-patterns and the correction way.

The anti-pattern The method of correction
Association cycle Chang the cycle to be closed or open cycle
Binary relation with overlapping ends Declare the relation as anti-reflexive, asymmetric, and anti-transitive
Imprecise abstraction Add domain-specific constraints to refer to which subtypes of the association end to be an instance of the other end may be related
Relation composition Add OCL constraints which guarantee that if there is a relation between two types and one of them has subtypes, there must be constraints says that the subtypes are also in a relation with the other type
Relation specialization Add constraints on the relation between the type and the super-type, declaring that the type is to be either a specialization, a subset, a redefinition or disjoint with relation SR