Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/redis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OCL-迭代每个项目_Ocl - Fatal编程技术网

OCL-迭代每个项目

OCL-迭代每个项目,ocl,Ocl,我有一个类a和其他类(B)的集合 我如何在OCL中表示集合中的每个类(B)在字段上都有一个约束 我的想法是: A.collection->iterate().field = SomeConstraint 你的术语有点混乱。你是说你有 A-------->*B 您希望SomeConstraint是什么 我猜您正在寻找OCL中A类的所谓不变量: context A inv allOK : bs->forall(b | ...) 更新: 如果要计数,最简单的方法不是迭代,而是执

我有一个类a和其他类(B)的集合

我如何在OCL中表示集合中的每个类(B)在字段上都有一个约束

我的想法是:

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

你的术语有点混乱。你是说你有

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

您希望
SomeConstraint
是什么

我猜您正在寻找OCL中A类的所谓不变量:

  context A
  inv allOK : bs->forall(b | ...)
更新:
如果要计数,最简单的方法不是迭代,而是执行
选择(…)->count()
。也许这简化了你的事情。

你的术语有点混乱。你是说你有

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

您希望
SomeConstraint
是什么

我猜您正在寻找OCL中A类的所谓不变量:

  context A
  inv allOK : bs->forall(b | ...)
更新:
如果要计数,最简单的方法不是迭代,而是执行
选择(…)->count()
。也许这可以简化您的工作。

forall()只是一个布尔约束。。。我想数一数,我只是不懂迭代语法。如果你不精确地说出你想要的,我们就帮不了你。OCL中的迭代器只是一个泛型迭代器表达式,所以我们不能简单地解释如何使用它,因为它太泛型了。请参阅OCL文档,或者更准确地告诉我们您需要什么,以便我们可以帮助您了解示例ForAll()只是一个布尔约束。。。我想数一数,我只是不懂迭代语法。如果你不精确地说出你想要的,我们就帮不了你。OCL中的迭代器只是一个泛型迭代器表达式,所以我们不能简单地解释如何使用它,因为它太泛型了。请参阅OCL文档,或者更准确地告诉我们您需要什么,以便我们可以帮助您进行示例