Совершенно новый для OCL, спасибо за помощь.OCL Стереотип Ограничение: Любая ассоциация, окрашенная всеми связанными классами, имеет один и тот же цвет
Так что есть профиль с стереотипами, как показаны:
Может кто-нибудь сказать мне, как написать инвариантное ограничение: любая ассоциация, которая окрашена означает, что все связанные классы должны иметь одинаковые значение цвета в их цветовом свойстве?
Я это до сих пор:
Context UML::InfrastructureLibrary::Core::Constructs::Association
inv: Association.allInstances() -> forAll(a:Association|a.oclIsTypeOf(Coloured) implies
a.associatedElement.colour = a.colour)
Довольно уверен, что это неправильно, потому что a.associatedElement не существует .. но я не понимаю, как получить доступ к этому «и все связанные классы» или что это значит. Возможно, мне нужно что-то вроде
a.[association].colour
?
Благодаря