Я совершенно не знаком с Neo4j. Я тестирую базу данных графа, и у меня есть следующая простая тестовая структура графика: different labeled nodes with properties, which are connected.Сравнение свойств узлов Neo4j во время обхода
Все узлы имеют свойство, которое называется доступом. Это список строковых элементов, таких как:
{access: ['http', 'www']}
Я искал решение, где я получаю все узлы из исходного узла, которые соединены (не имеет значения, какой тип или направление), и их отношения где существует пересечение на свойстве доступа узлов. Я начну с заданного узла и сравню свойство доступа со следующим подключенным узлом. Затем возьмите свойство второго узла и сравните это свойство доступа с узлами, которые связаны с ними. И так далее. Целью должны быть все узлы и их соединения, в которых существует интеллект по свойству доступа. Например, на конкретной структуре графика мы начинаем с узла ENC 2009 и должны проходить все подключенные узлы до тех пор, пока не будет достигнут узел без пересечения в свойстве доступа. В этом примере должна быть достигнута следующая цель: traversed graph
Я пробовал следующий запрос cypher, но он не работает нормально на каждом узле в качестве стартового узла.
MATCH (n:CONFERENCE_SERIE) WHERE n.full_name =~ 'mex.*'
MATCH p = n-[*]-m WHERE FILTER(x IN n.access WHERE x IN m.access)
RETURN p
Есть ли решение, с рамками обхода Java или с шифром, чтобы достичь цели и получить путь такого графа?
Заранее за вашу помощь.
рамки обхода
Вы ищете пути, где ** ** все узлы имеют по крайней мере один 'access' собственности в общем? Или вы ищете пересечение на каждом отдельном шаге, т. Е. Первый и последний узел не нуждаются в перекрестке? Значит ли размер пересечения? –
Я ищу перекресток на каждом отдельном шаге.Так, например, что конкретная серия конференций может иметь доступ к экземплярам конференции и представленному документу, но не к автору, который написал статью или журнал. Размер пересечения не имеет значения. По меньшей мере одно совпадение элемента в списке доступа означает, что этот узел имеет доступ и может быть добавлен к пути. –