OCL - 为每个项目迭代

时间:2011-03-31 14:29:01

标签: ocl

我有一个A类,其中包含其他类(B)。

我如何在OCL中表示对于集合中的每个类(B),对字段有约束?

我想的是:

A.collection->iterate().field = SomeConstraint

1 个答案:

答案 0 :(得分:1)

你的术语有点令人困惑。你是说你有像

这样的东西
  

A ---------> * B

   bs

您期望SomeConstraint是什么?

我猜你在OCL中为A类寻找所谓的不变量

  context A
  inv allOK : bs->forall(b | ...)

<强>更新 如果您想计算,最简单的方法不是iterate,而是select(...)->count()。也许这简化了你的事情。