如何将Enterprise Architect中的标记值从一个实例“流”到另一个实例

时间:2016-08-23 20:27:35

标签: enterprise-architect xmi

我的问题是通过EA的技术可用性将概念变为现实。

我正在寻找一种在对象图中连接实例的方法,通过它我可以传输标记值。让我解释一下该项目的背景。

目的是首先为系统中的特定角色提供原型,例如“计算”,“传输”,“决策”,“资格”,“抽象”等。

这些刻板印象中的每一个都有适合其目的的特定标记值。

然后我从这些刻板印象中创建实例,例如。 “MotorTorque:Calculation”和“LimitedTorque:Abstraction”

这些实例中的每一个都有一个共同的标记值,“criticality”,布尔值,我希望这个标记值从“MotorTorque:Calculation”进展到“LimitedTorque:Abstraction”,通过输出端口>某种流动>输入端口的方式。

问题是:

1-这种方法在技术上是否可以在EA中实现?如果是这样,那么正确的方法是什么?

2-目的是让图中的XMI导出中的“连接”可读,我将其用作其他用途的输入。

我已经为我的项目创建了一个带有构造型和标记值的MDG技术,但是,我很难实现这种“连接”,即“流动”的价值。

感谢您的时间。

2 个答案:

答案 0 :(得分:0)

您要求的内容无法直接实现。然而,许多方式导致罗马。

一种方法是<<trace>>将这些对象连接到Status课程(或者您想要命名的任何课程)并将其与#34;共享电视连接起来。&#34;。< / p>

使用加载项的另一种方式(更复杂)。你无论如何都需要创建共享电视的组的方法。根据您目前的解释,我无法看到可能是什么。也许这些实例的实例化类?如果是这样,您创建一个脚本,将电视设置从ist current传播到所有其他链接实例。我不确定当电视改变时加载项事件是否会触发(我在这里有一些疑问)。如果需要,我可以看一下。

答案 1 :(得分:0)

你建议的是部分可行的。

EA中有一个标记值继承链,其中标记值沿泛化链继承,并从分类器继承到其实例。在GUI中,继承的标记值与实例自己的值分开显示,在API中,使用Element.TaggedValuesEx属性访问它们。也可以覆盖继承的标记值。

由于创建端口(或部件/属性)的正确方法是使其成为组件的实例,因此端口将从该组件继承任何标记值。因此,如果您的计算构造型适用于组件,则作为Calculation组件实例的端口将继承MotorTorque标记值。

然而,没有办法流动&#34;从一个端口到另一个端口的标记值。如果你想要这样一个功能,你必须自己使用加载项来实现它。

关于XMI,首先您必须了解XMI导出基于包而不是图。 XMI格式本身是可扩展的,这意味着不同的工具供应商创建自己的扩展,通常不公开记录。至关重要的是,图表布局是这些非标准化扩展的一部分。在EA的案例中,图像数据是某种UU编码的位图,您无法从中提取任何有用的信息。

元素&#39;标记值包含在XMI导出中,但同样,EA扩展未公开记录。换句话说,您可以在另一个程序中导入EA:s XMI格式,但您需要对该格式进行反向工程。并非不可能,但编写自己的专用导出功能或export via CSV可能更好。但请注意,CSV导出无法自动生成 - API中没有对其进行调用。