OCL中的递归

时间:2012-12-23 22:46:23

标签: uml ocl

假设我在UML中有这个类图:

recursion in OCL

如何在OCL中指定递归中list_of_As中不包含A的实例?换句话说,A的实例可能不包含在A.list_of_As中,并且不包含在A.list_of_As等A的所有实例的所有list_of_As中......?

1 个答案:

答案 0 :(得分:4)

您可以使用transitive closure operator, closure()获取A的列表。然后,只需检查您不希望在该列表中看到的元素是否存在。