I am designing a web application that visually shows data from Neo4J. Here is my current annotation:
CREATE (diseasedataset:Dataset { title: 'Disease Dataset', description: 'Dataset about diseases and mapping to cytogenetic location', creator: 'Zach'})
CREATE (diseasedata:Table { title: 'Disease', represents: 'mesh:Disease'})
CREATE (diseasedata)-[:BELONGS_TO]->(diseasedataset)
CREATE (diseaseid:Column { title: 'ID', columntype: 'Property', semanticrelation: 'dct:identifier'})
CREATE (diseaseid)-[:BELONGS_TO]->(diseasedata)
CREATE (diseasename:Column { title: 'Name', columntype: 'Property', semanticrelation: 'skos:preferredLabel'})
CREATE (diseasename)-[:BELONGS_TO]->(diseasedata)
CREATE (diseasedesc:Column { title: 'Descriptions', columntype: 'Property', semanticrelation: 'dct:description'})
CREATE (diseasedesc)-[:BELONGS_TO]->(diseasedata)
CREATE (diseasesymp:Column { title: 'Symptoms', columntype: 'Class', represents: 'mesh:Symptom', semanticrelation: 'syo:Symptom'})
CREATE (diseasedesc)-[:BELONGS_TO]->(diseasedata)
How do I create a table (using a cypher query) that for each row has a [Column] and the collection of attributes for each Column. This is particularly tricky because not every column has the same attributes. For example:
Row | Column | Attributes
1 | dieseaseId | title, columnType, semanticRelation
2 | diseasesymp | title, columnType, represents, semanticRelation
3 (etc.)...
Is their an intuitive way to do this? I'm relatively new to Neo4j and Cypher, and haven't been able to find anything like this online or through the documentation. Thanks for your time and any advice!