首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >每个方向具有不同名称的方向关系

每个方向具有不同名称的方向关系
EN

Stack Overflow用户
提问于 2011-05-03 16:34:31
回答 3查看 817关注 0票数 5

在GraphDB平台(Neo4j、OrientDB、FlockDB、HyperGraphDB...)可以定义节点之间的关系。

我需要定义方向关系,以便关系根据其方向具有不同的名称。

例如:

代码语言:javascript
复制
Parent(A,B) := Sibling(B,A).

然后,我想使用术语和方向来遍历或查询一个图。

当然,我不想定义两个关系,而是只定义一个。

有时我甚至想使用非定向名称,例如:

代码语言:javascript
复制
Call(A,B) := Answer(B,A);
TalkWith(A,B) := Call(A,B) || Call(B,A)

并使用定向或间接遍历/查询

例如,我可能想问:

代码语言:javascript
复制
Get any X that TalkWith(A,X))

代码语言:javascript
复制
Get any X that Call(A,X))

代码语言:javascript
复制
Get any X that Answer(A,X))

哪些现有的GraphDB平台支持它?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-05-05 00:07:15

在Gremlin (http://gremlin.tinkerpop.com)中,您可以从数据中显式的内容创建抽象/隐式/推断关系。因此,您可以用这种方式定义推论。

https://github.com/tinkerpop/gremlin/wiki/User-Defined-Steps

Gremlin适用于TinkerGraph、Neo4j、OrientDB、DEX和RDF Sail Stores。

希望这能帮上忙,马可。

票数 5
EN

Stack Overflow用户

发布于 2011-05-03 17:10:09

这听起来像是UI级的问题,而不是数据库级的问题。您正在尝试将有向关系映射到人类友好的名称。

对于Neo4j,您可以将以下信息放入您的自定义RelationshipType:

代码语言:javascript
复制
public enum MyRelationshipType implements RelationshipType
{
    CHILD("Parent Of", "Child Of");

    public MyRelationshipType(final String forwardString, final String backwardString)
    {
        this.forwardString = forwardString;
        this.backwardString = backwardString;
    }

    private final String backwardString;

    private final String forwardString;

    public String getDisplayString(final boolean forward)
    {
        if (forward)
        {
            return this.forwardString;
        }
        else
        {
            return this.backwardString;
        }
    }
}
票数 2
EN

Stack Overflow用户

发布于 2011-05-04 00:54:15

InfoGrid中,我们有无向关系的概念。例如,"HasMet":如果A遇到了B,B必然也遇到了A,A和B在关系中扮演相同的角色。

请注意,单向性超越了命名,它是一个核心语义概念,数据库或建模语言可能理解也可能不理解。

此外,在InfoGrid中,您可以定义自己的几个TraversalSpecifications,并将它们命名为您喜欢的任何别名,包括基本遍历(转到与特定类型的关系相关的邻居),或多步骤遍历(例如,转到您母亲那一边的叔叔)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5867018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档