Apache TinkerPop Gremlin 顶点相等性

Apache TinkerPop Gremlin Vertex Equality

在遍历图时,我想保存起始顶点,再遍历一点,然后移除所有具有特定边的顶点回到这个保存的顶点。

这是我目前的尝试,但显然是不正确的:

g.V().hasLabel('foo')
  .as('rule')
.repeat(out('belongs_to')).times(2)
.where(
  in('accepts').is(neq('rule'))
)

如何在 Gremlin 中检查顶点相等性?如何过滤掉所有存在此类等式的路径?

where()匹配start-和end-label,因此可以使用where(in('accepts').as('rule'))。因为你想排除那些匹配模式的顶点,你需要使用 not().

来否定这部分
g.V().hasLabel('foo').as('rule').
  repeat(out('belongs_to')).
    times(2).
  not(where(__.in('accepts').as('rule')))