Help creating graph from json file

What I have found helpful (at least with CSV files), is to take it step by step.

First, see if you can create a Node. And as a first step to that, see if you can create a table of the properties of the nodes (not yet created).

CALL apoc.some_call("file:///somefile") YIELD value 
RETURN value.field1, value.field2, ...
LIMIT 10

Then you should get a table. It's going to be a bit more complex than what I've shown because it's JSON, and you have to chase all the JSON elements.

If that works, then create the node:

CALL apoc.some_call("file:///somefile") YIELD value 
CREATE (n:Label{ field1:value.field1, field2:value.field2, ...})

don't forget you might want to convert strings into, e.g.

length:toInt(value.length)

After that works, then you have to figure out the relationships, which is not clear in your data example.

Sometimes, to make it conceptually simple, I will create the nodes in a first pass.

Then, in a second pass, I'll MATCH the existing nodes and then do a creation of the relationships. Something like:

CALL apoc.some_call("file:///somefile") YIELD value 
MATCH(n1:LabelA, {property1:value.field1}
MATCH(n2:LabelB, {property2:value.field2}
MERGE(n1)-[:RELATIONSHIP]->(n2) # or CREATE
RETURN n1,n2

Once you get the hang of it, then it may be possible to do it one pass.

However, I think what I've outlined in sketchy detail will give you a method of learning about your data and Neo4J in bite-sized steps.

I hope that helps.