好的,请帮助我对 OCL 书面约束没有太多了解。在下图中,我试图对类 J 施加约束,使其属性在它之后应该为 true,但它给了我一个错误 Parsing Error: 1:1:4 “inv:” misplaced construct(s)。我不知道如何解决这个错误,在下一个类中,匿名键 =“.0”我也试图提出一个约束,如果 J 类“状态”的属性为真,那么这个类是可见的,请帮助如果有人知道 ocl 约束并指导我了解状态机,请告诉我,谢谢。
问问题
26 次
1 回答
1
(我不熟悉 RSA,除非我可以从 10 年过时的 Eclipse OCL 行为中推断出什么。)
OCL 本身几乎没有用,因为它没有可操作的模型;它需要嵌入到模型提供程序中。
一个这样的提供者是 OCL-in-UML,其中 Essential OCL 表达式由 OpaqueExpression 封装。self.state=true 或者实际上只是 self.state 将是布尔值约束/不变量的一个合理的基本 OCL 表达式。
另一种提供者是补充元模型的完整 OCL 文档。
您已经使用了 Complete OCL 语法,而您应该使用 Essential OCL。
于 2021-06-12T17:26:01.773 回答