Let's suppose I'm modeling band membership. Here's an example of adding some data:
CREATE
(a:Band {name: "Metallica"}),
(b1:Person {name: "James Hetfield"}),
(b1)-[:JOINED {date: 1981}]->(a),
(b1)-[:LEFT]->(a),
(b2:Person {name: "Lars Ulrich"}),
(b2)-[:JOINED {date: 1981}]->(a),
(b2)-[:LEFT]->(a),
(b3:Person {name: "Dave Mustaine"}),
(b3)-[:JOINED {date: 1981}]->(a),
(b3)-[:LEFT {date: 1983}]->(a),
(b4:Person {name: "Ron McGovney"}),
(b4)-[:JOINED {date: 1982}]->(a),
(b4)-[:LEFT {date: 1983}]->(a),
(b5:Person {name: "Cliff Burton"}),
(b5)-[:JOINED {date: 1982}]->(a),
(b5)-[:LEFT {date: 1986}]->(a),
(b6:Person {name: "Kirk Hammett"}),
(b6)-[:JOINED {date: 1983}]->(a),
(b6)-[:LEFT]->(a),
(b7:Person {name: "Jason Newsted"}),
(b7)-[:JOINED {date: 1986}]->(a),
(b7)-[:LEFT {date: 2001}]->(a),
(b8:Person {name: "Robert Trujillo"}),
(b8)-[:JOINED {date: 2003}]->(a)
(b8)-[:LEFT]->(a)
Instead of editing Cypher code manually, I've been using Microsoft Access to store the node and relationship data.
Nodes:
Table for node labels:
Nodes are associated with labels in another table:
Relationships:
Relationship properties can be edited using subforms:
Some notes about the system are available here.
To get the data into Neo4j, I can export to XML and generate the equivalent Cypher using PowerShell.
Editing the data in Access forms is in many cases more convenient than in raw Cypher.
Surely I'm not the only one who has moved beyond manually editing Cypher code to build graph data.
My question is, are there any tools that are specifically designed to edit graph data for Neo4j?