Hierarchical data with versioning
Every graph graph dbms seems to be handling these questions with their own unique ways. From what I know about neo4j, It appears that they can handle this somewhat similarly to how Dgraph Labs can. By placing facets, aka edge properties, on the edges, a kind of point in time graph could be interpreted. (I know more about Dgraph, so that is why I lean that direction with links.)
Here are a few discussions around this topic in Dgraph community:

Storing and querying historical data
Facets in GraphQL
Versioned predicates
Adding property to the edges
Querying graph structure at a certain point in time