3

我正在通过 EMF 中的 Ecore 定义领域特定建模语言的元模型。因此,我从相关的 genmodel 生成一个编辑器,我可以使用它来创建符合元模型的模型。我想对元模型的某些元素可以假设的值指定一些 OCL 约束。如果我可以在 Ecore 模型中指定这些约束并让相关检查自动生成编辑器 Java 代码,那就太好了。

有没有标准的方法来做到这一点?

4

2 回答 2

2

第一步是决定如何将约束添加到您的 ecore(元)模型。目前我知道有两种方法,你可以这样做:

1-在ecore模型的注释元素中嵌入ocl表达式。

2- 在 ecore 旁边的单独文件中包含 OCL 表达式。

有关第一种方法的更多信息,请查看OCLInEcore,第二种方法请查看OCLComplete。似乎他们提供了一些 API 来检查给定模型的 OCL 约束(一致性检查)。

出于您的目的,OCLInEcore 似乎是合适的。您可以将您的 ocl 嵌入到 ecore 中,并且您可以使用 OCLInEcore 提供的 API 来检查给定模型是否满足 ocl 约束。

希望这可以帮助。

于 2013-10-24T16:26:27.623 回答
1

您应该使用“Ecore 中的 OCL”查看 Eclipse 中 OCL 项目的最新工作,或者您可以尝试其他方法之一,将 OCL 与OCL Juno 文档中指定的 Ecore 集成。

于 2012-08-08T07:19:23.023 回答