任何Soley Studio用户?
我开始为我的图形定义元模型。我想定义两个节点类(ProdFunction
和ProdPart
),它们都扩展另一个节点类(ArchitectureRelated
)。
但是每当我检查错误或构建解决方案时,它都会给我这个错误:
“ArchitectureRelated”是错误类型,但预期是节点类型
我为班级尝试了不同的名字,但没有改变。是否有特殊关键字来定义“节点类型”? 我的节点元模型的代码是:
node class ProdFunction extends ArchitectureRelated{
mode:string;
name:string;
}
node class ProdPart extends ArchitectureRelated{
name:string;
partnumber:int;
hierLevel:int;
}
答案 0 :(得分:2)
在元模型中,您只能扩展已定义的类。因此,您必须将ArchitectureRelated
定义为节点类。根据我的理解,你不想创建这个类的实例?所以我把它定义为abstract
类。
还要记住,最高的超类必须扩展IdentifiableNode
,IdentifiableDirectedEdge
或IdentifiableUndirectedEdge
。
我建议您将超类ArchitectureRelated
用于属性name:string;
,并让它继承到类ProdFunction
和ProdPart
。
abstract node class ArchitectureRelated extends IdentifiableNode{
name:string;
}
node class ProdFunction extends ArchitectureRelated{
mode:string;
}
node class ProdPart extends ArchitectureRelated{
partnumber:int;
hierLevel:int;
}
您可以在此处找到有关定义元模型的更多信息:Soley Help Center (Metamodel)