[英]Model OCL evaluation vs Object evaluation
我需要检查模型是否触发一个或多个OCL约束。 模型存储在XEM中,并随EMF一起加载。 OCL约束是自动生成的(字符串等)。
我找到了一种检查EObject约束的方法
helper.setContext(ecClass);
query = helper.createQuery(expression);
Object o = ocl.check(eo, invariant);
o然后包含结果:true或false。
我是否需要“手工”检查模型的每个对象,或者是否有一种方法,方法或类可以直接使模型(可能更有效)?
请注意:-没有建模信息是硬编码的:元模型,模型和OCL以最通用的方式进行操作,-我在独立软件上工作:专门添加了所有jar。 我曾尝试使用DresdenOCL,但不知道为什么注册软件包会很麻烦。
根据您的要求(何时何地检查对象),您可以尝试使用Notifications和/或向扩展EMF EObject的自己的EObject实现中添加一些逻辑。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.