【发布时间】:2014-03-10 19:10:11
【问题描述】:
我有两个相关的问题需要帮助。
问题 1:如何为条件关系建模? 我希望我的数据表明,当测试 CLT1 的“结果”属性 =“高”时,CLT1 与疾病 A 有关系。如果我采用以节点为中心的方法,我想代码可能看起来像......
(CLT 1 {Result: "High"}) -[:INDICATES] -> (Disease A)
进一步,当CLT1的“Result”属性=“Low”时,CLT1与疾病B有关系
(CLT 1 {Result: "Low"}) -[:INDICATES] -> (Disease B)
或者,如果我采用以关系为中心的方法,代码可能如下所示...
(CLT 1) -[:INDICATES {Result: "High"}] -> (Disease A)
(CLT 1) -[:INDICATES {Result: "Low"} ] -> (Disease B)
问题 2
我有过对数据建模的经验,有 1 个节点具有唯一名称,但标签或属性不同。问题是我希望这些节点是可区分的。但是,它们与 cypher 看起来不同。
我可以给它们多个属性、标签或不同的名称。多样性必须针对每个不同的类别……在标签或属性(1+n 个标签、属性)或不同的名称中。
问题 2 与问题 1 相关,因为我无法对条件关系建模或通过标签或属性区分同一节点 (CLT1)。我可能必须通过在关系中创建可查询的“条件”来解决它。
我有这个权利吗?我还有其他选择吗?
【问题讨论】:
标签: neo4j conditional cypher relationships