This is just at the beginning stages.
Here we discuss what the hardware/software specifications for the system might look like. Off the top of my head: P2P, decentralised, scalable, needs memory and processing capabilities (but how much), networking is required (but how do we make this P2P, secure, etc)
Terminology
We going to need some standard terminology or else it is all going to get very tiring to explain:
Interrogator (Ir): the person interrogating someones list with their algorithms
Interrogee (Ie): the person holding the list that is being interrogated.
Database (Db): the list or database of social events.
Interrogation Event (IE): the event of a list being interrogated.
Interrogation Event Metric (IEM): whatever values are calculated by the algorithms during an Interrogation Event.
Person Number (P#): A unique number for every person, to individually identify them and enable their hardware to be found on the network.
Recorded Social Event (RSE): The data that describes a real event that tool place (see below).
Social Event Data (SED): All the data about a single specific RSE that is recorded, varies.
Provider (Prv): Someone who provides a service for someone else during a social event.
Receiver (Rcv): Someone who requests and receives a service during a social event.
Current Event (CE): the current providing/recieving event that is taking place and will be recorded, also this is the last event on the list chronologically.
Hardware: The device that holds the owners database and also the processing and algorithms used to interrogate other databases (Could also be called software).
Network: Whatever system is used for hardwares to find each other and transmit data over.
Typical data stored for a recorded social event
Typical data that is stored on a Recorded Social Event in a vague order of importance.
Providers Person Number (May be more than one person providing the service)
Receivers Person Number (May be more than one person receiving the service)
Time of event (to whatever standards are agread, may need to include start and end time too)
Time required for event (if necessary: for example, it took one hour of labour to fix this car)
Set-up time: time required to prepare for the service (might need this or some variation of this for people such as doctors who have to study for years before practicing).
Service provided: see below.
Resource provided: If something is provided that is quantifiable (litres of petrol/water/beer, tons of wood, kg´s of vegetables, number of animals) then it goes here. Lists of such things already exist for customs purposes.
Service Provided
Service provided is a bit complicated, as it needs to be easily interrogatable by algorithms. Here are some proposals.
Items here could be from a standardised list (a list of every service possible). Cons: There are tens of thousands of different services that can be provided, making creating such a list a big task. It´s also complicated as the services list would need to be universal, but at the same time also open and not defined by an authority (maybe lots of different openly maintained lists that one can subscribe to at will would be a solution). Pros: Running a filtering algorithm against it is very easy. It also makes the prior personalised adjustment of the algorithms very easy. The lists could also be used as a method to help people find services and also advertise the services they provide. Multi-lingual use becomes a lot simpler.
Another option is just to let the users describe the service provided as they like, but then it´s very hard to filter later as we need to do some serious AI.
Or we just don´t use the service provided option at all. But then how can do we know who has done what kind of thing? Purely by name association?
Simplification of the list may come as most people don´t care so much about the details, i.e. that someone took an hour to "fix computer" (description on the list) is all most people care about not "fix windows 8 operating system user account security settings" which is too much information for most people. Maybe then the list can reduce to a few hundred items, (e.g. fix a mechanical thing, treat someone medically, drive a vehicle...). Furthermore, what is really important is which ethical category the service provided falls under, right? helping someone is helping someone whatever that help may be. Hence only the potentially negative ethical actions must be highlighted. So then we just need to highlight if the service provided falls under any potentially negative ethical issues (abortion, weapon manufacturing, animal killing, narcotic production, etc). But then how do you make people tick that check-box?
or maybe I´m just looking at it totally wrong... another totally different option is just for everyone to have a list of what they are able and willing to do (like a CV), and then how many times they have done each of those things and for whom. This cuts straight to the chase of helping people decide what kind of citizens they want to interact with.
Property
This is a seperate list that would describe all the geographical areas that the person requests privacy for, and to what level they request privacy on those seperate areas.
Misdemeanours
We are going to need a list of misdemeanours, or - more precisely - a way of recording events that a user would not want recorded on their list.