访问属性模板构造参数的描述属性

时间:2019-11-22 10:14:49

标签: m2doc

我想使用参数化的模板构造来访问Property对象的属性以在Word文档中生成一些输出。当我将模板与一些基本类型(例如Integer或String)一起使用时,它可以正常工作,但是当我尝试使用Property对象时,我只能访问“ name”属性,而不能访问例如描述属性。以单元测试recursiveEObject-template作为起点,我的模板如下所示:

{ m:template mytest(element : ecore::ENamedElement) }
{ m: element.description }
{ m:endtemplate }

我收到以下错误消息:

{ m:element.        <---Feature description not found in EClass ENamedElement description }

我认为参数的类型是错误的,我需要对其进行更改或将其强制转换为ENamedElement的某些派生的Property子类,但找不到正确的类。有什么建议吗?

亲切的问候

基督徒

1 个答案:

答案 0 :(得分:0)

是的,您需要将parameter元素的类型更改为具有描述功能的对象的类型。您还需要导入包含EClass的EPackage。

例如,如果我想使用Capella对象的描述:

{ m:template mytest(element : capellacore::CapellaElement) }
{ m: element.description }
{ m:endtemplate }

然后导入以下nsURI(可能会根据Capella的版本而更改):

http://www.polarsys.org/capella/core/core/1.4.0

使用template property wizard