@@ -178,7 +178,7 @@ def get_children(neo4j_driver, uuid, property_key = None):
178178 f"WHERE e.uuid='{ uuid } ' AND e.entity_type <> 'Lab' "
179179 # COLLECT() returns a list
180180 # apoc.coll.toSet() reruns a set containing unique nodes
181- f"RETURN apoc.coll.toSet(COLLECT(child)) AS { record_field_name } " )
181+ f"RETURN apoc.coll.toSet(COLLECT(apoc.create.vNode(labels( child), apoc.map.removeKeys(properties(child), { fields_to_omit } )) )) AS { record_field_name } " )
182182
183183 logger .info ("======get_children() query======" )
184184 logger .info (query )
@@ -233,7 +233,7 @@ def get_parents(neo4j_driver, uuid, property_key = None):
233233 f"WHERE e.uuid='{ uuid } ' AND parent.entity_type <> 'Lab' "
234234 # COLLECT() returns a list
235235 # apoc.coll.toSet() reruns a set containing unique nodes
236- f"RETURN apoc.coll.toSet(COLLECT(parent)) AS { record_field_name } " )
236+ f"RETURN apoc.coll.toSet(COLLECT(apoc.create.vNode(labels( parent), apoc.map.removeKeys(properties(parent), { fields_to_omit } )) )) AS { record_field_name } " )
237237
238238 logger .info ("======get_parents() query======" )
239239 logger .info (query )
@@ -401,7 +401,7 @@ def get_ancestors(neo4j_driver, uuid, property_key = None):
401401 f"WHERE e.uuid='{ uuid } ' AND ancestor.entity_type <> 'Lab' "
402402 # COLLECT() returns a list
403403 # apoc.coll.toSet() reruns a set containing unique nodes
404- f"RETURN apoc.coll.toSet(COLLECT(ancestor)) AS { record_field_name } " )
404+ f"RETURN apoc.coll.toSet(COLLECT(apoc.create.vNode(labels( ancestor), apoc.map.removeKeys(properties(ancestor), { fields_to_omit } )) )) AS { record_field_name } " )
405405
406406 logger .info ("======get_ancestors() query======" )
407407 logger .info (query )
@@ -457,7 +457,7 @@ def get_descendants(neo4j_driver, uuid, property_key = None):
457457 f"WHERE e.uuid='{ uuid } ' AND e.entity_type <> 'Lab' "
458458 # COLLECT() returns a list
459459 # apoc.coll.toSet() reruns a set containing unique nodes
460- f"RETURN apoc.coll.toSet(COLLECT(descendant)) AS { record_field_name } " )
460+ f"RETURN apoc.coll.toSet(COLLECT(apoc.create.vNode(labels( descendant), apoc.map.removeKeys(properties(descendant), { fields_to_omit } )) )) AS { record_field_name } " )
461461
462462 logger .info ("======get_descendants() query======" )
463463 logger .info (query )
0 commit comments