【发布时间】:2016-11-23 20:54:13
【问题描述】:
我对 OrientDB 中的多重继承很好奇...假设我创建了以下顶点类:
CREATE CLASS A EXTENDS V
CREATE PROPERTY A.label STRING
CREATE CLASS B EXTENDS A
CREATE PROPERTY B.foo STRING
CREATE CLASS C EXTENDS A
CREATE PROPERTY C.bar STRING
类 B 和 C 从 A 继承属性...所以如果我创建一个从 B 和 C 都继承的新类:
CREATE CLASS D EXTENDS B,C
我得到一个具有以下属性的 D 类:
D.label
D.label
D.foo
D.bar
OrientDB 让这种情况毫无怨言地发生,但我不确定如何在查询中区分一个“标签”属性与另一个。
如果我要尝试直接创建一个与现有属性同名的新属性,例如:
CREATE PROPERTY C.label STRING
我会收到一个错误,因为该属性已经存在。
那么,这是 OrientDB 的多重继承模型中的一个错误吗? OrientDB 删除重复条目是否有意义,或者抛出错误并禁止创建类?
【问题讨论】:
-
我想你可以在 github 上询问它是否是正确的行为
标签: orientdb