Neo4j Traversal Framework


I would like to use the Traversal Java Framework to search in time-expanded model of train time schedules.

I need to traverse the graph in a specific way due to the amount of nodes and relations in the graph.
I have tried to write my own Evaluator, PathExpander and BranchSelector, but the more I learn about these, the more I get confused.

Now I'm stuck with splitting a branch. After traversing on one relationship and arriving to the end, I need to start traversing from a node found along the path, but with a different relationship. PathExpander throws an error if I try to return relationships from a different node than the last one and I have no other idea how to do it.

Also, I can't find any good resources about the Traversal Framework. Nothing I have found describes the interaction between BranchSelectors, Expanders and Evaluators in detail, let alone writing your own.

Could you help me find any good resource on this topic, or some example implementations?

Thank you