问题标签 [ocl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
64 浏览

uml - OCL 是否适用于复合结构图?

OCL 是否意味着要与复合结构图结合使用?

还是没有意义?如果有意义,有人可以给出一个可能的 OCL 约束的快速示例,例如基于此示例图吗?

在此处输入图像描述

0 投票
2 回答
1846 浏览

constraints - OCL:以更优化的方式表达唯一约束

我正在学习 OCL(使用“USE”),我对 isUnique() 约束有疑问,下面是以下示例:

  • 我们想通过full类建立客户编号的唯一性约束如下

    /li>

但是这个表达式远非最优,因为约束可能会被重复验证。请任何人都可以向我解释这种情况以及原因,如果您能给我另一种方式来表达 Client.noClient 的唯一约束,请使用最优解。我会很感激任何帮助。

0 投票
1 回答
250 浏览

uml - 在 OCL 中使用 Map 数据结构

我如何在 OCL 中使用地图。例如,我想获取用户 c1 的所有账单,而我的地图“购买”看起来像 Map <Date, Bill>

c1.purchases.Bill?这可能吗?

问候

0 投票
1 回答
348 浏览

uml - 开始学习 UML 和 OCL 以及何时使用 Inv、pre、post

所以,我大约 3 小时前开始学习 OCL。我对何时可以使用inv以及何时需要使用preand感到非常困惑post。所以我想知道你是否可以inv在这种情况下使用?

这是对一个问题的回答:编写一个 OCL 不变量,说明服务的总成本是在汽车上完成的所有工作的成本总和,您必须假设存在方法 Service::cost() 并指定结果。

正如您所看到的,它要求使用 ocl 不变量声明,这是否意味着我必须使用inv?

干杯

0 投票
1 回答
255 浏览

uml - 如何在 ocl 中做到这一点?

我有以下架构: 在此处输入图像描述

对于 Boss 类,我需要所有销售额最高的代理的名称(例如:foreach 代理,如果他有,请选择代理名称 max(foreach command, total = total + price of the product * quantity from command). 如何在 OCL 中执行此操作?

0 投票
2 回答
591 浏览

eclipse-emf - 可以在 Ecore 和 OCL 中保留派生属性并禁用派生吗?

我想移植一种遗留数据格式,它由类似于 Eclipse 建模框架 (EMF) Ecore 的概念组成:具有不同数据类型和默认值的参数的元素。

定制工具让您可以通过精美的基于表格的 GUI 编辑此类模型实例。

此外,参数的一个共同特征是可以添加一个推导规则,该规则指定参数值是从其他参数自动计算的。这似乎也类似于可以由 Java 代码或 OCLinEcore 实现的 Ecore 派生属性。

但是,传统格式的参数的自动派生是可选的。即用户总是可以选择这样的派生参数并选择他或她想要手动输入值。因此,即使派生的参数值也不是瞬态的,而是始终保持不变,包括参数处于“自动”还是“手动”模式的状态。

Ecore(包括 OCLinEcore 之类的扩展)中是否有任何方法可以保留派生属性并在运行时选择性/临时启用/禁用派生?

解决方法可能是不使用 Ecore 的派生属性功能,而是在客户端代码中手动实现可选派生。但是,可选派生规则的声明将不是标准方式。有什么方法可以重用 OCLinEcore 或类似的东西?

0 投票
1 回答
105 浏览

uml - 是否可以在 UML/OCL 中对应用原型的标记值表示约束?

例如,让我们考虑以下 UML 图: 在此处输入图像描述

Block1仅当对于 的所有实例,该实例与的实际类型的Block1::unit_of_press标记值的实例相同时,该模型才有效unitBlock1::press

是否可以在 OCL 中表达这样的约束?

0 投票
1 回答
103 浏览

java - 在 Maven/Tycho-surefire 中使用 OCL

我正在尝试运行使用 OCL 的 eclipse 插件测试,更具体地说:

如果我以右键单击运行它-> 运行为 ...-> Eclipse 插件测试,则效果很好

但是,如果我尝试通过 maven (maven install) 运行它,它会失败并显示以下错误消息:

我尝试添加

到第谷依赖(在 pom 中),但没有任何成功。我将不胜感激有关如何解决此问题的任何想法

0 投票
1 回答
242 浏览

eclipse - 如何在 Acceleo 的 for 循环中比较当前和上一次迭代的值?

是否可以在 Acceleo 的 for 循环中比较当前和上一次迭代的值?

知道 LET 可以在 for 循环中定义,但它在每次当前迭代中都是可变的,因此之前的值将丢失,我们将始终只获得当前值。

0 投票
1 回答
78 浏览

greatest-common-divisor - ocl中的最大公约数

如何编写一个gcd(x : Integer, y : Integer) : Integer返回两个正整数的最大公约数的运算(将它们完全除的最大整数)ocl