Gremlin отфильтровывает идущий край на основе входящего края при прохождении пути - PullRequest
0 голосов
/ 04 ноября 2019

Я пытаюсь пройти по графику, используя gremlin, в котором выбор исходящего ребра зависит от входящего ребра. Например, у меня есть график

enter image description here

Так что здесь путь A-> B-> C действителен, потому что Arrives.time <(departs.time <, и путь A-> B-> D недействителен, потому что Arrives.time> departs.time

g.V().has("name","A").outE().inV().outE().filter(values("time",lte(???))

Любые указания о том, как я могу это сделать.

1 Ответ

3 голосов
/ 05 ноября 2019

Вы можете использовать where step с by modulator:

g.V().has("name","A")
  .outE("Arrives").as("arrives").inV()
  .outE("Departs").where(lte("arrives")).by("time").inV()

...