Yes the goal here is to graduate centralized data management. I would like to start by addressing a high-level overview what we need to store.
CitizenInfo: Most importantly an identifier for each citizen, and potentially metadata that substitutes his/her identity.
TopicInfo: General Topic Information, this should include, a title and description of the topic, and policies that come with it. Some voting processes require the list of participating voters (liquid democracy, proxy voting) so this should be included as well.
Vote Info: This I see as the raw data to show who voted for what at a given point in time. This should be tied to a topic.
Results: Each voting computation module will spit out a result for each VoteInfo provided. This may or may not be needed to be stored, but will likely work for caching.
Yes the goal here is to graduate centralized data management. I would like to start by addressing a high-level overview what we need to store.
CitizenInfo
: Most importantly an identifier for each citizen, and potentially metadata that substitutes his/her identity.TopicInfo
: General Topic Information, this should include, a title and description of the topic, and policies that come with it. Some voting processes require the list of participating voters (liquid democracy, proxy voting) so this should be included as well.Vote Info
: This I see as the raw data to show who voted for what at a given point in time. This should be tied to a topic.Results
: Each voting computation module will spit out a result for eachVoteInfo
provided. This may or may not be needed to be stored, but will likely work for caching.