适用于包含交叉引用的模型的模型到模型变换的样本配置
本样本说明了变换模型时用于管理交叉引用的两种方式。
开始之前
使用“适用于包含交叉引用的模型的模型到模型变换的设置指示信息”中的指示信息来设置样本。
在未变换所引用元素时变换交叉引用
关于此任务
在运行时工作台的“
包资源管理器
”视图中,展开源项目,展开
模型
,再展开
Source1
;然后展开类 A 和 B。
每个类都有一个属性,且属性的类型是同一包中的另一个类。
展开目标项目并双击名为
将 source1 变换为 target1.tc
的变换配置文件。
在变换配置编辑器中,单击
运行
。
在目标项目中,展开
模型
,再展开
Target1
;然后展开接口 IA 和 IB(由变换从类 A 和 B 生成)。
请注意,属性的类型被设置为目标模型中与源模型中的类相对应的接口。
在源项目中,展开
Source2
。
此文件夹包含具有一个类(名为 C)的包,该类的属性类型是另一个输入模型中的类(Source1 中的类 A,包 P1)。 此交叉引用是本样本的主题。
在目标项目中,双击名为
将 source2 变换为 target2.tc
的变换配置文件。
在变换配置编辑器中,单击
运行
。
在目标项目中,展开
模型
,再展开
Target2
并展开接口
IC
(由变换从类 C 生成)。
所生成的目标模型中的属性类型与该属性在输入模型中的类型相同:Source1 中的类 A。产生这种结果是因为将 Source2 变换为 Target2 的变换没有关于从 Source1 到 Target1 的变换的信息。
结果
如本示例中的情况一样,如果您正在变换多个模型且这些模型包含您要更新至对应对象的模型内引用,那么将无法依次变换模型。 您必须同时变换这些模型。以下部分将告诉您如何执行此操作。
注:
如果不应变换包含所引用元素的模型,也就意味着交叉引用是静态的,那么您不需要以下部分中的指示信息。您可以像通常那样来变换包含引用元素的模型。这些指示信息只适用于要变换交叉引用的目标的情况。
在同时变换所引用元素和引用元素时变换交叉引用
关于此任务
在“
包资源管理器
”视图中,展开目标项目并双击名为
将 source1 和 source2 变换为 target1 和 target2.tc
的变换配置文件。
在变换配置编辑器中,单击
源和目标
选项卡。
请注意,此处指定的源是 Source1.emx,目标是 Target1.emx,与名为
将 source1 变换为 target1.tc
的变换中的相同。
在变换配置编辑器中,单击
备用变换源和目标
选项卡。
此处指定的备用变换源和目标分别是 Source2.emx 和 Target2.emx。运行变换时,将变换 Source2.emx 和 Source1.emx。
在变换配置编辑器中,单击“主要”选项卡;然后单击
运行
。
检查 Target1。
执行完上面的变换后,它们的内容与变换前相同。
检查 Target2。
所生成的接口中 IC 的属性现在设置为 IA,即目标模型中对应于源模型中原始引用的类 A 的接口。
相关信息
适用于包含交叉引用的模型的模型到模型变换的设置指示信息
反馈