David, thanks for pointing this out, this seems to be a cypher bug to not
report the property-constraint not being supported in this path pattern for
shortest-path.
you can try this instead:
MATCH p = allShortestPaths((a:Party { currency: 'GBP'
})-[:IN_ESCROW*..3]-(b:Party { currency: 'USD' }))
WHERE ALL (r IN rels(p)
WHERE r.status='cleared')
RETURN p
On Tue, Nov 18, 2014 at 9:49 PM, David Kushner <[email protected]> wrote:
> Hello all!
>
> Currently trying to execute a Cypher query with the following form:
>
> MATCH p = shortestPath((a:Party { currency: 'GBP' })-[:IN_ESCROW*..3 {
> status: 'cleared' }-(b:Party { currency: 'USD'})
> ...
>
> There are other, unrelated bits of the full query but this clause seems to
> be what's giving me trouble. Essentially, I want to find the shortest path
> between any party whose native currency is GBP and any part whose native
> currency is USD (this part works), where the path is formed by :IN_ESCROW
> relations that have a status of 'cleared'. Currently, this query simply
> disregards the "{ status: 'cleared' }" criterion and simply returns all the
> shortest paths between the two matched nodes that happen to be :IN_ESCROW.
>
> Now, I cannot find anywhere in the documentation where this EXACT behavior
> is described, but the documentation certainly covers matching on
> relationship properties, so is it the shortestPath that has thrown things
> off?
>
> Currently using community 2.1.3 as my Neo4j version. Any help you can
> provide would be greatly appreciated!
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Neo4j" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>
--
You received this message because you are subscribed to the Google Groups
"Neo4j" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.