OrientDB:是否可以定义一个顶点,它是多个 类 的实例?

OrientDB: Is it possible to define a vertex which is instance of multiple classes?

我正在试验 OrientDB,我想模拟非析取继承。例如: - 有 Person - 学生是一个人 - 工人是一个人 - "Alberto" 既是学生又是工人。 是否可以只用我定义的三个 classes(学生、工人、人)来模拟这种情况,或者我应该引入一个新的 class WorkingStudent,扩展工人和学生,包含 "Alberto"?

我想一个顶点不能是多个 class 的实例,因为系统不知道将它放在哪个集群中,但我还没有找到我的问题的明确答案。

干杯,

Alberto(在职学生 :-))

在 OrientDb 中,一个顶点可以是多个 class 的实例。 使用这个命令

create class WorkingStudent extends Working,Student

亲切的问候。

我认为您可能试图以错误的方式解决这个问题。例如,Alberto 可能永远是一个人。但是当 Alberto 毕业时,他将不再是学生。事实上,他也可能失去工作,不再是工人。将他从一个 class 转移到另一个是一个相当大的问题。

我会创建独立的、较小的工人节点和学生节点。然后创建从 Person 到 Worker 或 Person 到 Student 的边。边可以命名为 "Is A".

现在,添加新类别非常容易,例如 "Parent" 或 "Spouse",无需担心更改 class 继承。

图数据库的一大优势...