1

例如,让我们考虑以下 UML 图: 在此处输入图像描述

Block1仅当对于 的所有实例,该实例与的实际类型的Block1::unit_of_press标记值的实例相同时,该模型才有效unitBlock1::press

是否可以在 OCL 中表达这样的约束?

4

1 回答 1

0

是的,可以访问应用构造型的标记值。请参阅查找具有给定标记的所有元素作为起点。从那里你可以断言关于标记值必须是真实的。

如果该网页不可用,例如:

self.allOwnedElements()
->select(e | e.getValue(e.getAppliedStereotype('Ecore::EAttribute'), 'isTransient') = true)

(感谢 Rafael Chaves、Vladimir Orany 和 Bjoern Sundin。)

于 2016-02-12T20:11:34.907 回答