Problem
Exploration across several relationship types requires explicitly enumerated typed patterns. GQ has no edge-alternation or generic edge-wildcard construct that preserves the relationship's concrete type and identity.
Proposed change
Define a traversal over a selected union of edge types, and decide whether a wildcard expands to all eligible edges under the captured schema. Specify direction, compatible endpoint types, heterogeneous property access, edge identity and authorization. Require bounds for recursive/depth traversal; wildcard must not mean an unbounded graph scan.
Keep this separate from Boolean OR over property predicates. Unioning relationships affects typing and multiplicity, not just predicate evaluation.
Acceptance criteria
- A traversal over two edge types returns both types with concrete edge identity/type.
- Parallel edges and self-loops have documented multiplicity/direction semantics.
- Properties absent on one union member are statically rejected or explicitly nullable under a documented type rule.
- Schema additions, permissions and wildcard expansion are tied to a consistent schema/graph snapshot.
- Result/depth/resource limits produce explicit truncation or refusal rather than unbounded fanout.
Starting points: typed edge grammar, type checking. A generic neighborhood API may use this capability, but has its own response/pagination contract.
Problem
Exploration across several relationship types requires explicitly enumerated typed patterns. GQ has no edge-alternation or generic edge-wildcard construct that preserves the relationship's concrete type and identity.
Proposed change
Define a traversal over a selected union of edge types, and decide whether a wildcard expands to all eligible edges under the captured schema. Specify direction, compatible endpoint types, heterogeneous property access, edge identity and authorization. Require bounds for recursive/depth traversal; wildcard must not mean an unbounded graph scan.
Keep this separate from Boolean OR over property predicates. Unioning relationships affects typing and multiplicity, not just predicate evaluation.
Acceptance criteria
Starting points: typed edge grammar, type checking. A generic neighborhood API may use this capability, but has its own response/pagination contract.