Cool idea! I always thought this was the purpose of cypher match statements but your syntax is much shorter and more familiar dot-pathing
One idea would be for the x.y.z to use functions like
x.y(argument).z
This way you could parameterize the traversals and it’d wind up looking like gremlin in sql