У меня есть диаграмма классов с многочисленными классами, некоторые из которых содержат атрибуты типа string
. Я хочу, чтобы все мои строки имели длину не менее 1.
Простое (но уродливое) решение выглядит следующим образом:
context Class1
inv: self.attributeOfTypeString.size > 0
context Class2
inv: self.attributeOfTypeString.size > 0
...
Знаете ли вы способ определить ограничения OCL для всех атрибутов, соответствующих шаблону? Что-то типа:
global.select(attr | attr.TYPE = string) -> forall (str : string | str.size > 0)