无法从 apoc.load.xml 查询创建的节点
Can't query created nodes from apoc.load.xml
我使用 apoc.load.xml 成功加载了一个 XML 文件,并使用 Neo4j 4.0.3 创建了节点和关系,低于负载的某些部分 XML:
call apoc.load.xml("file:/import.xml",'/doc/obj',{}, false) yield value as II
unwind II._children as RA
unwind RA._children as RA2
unwind RA2._children as RA3
with II.type as Type,
…
merge(e:Element{name:NAME, guid:GUID})
merge(t:Type{name:Type})
merge(e)-[:of]->(t)
return e,t
节点、关系和属性可见,但我无法根据任何 属性 值查询节点。
match(n:Element) where n.name = "element1" return n
(no changes, no records)
虽然搜索 id(n) 工作正常 //match(n:Element) where id(n) > 10 return n
知道为什么我无法为新创建的元素查询 属性 值吗?
显然 name
属性 在导入后包含一个数组,在这种情况下这应该有效
match(n:Element)
where n.name[0] = "element1"
return n
或
match(n:Element)
where "element1" IN n.name
return n
我使用 apoc.load.xml 成功加载了一个 XML 文件,并使用 Neo4j 4.0.3 创建了节点和关系,低于负载的某些部分 XML:
call apoc.load.xml("file:/import.xml",'/doc/obj',{}, false) yield value as II
unwind II._children as RA
unwind RA._children as RA2
unwind RA2._children as RA3
with II.type as Type,
…
merge(e:Element{name:NAME, guid:GUID})
merge(t:Type{name:Type})
merge(e)-[:of]->(t)
return e,t
节点、关系和属性可见,但我无法根据任何 属性 值查询节点。
match(n:Element) where n.name = "element1" return n
(no changes, no records)
虽然搜索 id(n) 工作正常 //match(n:Element) where id(n) > 10 return n
知道为什么我无法为新创建的元素查询 属性 值吗?
显然 name
属性 在导入后包含一个数组,在这种情况下这应该有效
match(n:Element)
where n.name[0] = "element1"
return n
或
match(n:Element)
where "element1" IN n.name
return n