Zapytanie Cyphera: znajdowanie wszystkich ścieżek między dwoma węzłami filtrowanymi według właściwości relacji

Mam następujący wykres jako bazę danych wykresu Neo4j:

                           activates
                            (80 °F)
          (A)------------------------------------->(D)
           | \__                                _/->^
           |    \__  activates               __/    |
           |       \__(50 °F)             __/       |
           |          \__              __/          |             
           |             \__        __/             | 
activates  |                \__  __/                |
 (50 °F)   |                   \/                   | activates
           |                 __/\__                 | (50 °F)
           |    activates __/      \__              |
           |    (60 °F)__/            \__           |
           |        __/                  \__        |
           |     __/                        \__     |
           |  __/                              \_   |
           v /                                   \->|
          (B)------------------------------------->(C)
                           activates                          
                            (50 °F)

Każda relacja ma właściwość oznaczającą wymaganą temperaturę dla akcji „aktywowanej”.

Muszę odzyskaćwszystkie dostępne ścieżki między (A) a (D)GDZIE temperatura wzdłuż ścieżki wynosi 50 ° F.

Wynik powinien zawierać:

A -[:activates{temperature:'50'}]-> B -[:activates{temperature:'50'}]-> C -[:activates{temperature:'50'}]-> D

A -[:activates{temperature:'50'}]-> C -[:activates{temperature:'50'}]-> D

ale nie

A -[:activates{temperature:'80'}]-> D

A -[:activates{temperature:'50'}]-> B -[:activates{temperature:'60'}]-> D

Jak napisać wymagane zapytanie Cypher?

Z góry dziękuję.

Edytuj 1: Dodałem kolejną relację ukośną (B - [: aktywuje {temperatura: '80 '}] -> D) dla większej przejrzystości.

Edytuj 2: Muszę odzyskaćwszystkie dostępne ścieżki między (A) a (D)GDZIE temperatura jestto samo wzdłuż ścieżki, tj .: A -> B -> C -> D, A -> C -> D, A -> D.

questionAnswers(1)

yourAnswerToTheQuestion