Найти кратчайший путь между двумя узлами, используя фильтр свойств узла

У меня есть графовая база данных, которая состоит из узлов (автобусных станций) со свойством под названием «is_in_operation» который установлен на «правда" если автовокзал работает; в противном случае он установлен на «ложный".

Между двумя узлами создается связь, если между двумя станциями едет автобус.

Я хотел бы найти путь с наименьшим количеством остановок между двумя узлами, где все узлы в пути работают.

В базе данных есть пример, где есть 2 пути между 2 указанными узлами. «is_in_operation» свойство установлено на ‘правда' для всех узлов в обоих путях. Когда я запускаю следующий запрос, я получаю правильный ответ

START d=node(1), e=node(5) 
MATCH p = shortestPath( d-[*..15]->e ) where all (x in nodes(p) where x.is_in_operation='true')
RETURN p;

Когда я установил ‘is_in_operation» собственность ‘ложный' я ожидаю, что для одного из промежуточных узлов в кратчайшем пути и повторного выполнения запроса он вернет другой путь. Однако я не получаю ответа вообще.

Это неверный запрос? Если да, то как мне указать запрос?

Ответы на вопрос(1)

Ваш ответ на вопрос