NAME
Neo4j::Driver::Type::Path - Directed sequence of relationships between two nodes
VERSION
version 0.26
SYNOPSIS
$q = "MATCH p=(a:Person)-[k:KNOWS]->(b:Person) RETURN p";
$path = $driver->session->run($q)->list->[0]->get('p');
($node_a, $node_b) = $path->nodes;
($relationship_k) = $path->relationships;
($a, $k, $b) = $path->elements;
DESCRIPTION
A path is a directed sequence of relationships between two nodes. Its direction may be separate from that of the relationships traversed.
It is allowed to be of length 0, meaning there are no relationships in it. In this case, it contains only a single node which is both the start and the end of the path.
METHODS
Neo4j::Driver::Type::Path inherits all methods from Neo4j::Types::Path.
elements
@all = $path->elements;
See "elements" in Neo4j::Types::Path.
nodes
@nodes = $path->nodes;
See "nodes" in Neo4j::Types::Path.
relationships
@rels = $path->relationships;
See "relationships" in Neo4j::Types::Path.
EXPERIMENTAL FEATURES
Neo4j::Driver::Type::Path implements the following experimental features. These are subject to unannounced modification or removal in future versions. Expect your code to break if you depend upon these features.
Calling in scalar context
$count = $path->elements;
$count = $path->nodes;
$count = $path->relationships;
The elements()
, nodes()
, and relationships()
methods return the number of items if called in scalar context.
Until version 0.25, they die
d instead.
BUGS
When paths are returned via HTTP JSON, the objects accessible via elements()
, nodes()
, and relationships()
lack meta data for their labels and types. This is due to an issue in the Neo4j server.
SEE ALSO
Equivalent documentation for the official Neo4j drivers: Path (Java)
AUTHOR
Arne Johannessen <ajnn@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2016-2021 by Arne Johannessen.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)