Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separate SocialAgent as Person, SocialGroup, and Organisation #282

Open
coolharsh55 opened this issue Oct 21, 2022 · 0 comments
Open

Separate SocialAgent as Person, SocialGroup, and Organisation #282

coolharsh55 opened this issue Oct 21, 2022 · 0 comments

Comments

@coolharsh55
Copy link

The spec defines SocialAgent as:

A Social Agent is a strongly identifiable individual, group, or organization that can own or be responsible for data, and provide authorization to the access of that data by other Agents.

This term should be enhanced with more types for below reasons:

  1. SocialAgent is non-normative - it is not well-defined (outside the spec), not interpreted across any framework (law, standards, ethics).
  2. Merely expressing a SocialAgent does not provide enough context for understanding the implications of providing access to data in a pod. For example, the same term is applied for a Friend, a Family Member, a Colleague, Employer, Company, Government Unit, Authority, Court, NGO, etc. Some of these are 'social', others are not.
  3. The notion of what strongly identifiable means is not defined for a Social Agent (it is for Applications).
  4. The term SocialAgent places no requirements on the factual existence of that Agent. For example, if I made up a company called XYZ, which is not registered anywhere, I can still claim it is a Social Agent as it fits the description.
  5. The term SocialAgent has no association with any legal, philosophical, societal, or fiduciary duties that one should expect to have.

Instead, existing well defined and commonly interpreted terms should be used to express the Agents (I am using simplified descriptions, not definitions below):

  1. A Person (a Natural Person and not a Legal Person) is a type of Agent that is an individual (natural) person as recognised in law.
  2. A Legal Person or Legal Entity is a person or entity that can perform legally recognised actions - such as have contracts. This includes persons and organsiations.
  3. An Organisation is a group of persons with a recognised legal identity (as opposed to 'community groups' like my local reading club). Organisations are governed by legal obligations. They can be for-profit, not-for-profit, NGOs, Governmental, Political, etc.
  4. A Social or Community Group is a group of persons who perform activities as a societal collective. For example, me going for a dinner with friends.
  5. An Authority is an entity with power to do determine something. This can be a certification expert who checks the security is up to date, or a government division that deals with security.

Sepration amongst such categories of Agents is important to enable appropriate contextual handling of data by each Agent. For example, my friend 'accidentally' asking for access to all my data is different than a Company doing the same. Such distinctions also help define how the legal stuff should work - e.g. if I want to complaint about a Social Agent when it is an Organisation, it must specify its legal name and address. By not providing this as part of the Solid specs, people will have to go figure this stuff out for themselves, or have no idea what/whose Apps they are using.

This approach also assists in expanding the identity of the entity outside of verifying control over a domain. For example, The app facebook can state control over the domain facebook.com but the Organisation I would be dealing with (being in Ireland) is Meta - Dublin,IE. I can pull this information from the agent's social profile - but if there is no necessity for this information to exist there (I argue making it mandatory to provide this through the spec) - I may not find it at all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant