I am exploring TinkerPop and Gremlin and want to understand if the language/syntax will support the following graph question and traversal
(I guess that if so, the TinkerPop "enabled" graphs [AWS Neptun/OrientDB/Girafe/..] will support it also ?)
(if you know any graph db which can answer my requirements please let me know)
lets say we have:
- 3 types of vertices: A,B,C
- 3 types of edges: Hard, Medium, Soft
any two vertices can be connected by any type of edge
our input:
- starting vertex
- value to find
our output/answer:
start from 'input vertex' and find any vertex with type/label 'A' which have value equal to 'input value'
our restrictions:
traversing the graph can be done only under the following rules:
- From vertex 'A' we can move only to vertex 'B' by edge type/label 'Hard'
- From B or C we can move to B or C if edge.label == 'Medium' || edge.label == 'Hard'
- From C to A we can move only if edge.label == 'Hard'
p.s. the answer can be a path or a sub-tree or the id of the node or yes/no I do not care as long as we can answer the graph question
e.g. (from the above image example)
input: Vertex Id = 3 & Value = 56
output: Vertex Id = 5