Как получить статистику с помощью графической базы данных neoj4?
Я с нетерпением жду возможности использовать NeoJ4 для некоторых исследований. Однако я должен сначала проверить, может ли он делать то, что я хочу.
Я хотел бы построить график, который говорит:
StatementID1 = Cannabidiol hasPositiveEffectOn ChronicPain
StatementID1 isSupportedBy Study1
StatementID1 isSupportedBy Study2
StatementID1 isNotSupportedBy Study3
Это легко добавить ключ: значение свойства для отношения в NeoJ4.
Сложность в том, что я хочу, чтобы Study1,2,3 были узлами. Так что они могут иметь свой собственный набор свойств.
Это можно сделать в магазине триплетов, где каждая тройка имеет идентификатор, такой как "Statment1". Это вопрос добавления троек, где у объекта есть еще один тройной идентификатор.
url:TripleID1 = url:Cannabidiol url:hasPositiveEffectOn url:ChronicPain
url:TripleID2 = url:TripleID1 url:isSupportedBy url:Study1
url:TripleID3 = url:TripleID1 url:isSupportedBy url:Study2
url:TripleID4 = url:TripleID1 url:isNotSupportedBy url:Study3
На данный момент я не могу найти, как сделать это просто в NeoJ4.
Я мог бы добавить DOI исследования как свойство:
Study 1 :
DOI:123/123
Затем добавьте тот же DOI в ссылку:
isSupportedBy:
DOI:123/123
Поскольку DOI является уникальным, можно провести некоторые поиски. Однако это усложнит ситуацию.
Есть ли более простой способ добиться этого?
2 ответа
Neo4j не поддерживает ребра, идущие от ребра к узлу. Края всегда между узлами. Таким образом, вам придется преобразовать ребро positiveEffect в узел (как предложено в ответе rickhg12hs) или смоделировать PositiveEffect как не-ребро (как вы сами предложили).
Я полагаю, это проблема дизайна базы данных.
Будет ли модель узла / отношения, подобная следующей, соответствовать вашим данным и облегчит ваши запросы?