Guide
Traversal operations consume the current stream and produce the next stream.
Follow a named result
Preserve correlated values
Usebind when a result row must retain values from multiple points in one traversal:
Bind the starting service as service, traverse ROUTES_TO, bind the result as
workload, then project both bindings with projectDistinctBindings (or the
language-equivalent builder). Bindings are row-local. Branches can bind optional
values and coalesce them during projection without joining unrelated paths.
Avoid accidental path growth
- Filter as close to the source as possible.
- Use a label on relationship steps when the schema provides one.
- Add
dedup()when multiple paths can reach the same entity. - Bound recursive traversal with a maximum depth.
- Project only the fields needed by the caller.
Next steps
Project response rows
Shape current values and named bindings.
Branch and repeat
Compose optional, union, choose, and repeat operations.