前页 后页

交叉参考

交叉引用是转换的重要组成部分。您可以使用它们来:

  • 找到与之同步的转换后的类
  • 在转换的类之间创建连接器
  • 指定类型的分类器
  • 确定要转换到的位置以进行将来的转换
每个交叉引用都有三个不同的部分:
  • 命名空间,对应于生成元素的转换
  • 名称,它是对可以在转换中生成的内容的唯一引用,并且
  • 源,即创建该元素的元素的GUID
在编写用于转换的模板时,最简单的方法是使用为此目的定义的宏来生成交叉引用:

TRANSFORM_REFERENCE(<名称>,<sourceGuid>,<名称空间>)

这三个参数是可选的。宏生成类似于以下内容的引用:

XRef {namespace =“ <namespace>” name =“ <名称>” source =“ <sourceGuid>”

  • 如果未指定<name>,则宏将获取当前模板的名称。
  • 如果未指定<sourceGUID>,则宏将获取当前类的GUID。
  • 如果未指定<namespace>,则宏将获取当前转换的名称
唯一应指定交叉引用的时间是在创建与通过其他转换创建的类的连接器时。

Enterprise Architect提供的DDL转换是使用交叉引用的一个很好的例子。在类模板中,将创建一个名为“表”的交叉引用。然后最多可以创建两个不同的连接器,每个连接器必须使用交叉引用标识它连接的两个类,同时具有自己的唯一交叉引用。

指定分类器

对象,属性,操作和参数都可以引用模型中的另一个元素作为其类型。从转换创建此类型时,必须使用交叉引用使用宏来指定它:

TRANSFORM_CLASSIFIER(<名称>,<sourceGuid>,<名称空间>)

此宏在分类器元素内生成一个交叉引用,该参数与TRANSFORM_REFERENCE宏相同,但生成名称分类器而不是XRef。

如果在转换之前模型中已经存在目标分类器,则TRANSFORM_CLASSIFIER是不合适的,因此可以将GUID直接提供给分类器属性。

如果为任何类型指定了分类器,它将覆盖该类型。

学到更多