我想设计一个系统,用户可以灵活地定义类,对象,属性和值,对象可以绑定到类,然后获取类的属性,然后为每个属性赋值。
我想为某些属性设置多个值,例如,如果一个对象有2个地方的2个电话号码(电话和号码是位置类的属性)我想知道哪个电话是针对1个对象的哪个地方?什么是最好的设计?
我的设计就像吼叫:
Id
,Name
Id
,Name
Id
,ClassId
,ObjectId
Id
,Name
,ClassId
Id
,ClassObjectId
,AttributeId
,Value
答案 0 :(得分:0)
回答你的设计问题:
为了关联手机和地方,您必须使用额外的课程“地点”,并将属性“电话”提供给课程“地点”。类“location”的实例可能有2个类“place”的实例。
这要求您有另外两个表:
顺便说一下。你的元模型很有趣:允许一个对象属于多个类,它非常灵活 因此你可以表达: 对象“Arnold Schwarzenegger”所属的类:BodyBuilder,Immigrnt,演员,书籍作者,商人,政治家。
另一方面,类之间没有继承/子类型关系。 您的属性定义中似乎没有明确的值类型声明。