私は次のグラフ グラフレイアウトを持っています
ご覧のとおり、グラフには次の関係があります。
(u::4)-[ADDED_RESOURCE]->(:resource)<-[ADDED_RESOURCE]-(u::3) \\ u::4, u::3 are the ids of the nodes
.(u::4)-[UNLINK]->(u::3)
APOC を使用して、次のようにグラフをトラバースしています。
MATCH (u:user {id:"u::1"}
CALL apoc.path.expandConfig(u,{minLevel:1,maxLevel:6,bfs:true,uniqueness:"NODE_PATH",labelFilter:">resource"}) YIELD path
with u, path, filter(n in nodes(path) where n:resource) as resources
unwind resources as resource
MATCH (rus:user)-[]->(resource)
RETURN distinct rus.id
これは、関連するリソースを介してu::X
ノードに関連するすべてのノードを返します。u::1
u::4
とはリンクされていないためu::3
、トラバーサルでその接続を無視し、 に関連するサブグラフを返さないようにしたいと思いますu::3
。したがって、 を返す代わりにu::4, u::3, u::2, u::5
、 のみを返す必要がありu::4
ます。
トラバース中に特定の関係を持つノードを無視するよう APOC に指示する方法はありますか?