PathQueryBuilder
age-schema-client / PathQueryBuilder
Class: PathQueryBuilder<T>
Defined in: src/query/path.ts:72
Path query builder class
Specialized query builder for path finding and traversal operations
Extends
QueryBuilder<T>
Type Parameters
| Type Parameter |
|---|
T extends SchemaDefinition |
Constructors
Constructor
new PathQueryBuilder<T>(
schema,
queryExecutor,
graphName): PathQueryBuilder<T>;
Defined in: src/query/path.ts:80
Create a new path query builder
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
schema | T | undefined | Schema definition |
queryExecutor | QueryExecutor | undefined | Query executor |
graphName | string | 'default' | Graph name |
Returns
PathQueryBuilder<T>
Overrides
Methods
match()
Implementation of the match method
Call Signature
match<L>(label, alias): IMatchClause<T, L>;
Defined in: src/query/builder.ts:71
Add MATCH clause for a vertex
Type Parameters
| Type Parameter |
|---|
L extends string | number | symbol |
Parameters
| Parameter | Type |
|---|---|
label | L |
alias | string |
Returns
IMatchClause<T, L>
Inherited from
Call Signature
match<E>(
sourceAlias,
edgeLabel,
targetAlias): IEdgeMatchClause<T>;
Defined in: src/query/builder.ts:76
Add MATCH clause for an edge between two previously matched vertices
Type Parameters
| Type Parameter |
|---|
E extends string | number | symbol |
Parameters
| Parameter | Type |
|---|---|
sourceAlias | string |
edgeLabel | E |
targetAlias | string |
Returns
IEdgeMatchClause<T>
Inherited from
Call Signature
match<E>(
sourceAlias,
edgeLabel,
targetAlias,
edgeAlias): IEdgeMatchClause<T>;
Defined in: src/query/builder.ts:85
Add MATCH clause for an edge between two previously matched vertices with an edge alias
Type Parameters
| Type Parameter |
|---|
E extends string | number | symbol |
Parameters
| Parameter | Type |
|---|---|
sourceAlias | string |
edgeLabel | E |
targetAlias | string |
edgeAlias | string |
Returns
IEdgeMatchClause<T>
Inherited from
where()
where(condition, params): this;
Defined in: src/query/builder.ts:234
Add WHERE clause
Parameters
| Parameter | Type | Description |
|---|---|---|
condition | string | Condition expression |
params | Record<string, any> | Parameters |
Returns
this
This query builder
Inherited from
return()
return(...expressions): this;
Defined in: src/query/builder.ts:278
Add RETURN clause
Parameters
| Parameter | Type | Description |
|---|---|---|
...expressions | string[] | Return expressions |
Returns
this
This query builder
Inherited from
orderBy()
orderBy(expression, direction): this;
Defined in: src/query/builder.ts:290
Add ORDER BY clause
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
expression | string | undefined | Expression to order by |
direction | OrderDirection | OrderDirection.ASC | Order direction |
Returns
this
This query builder
Inherited from
limit()
limit(count): this;
Defined in: src/query/builder.ts:311
Add LIMIT clause
Parameters
| Parameter | Type | Description |
|---|---|---|
count | number | Limit count |
Returns
this
This query builder
Inherited from
skip()
skip(count): this;
Defined in: src/query/builder.ts:322
Add SKIP clause
Parameters
| Parameter | Type | Description |
|---|---|---|
count | number | Skip count |
Returns
this
This query builder
Inherited from
with()
with(...expressions): this;
Defined in: src/query/builder.ts:333
Add WITH clause
Parameters
| Parameter | Type | Description |
|---|---|---|
...expressions | string[] | With expressions |
Returns
this
This query builder
Inherited from
unwind()
unwind(expression, alias): this;
Defined in: src/query/builder.ts:345
Add UNWIND clause
Parameters
| Parameter | Type | Description |
|---|---|---|
expression | string | Expression to unwind |
alias | string | Alias for unwound items |
Returns
this
This query builder
Inherited from
withParam()
withParam(name, value): this;
Defined in: src/query/builder.ts:357
Add a parameter to the query
Parameters
| Parameter | Type | Description |
|---|---|---|
name | string | Parameter name |
value | any | Parameter value |
Returns
this
This query builder
Inherited from
setParam()
setParam(key, value): Promise<PathQueryBuilder<T>>;
Defined in: src/query/builder.ts:373
Set a parameter in the age_params temporary table
This method inserts a parameter into the age_params temporary table using an INSERT ON CONFLICT UPDATE statement. The parameter can then be referenced in a Cypher query using the get_age_param() function.
Parameters
| Parameter | Type | Description |
|---|---|---|
key | string | Parameter key |
value | any | Parameter value (will be converted to JSON) |
Returns
Promise<PathQueryBuilder<T>>
This query builder
Inherited from
withParamFunction()
withParamFunction(functionName, alias): this;
Defined in: src/query/builder.ts:398
Add a WITH clause that calls a function to get parameters
This is specifically for Apache AGE compatibility, as it requires parameters to be passed via a function call in a WITH clause.
Parameters
| Parameter | Type | Description |
|---|---|---|
functionName | string | Fully qualified function name (e.g., 'schema.get_params') |
alias | string | Alias for the function result (e.g., 'params') |
Returns
this
This query builder
Inherited from
QueryBuilder.withParamFunction
withAgeParam()
withAgeParam(key, alias): this;
Defined in: src/query/builder.ts:413
Add a WITH clause that calls the get_age_param function
This method adds a WITH clause that calls the get_age_param function to retrieve a parameter from the age_params temporary table.
Parameters
| Parameter | Type | Description |
|---|---|---|
key | string | Parameter key to retrieve |
alias | string | Alias for the parameter in the query |
Returns
this
This query builder
Inherited from
withAllAgeParams()
withAllAgeParams(alias): this;
Defined in: src/query/builder.ts:428
Add a WITH clause that calls the get_all_age_params function
This method adds a WITH clause that calls the get_all_age_params function to retrieve all parameters from the age_params temporary table.
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
alias | string | 'params' | Alias for the parameters object in the query |
Returns
this
This query builder
Inherited from
execute()
execute<R>(options): QueryBuilderResult<R>;
Defined in: src/query/builder.ts:441
Execute the query
Type Parameters
| Type Parameter | Default type |
|---|---|
R | any |
Parameters
| Parameter | Type | Description |
|---|---|---|
options | QueryExecutionOptions | Query execution options |
Returns
Query result
Throws
Error if query validation fails
Inherited from
reset()
reset(): this;
Defined in: src/query/builder.ts:584
Reset the query builder state
Returns
this
This query builder
Inherited from
toCypher()
toCypher(): string;
Defined in: src/query/builder.ts:595
Get the Cypher query string
Returns
string
Cypher query string
Inherited from
getParameters()
getParameters(): Record<string, any>;
Defined in: src/query/builder.ts:607
Get the query parameters
Returns
Record<string, any>
Query parameters
Inherited from
validateSchema()
validateSchema(): string[];
Defined in: src/query/builder.ts:624
Validate the query against the schema
Returns
string[]
Validation errors, if any
Inherited from
validateQuery()
validateQuery(): string[];
Defined in: src/query/builder.ts:707
Validate the query for variable references and other semantic issues
Returns
string[]
Validation errors with helpful suggestions
Inherited from
shortestPath()
shortestPath(
startAlias,
endAlias,
relationshipTypes?,
maxDepth?): this;
Defined in: src/query/path.ts:97
Find the shortest path between two vertices
Parameters
| Parameter | Type | Description |
|---|---|---|
startAlias | string | Start vertex alias |
endAlias | string | End vertex alias |
relationshipTypes? | string[] | Relationship types to traverse |
maxDepth? | number | Maximum path depth |
Returns
this
This path query builder
allPaths()
allPaths(
startAlias,
endAlias,
relationshipTypes?,
maxDepth?): this;
Defined in: src/query/path.ts:121
Find all paths between two vertices
Parameters
| Parameter | Type | Description |
|---|---|---|
startAlias | string | Start vertex alias |
endAlias | string | End vertex alias |
relationshipTypes? | string[] | Relationship types to traverse |
maxDepth? | number | Maximum path depth |
Returns
this
This path query builder
variableLengthPath()
variableLengthPath(
startAlias,
relationshipAlias,
endAlias,
relationshipTypes?,
minDepth?,
maxDepth?): this;
Defined in: src/query/path.ts:147
Create a variable-length path query
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
startAlias | string | undefined | Start vertex alias |
relationshipAlias | string | undefined | Relationship alias |
endAlias | string | undefined | End vertex alias |
relationshipTypes? | string[] | undefined | Relationship types to traverse |
minDepth? | number | 1 | Minimum path depth |
maxDepth? | number | undefined | Maximum path depth |
Returns
this
This path query builder
breadthFirstSearch()
breadthFirstSearch(
startAlias,
_relationshipAlias,
_endAlias,
relationshipTypes?,
_maxDepth?): this;
Defined in: src/query/path.ts:178
Perform a breadth-first search
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
startAlias | string | undefined | Start vertex alias |
_relationshipAlias | string | undefined | - |
_endAlias | string | undefined | - |
relationshipTypes? | string[] | undefined | Relationship types to traverse |
_maxDepth? | number | 5 | - |
Returns
this
This path query builder
extractNodes()
extractNodes(pathAlias): this;
Defined in: src/query/path.ts:210
Extract nodes from a path
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
pathAlias | string | 'p' | Path alias |
Returns
this
This path query builder
extractRelationships()
extractRelationships(pathAlias): this;
Defined in: src/query/path.ts:221
Extract relationships from a path
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
pathAlias | string | 'p' | Path alias |
Returns
this
This path query builder
extractPath()
extractPath(pathAlias): this;
Defined in: src/query/path.ts:232
Extract both nodes and relationships from a path
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
pathAlias | string | 'p' | Path alias |
Returns
this
This path query builder