Grakn-在关系与具有属性的关系中扮演角色的角色

问题描述 投票:3回答:1

阅读了grakn dev文档之后,我想知道:

  1. 一个关系可以有很多角色扮演者,包括属性,但
  2. 我也可以为关系分配属性

优点/缺点是什么?您是否有一个很好的例子,说明什么时候有意义,什么会对查询产生什么后果?

attributes relationship grakn
1个回答
3
投票
一个普遍的想法是,每个角色参与者都添加语义信息,以帮助定义其所扮演的关系实例的含义。另一方面,拥有属性会为已经有意义的数据添加附加信息。

因此,我们可以想象contractperson之间的company具有个人和公司作为角色参与者,并且我们为合同的开始和结束时间添加了date属性。但是,如果我们将合同定义为语义上不同的limited-time-contract,则更有意义的是让start-dateend-datepersoncompanylimited-time-contract关系中扮演角色。

一种稍微不同的思考方式是,扮演角色的属性为该属性在关系中的行为提供了额外的上下文。直接所有权不包含更多信息。
© www.soinside.com 2019 - 2024. All rights reserved.