bfs
Generic Description
Breadth-first traversal from a start point.
Simple example:
CALL nexyron.bfs(0)
Traversal procedures enumerate reachable neighborhoods under breadth-first or depth-first semantics. They are useful for explainability, bounded exploration, and debugging projected graph shape.
Consumer-Level Explanation
Use bfs when breadth-first traversal from a start point is the graph-analysis or operational question you actually need to answer. Keep the call explicit because its YIELD columns, row grain, and required runtime state determine how the rest of the Cypher pipeline can safely compose it. Traversal output is sensitive to start nodes, direction, and depth limits; it should not be mistaken for ranking unless a ranking rule is applied afterward.
Conceptual Explanation
bfs should be read as one named procedure contract in the broader Nexyron Cypher surface. The procedure call is not only a syntax hook: it defines what runtime state, projection, registry entry, or graph algorithm is being asked to operate, and it determines which output columns downstream YIELD, WITH, and RETURN stages can safely use.
More Detailed Explanation
BFS differs from DFS by exploring in layers, which makes it useful when hop distance matters
In practical queries, start by deciding the row grain you want after the call: one row per node, one row per path, one row per registry object, one row per artifact, or one row per summary. Then keep that grain explicit with YIELD and named projections. That is the difference between a useful planner-facing example and a vague call that downstream tooling cannot safely compose. For contract-driven procedures, the executable examples on these pages intentionally inspect procedure metadata unless the required named artifacts are created in the same example.
How It Differs From Nearby Algorithms
BFS differs from DFS by exploring in layers, which makes it useful when hop distance matters.
Advanced Example
This example yields named columns from bfs and returns a bounded result shape that downstream planner tooling can compose without guessing column names or row grain.
CALL nexyron.bfs(0) YIELD node_id, depth
RETURN node_id, depth
LIMIT 10
Real Use Cases
- neighborhood exploration UIs
- reachability by hop count
- layered propagation simulations
- compare algorithm output with domain labels or time windows before operationalizing it
- feed graph-analytic scores into ranked reports, feature contracts, or investigation queues only after checking the modeling assumptions
Real Limitations And Tradeoffs
- raw BFS output is often intermediate data rather than a final answer
- algorithm output reflects the projected graph, not an abstract real-world network outside the data model
- nearby algorithms can answer different questions even when their output columns look similar