Best graph structure for appointment based graph?

I'm creating a database that will be used for client appointments. The current structure I had in mind was:

(:User {userId: "Int", userFirstName: "String", userLastName: "String"})-[:HAS_ACTIVITY {activityType: "String"}]->(:Activity {activityId: "Int", startTime: "DateTime", endTime: "DateTime"})

Most common use cases will be querying what Activities a User has today, has in the future, and had in the past(filter activities by date range). Activities are blocks of time like a regular calendar. Also will be querying today/upcoming/past activities per Client. This query is more for occasional analytics to see which Client has the most and least activities, not so much a frequently run query.

Is it still best practice to structure this by creating a Year, Month, Day, Hour, Minute (5 minute intervals so 12 nodes) path tree such as indicated here:

Or have things changed and keeping startTime/endTime properties on each Activity node as I currently have above is ok also? I'm importing a pretty large dataset so there will be 10,000 + activities