加拿大华人论坛 德国留学移民签证实在是要求助一下了,有人对MOF QVT了解多一些吗



在加拿大




要做的题目是关于M2M模型转换的。。就是pim -> psm
有两种方式,用ATL和QVT..  ATL的我已经做好了, 但是QVT真是tm难住我了啊。。。
语言复杂不说,就连刚开始的设定metamodel都搞不定 :(

有人对这个了解多些么?

详细问题请看5楼

评论
楼主这是学校作业啊还是啥?

评论
是pa要做的东西。。楼上了解qvt不?

评论
当时学的时候只是大概了解了一下有这些这些东西,没深学
我就是特别感叹为啥德国人都这么喜欢搞mof,而且有的东西理论弄的那么深,但是一点儿没看出来德国在这方面有多高的生产力

评论
唉。。还是把问题发上来吧

我用qvt写了一个简单的转换程序,但是转换结果怎么弄都是空文件。。

然后我进行了一个简单的测试:

1. 利用OMG给的转换example运行下面的转换:
modeltype UML uses 'http://www.eclipse.org/qvt/1.0.0/Operational/examples/simpleuml';
modeltype RDB uses 'http://www.eclipse.org/qvt/1.0.0/Operational/examples/rdb';

transformation Simpleuml_To_Rdb(in uml : UML, out RDB);

main() {
        uml.rootObjects()[UML::Model]->map model2RDBModel();
}

mapping UML::Model::model2RDBModel() : RDB::Model {
        name := self.name;
}
复制代码Input是一个自己创建的.simpleuml文件,里面有一个Model类,转换结果很正常,自动创见了一个目标文件 .rbd. 里面有一个Model类

然后我用自己做的两个metamodel来转换,代码也是和上面一个性质的:
modeltype uml uses "platform:/resource/QVT/Klasse.ecore";
modeltype relational uses "platform:/resource/QVT/Relational.ecore";

transformation Klasse2Relational(in xx : uml, out relational);

main() {
        xx.rootObjects()[uml::Klasse]->map class2table();
}

mapping uml::Klasse::class2table() : relational::Table {
        name := self.name;

}

复制代码也是自己创建了一个.klasse文件作为input, 内含一个Klasse类, 按理说转换结果应该是一个.relational文件,里面包含一个Table类,但是结果却是一个.relational文件,里面是空的。。我是百思不得其解啊。。

详细的metamodel可以在这里看到:



  ·生活百科 小爱同学可以带到澳洲并正常使用吗?
·生活百科 电话线断了

德国留学移民签证-加拿大

居留中断问题

华人网本人在德国读了两年半硕士,已经拿到毕业证,之后换了8个月的找工作签证,后因疫情回国时间比较久,居留也到期没有续。 现在有导师有意向招我做博士生,请问在这个情况下,我还 ...

德国留学移民签证-加拿大

急找离婚方面的律师

华人网急找一位离婚律师,需要草拟一份离婚后关于孩子抚养费和继承权的合同,谢谢! 请短消息 谢谢 评论 可以联系我们律所。专业家庭法律师,15年以上中中、中德、德德家庭纠纷受理经 ...