ich eine Graphenstruktur in Neo4j für einen Fragebogen, die die folgenden Beziehungen haben:Cypher Query Language/Neo4j - Nested Returns von Variable Pfadlänge
(a:Category)-[:INITIAL_QUESTION]->(b:Question)-[c:Answer*]->(d:Question)
wo der spezifische Fragetext in (b|d).text
und den möglichen enthalten ist Antworten für jede Frage sind in der Beziehung enthalten c.response
Aus der ersten Frage gibt es einige Pfade, die länger als andere sind. Ich möchte die Rückkehr in etwa so aussehen:
{"category": "example questionnaire category",
"initialQuestion" : {
"id": 1,
"text": "Example text here",
"possibleAns": {
"yes" : {
"id": 2,
"text": "Second question text here?",
"possibleAns": {
"ans1": {/*Question 4 containing all possible child question nodes nested
in possibleAns*/},
"ans2": {/*Question 5 containing all possible child question nodes nested
in possibleAns*/},
}
},
"no" :{
"id": 3,
"text": "Different question text here?",
"possibleAns": {
"ans1": {/*Question 6 containing all possible child question nodes nested
in possibleAns*/},
"ans2": {/*Question 7 containing all possible child question nodes nested
in possibleAns*/},
}
}
}
}
}
, so dass die gesamte Kategorie Fragebogen in einer einzigen, verschachtelten Karte enthalten ist. Ich habe einige andere Beispiele gesehen, konnte aber diese Abfragen nicht an meine Bedürfnisse anpassen, insbesondere angesichts der variablen Tiefe der Verzweigungen des Fragebogens.
Gibt es eine Cypher-Abfrage, die dies ermöglicht? Wenn nicht, was wäre der beste Ansatz, um den gesamten Fragebogen aus der Datenbank abzurufen?
danke! Genau das habe ich gesucht – aq13