m2doc - 访问属性模板构造参数的描述属性
问题描述
我想使用参数化模板构造来访问 Property 对象的属性以在 Word 文档中生成一些输出。当我将模板与一些基本类型(例如整数或字符串)一起使用时,它可以正常工作,但是当我尝试使用属性对象时,我只能访问“名称”属性而不能访问例如描述属性。使用单元测试 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 子类,但我没有找到正确的类。有什么建议么?
亲切的问候
基督教
解决方案
是的,您需要将参数元素的类型更改为拥有描述功能的对象的类型。您还需要导入包含 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
使用模板属性向导
推荐阅读
- python - 具有多个特征的递归神经网络中的错误
- javascript - 即使我使用的是 :not 选择器,也会触发事件侦听器
- c# - BigInteger 上的十六进制
- ios - 初始化程序 'init(_:)' 要求 '(UITextRange) -> String?' 符合 'BinaryInteger'
- reactjs - Typescript中泛型格式的歧义
- java - Spring Cloud Stream - 依赖问题
- reactjs - React Native Async Storage 设置项功能
- javascript - 查看 Cloudflare Workers 的错误日志(错误 1101)
- c# - SSH Remote 在 Oracle Linux 7 上获得更少的环境变量
- c - c中的中止调用损坏的大小与prev_size错误