【问题标题】:How to make a Group by in OCL?如何在 OCL 中进行分组?
【发布时间】:2021-03-22 13:44:24
【问题描述】:

我在 PersonDepartment 之间有关联,我想检查 Person.function 是否唯一

Person.allInstances->isUnique(function)

但我想检查功能是否对于同一部门的人员是唯一的,而不是在所有人之间。我可以有同样的职能,但不能在同一个部门。 我不知道如何为每个部门使用 isUnique(Persons group by department)。

【问题讨论】:

    标签: ocl


    【解决方案1】:

    如果您有要应用 isUnique 的范围,则将该范围收集为源。可能是 department.persons->isUn​​ique(function)。 (无论如何,这正是您应该应用的方法,以避免尽可能使用通常过于强大且效率低下的 allInstances()。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-03
      • 2021-03-10
      • 2015-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-08
      相关资源
      最近更新 更多