Location History


Proposal

The location_id in the Person table is only capable of storing a single location address for an individual. We want to know where a person's location was for a given date-time. This maybe solved using a location_history table, which acts as a relational entity between Person and Location.

There are several things to consider here:

The first two issues maybe solved easily. The third, if we are concerned about it, may be resolved by adding an location type field e.g (“primary residence”).

Note in the table below: both person and location IDs do not need to be unique in the residency table.

location_history_id person_id location_id start_date start_time end_date end_time
res1 John Doe location1 May 1985 24:00 - -
res2 Jane Doe location1 May 1985 - - -
res3 Bob Smith location2 July 2011 - June 2012 -
res4 Bob Smith location3 July 2012 14:55 August 2012 21:00

It was agreed that the location_id in person table would represent the current location of the person.

It was discussed that location_history may need to be generalized to include device, care site, provider etc. How do we do that?

location_history_id entity_domain_id entity_id location_id start_date start_time end_date end_time
res1 person person_id_1 location1 May 1985 24:00 - -
res2 provider provider_id_1 location1 May 1985 - - -
res3 care_site care_site_id_1 location2 July 2011 - June 2012 -
res4 person person_id_2 location3 July 2012 14:55 August 2012 21:00

Use Cases