We agreed today to model Actor as a concrete class above Person,
Organization, and SoftwareAgent.  And we left the door open to augmenting
that model in the future.  It would be helpful to have a common
understanding of what problems remain to be solved.

My sense is that there are two orthogonal directions that aren't covered in
today's model:
1) "Identity" as distinguishing uniquely-identified individual things from
kinds of things, and
2) "Identity" as a legal concept distinguishing responsible (liable) from
not responsible

1a: An individual person with DNA vs. a type of person (man, white man, old
man)
1b: An individual organization (Acme Inc.) vs. kind of organization
(corporation, LLC, club)
1c: An individual autonomous SoftwareAgent (a who) vs. a software product
with many copies (a what)

2a: Can be sued (person, organization)
2b: Can't be sued (autonomous software agent)

Using the word Agent instead of Identity means that we are modeling only
Identities that are acting (creating elements, originating artifacts) but
not the identical Identities that just passively have an email address or
current location, or are on a membership list or a watch list.

I think #1 is a MUCH more relevant characteristic of Identity than #2, and
therefore that the parent class should be called Identity, not Agent or
Actor.  The fact that that an Identity's SpdxId appears in
createdBy/originatedBy does not prevent the same Identity SpdxId from
appearing in TaylorSwiftTicketHolders, whereas an Agent SpdxId isn't
applicable to passive lists.

I think #2 expresses a legal perspective, but the word Identity shouldn't
be used just to distinguish suable entities (person, organization) from
non-suable entities.  To some extent that distinction is already blurred
(who do you sue when a self-driving car causes an accident), but the law
can already hold organizations liable for even non-Identity "whats" (e.g.
guns) even when they work perfectly to do exactly what they are designed
and advertised to do.

If SPDX wants to model the distinction between suable and not suable,
Identity should not be the name of the class that represents that
distinction.

Proposal:  Name the parent of Person/Organization/SoftwareAgent
"Identity".  Name a class that encompasses just Person and Organization but
not SoftwareAgent something else, like AgentWithLiability.

If there is some reason other than legal liability to separate autonomous
agents from people and organizations, please articulate it.  Otherwise I'm
clueless as to why Identity can't apply to all individually-identified
entities.

Dave


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#4957): https://lists.spdx.org/g/Spdx-tech/message/4957
Mute This Topic: https://lists.spdx.org/mt/96815530/21656
Group Owner: [email protected]
Unsubscribe: https://lists.spdx.org/g/Spdx-tech/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to