Kratos Brainstorming
by Yuen-Chi Lian
1. Initial Sets of Data
1.1. YC's PS and SAS
1.2. SweeMeng's MPs
2. Regions
2.1. I see region as a static unchanging entity.
3. New node
4. Database
4.1. UUID for all entities. Damn unique.
4.2. Tables
4.2.1. member
4.2.1.1. Need better name.
4.2.2. saseat
4.2.3. pseat
5. Members
5.1. Only one row per real life person.
5.2. Has collection of seats.
5.3. Has collection of aliases / nick names.
5.4. Has contact details.
5.4.1. Phone
5.4.2. Email
5.4.3. Twitter
5.4.4. WWW
5.4.5. More
5.5. Has birthday.
5.6. Has dead-since.
5.7. Has biography
5.8. Questions
5.8.1. How do you handle MP in office in or not in consecutive years?
5.8.1.1. That's why a MP owns a collection of seats.
5.8.2. How do you handle change of name?
5.8.2.1. Just update the row.
6. Constituencies
6.1. Has collection of aliases.
6.2. Has previous.
6.2.1. It can refer to a row of the same iteration.
6.3. Has valid-until.
6.3.1. Is this even important?
6.3.2. We will have problem to find out valid-since.
6.4. Has iteration.
6.5. State
6.5.1. Iteration + Seat as unique key.
6.6. Questions
6.6.1. Can we have more than one row per real seat?
6.6.1.1. Yes, given that constituencies keep changing per election, we will always insert a full new list.