0

我正在编写一个 QVT 模型来模拟从 ecore 到 DDS 模型的转换。我有 Ecpise 3.7.2 和最后一个 QVT Operational 插件 3.1.0v2。问题是内容辅助没有向我显示元模型实体的属性。例如,在这个虚拟示例中,我没有关于 self.name 的建议:

modeltype OPENDDS uses 'http://www.opendds.org/modeling/schemas/OpenDDS/1.0';
modeltype ECORE uses 'http://www.eclipse.org/emf/2002/Ecore';

transformation Ecore2DDS(in inModel : ECORE, out outModel : OPENDDS) {
    main() {
        inModel.rootObjects()[EPackage]->map ePackage2Model();
    }     

    mapping EPackage::ePackage2Model() : DcpsLib{
        name := self.name; 
    }
}
4

2 回答 2

0

转换声明中有错误。main 和 mappings 不能在转换体内!

于 2012-06-21T14:11:28.307 回答
0

转换、模型类型定义和 main 是 qvt 中的主要概念。您的转换从 main 方法开始,调用第一个映射。您的问题是因为您尝试在转换规范中添加主要方法和映射声明。

于 2015-05-16T10:56:29.677 回答