{'fraction_non_alphanumeric': 0.01683937823834197, 'fraction_numerical': 0.0, 'mean_word_length': 5.134920634920635, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Transforming OCL constraints: a context change approach

Integrity constraints (ICs) play a key role in the definition of conceptual schemas. In the UML, ICs are usually specified as invariants written in the OCL. However, due to the high expressiveness of the OCL, the designer has different syntactic alternatives to express each IC, mainly depending on the type used as a context of the constraint. The method presented in this paper assists the designer during the definition of ICs by means of automatically transforming the initially defined constraints into equivalent alternatives. The method is also useful in the context of the MDA, where the choice of a particular alternative has a direct effect on the efficiency of the automatically generated implementation.