I have a lot of nodes which have a name property.
The name is something comma separated, because it contains synonyms.
So, I decided to try to set the name as a list instead of a single string.
a specific query
match (n:AppellationNew {uuid: "c38e2d52-ebd0-48f3-80d4-e57635e36070"}) return n
returns the following value if shown as a Text, where the name is clearly a List:
{"name":["Asolo Montello","Montello Asolo","Montello","Colli Asolani"]│
│,"uuid":"c38e2d52-ebd0-48f3-80d4-e57635e36070"}
But the same query, if shown as a graph, return a node with the following attributes:
**<id>:** 3526 **name:**Asolo Montello,Montello Asolo,Montello,Colli Asolani **uuid:** c38e2d52-ebd0-48f3-80d4-e57635e36070
Where the name is espressed as a single string with comma separated values.
The name property is indexed and unique with
create constraint on (n:AppellationNew) assert n.uuid is unique
create constraint on (n:AppellationNew) assert n.name is unique
Now, if I try to query that node
match (n:AppellationNew ) WHERE n.name CONTAINS "Asolo" return n
it returns nothing.
So, I have the following questions:
- How can I query to obtain the expected result?
- How can I query on a list property?
- How Neo4j indexes a property which is actually a list?
Thank you