How to model a domain that has a time component

An approach I came up with, is to store all the nouns (ie cars, buses, drives, destination) in Neo4j, and use another data store (maybe some thing like redis), to store the relationship as json at a particular timestamp.

So a relationship snapshot could look something like this:

{
time_stamp:122397863424,
data: [{
  vehicle_type : bus | car,
  vehicle_id: id,
  driver: drivers_name,
  destination: amiens
}]
}

And then all I now need to do is to load these snapshot data at runtime and dynamically apply it to the graph model in Neo4j.

Which means when a user specify the timestamp, the relationship are applied to the nodes, and the user can then write whatever query they want to explore the data at that particular point in time.

Does this sounds like a valid approach to these modeling problem?