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

Add "author" and "party" to terminology, rewrite "claim" terminology #1172

Closed
wants to merge 35 commits into from
Closed
Changes from 26 commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
a215692
update definition of 'claim'
RieksJ Jun 27, 2023
6008f7f
typo fixed
RieksJ Jun 27, 2023
96c7d2d
Added 'party' and updated texts with that term
RieksJ Jun 27, 2023
40129a3
added 'author' and modified some descriptions with it
RieksJ Jun 27, 2023
dbab47d
Addressed all (current) comments.
RieksJ Jun 28, 2023
08a4972
fixed comments by TallTed
RieksJ Jun 29, 2023
ea91405
accommodated Orie's suggestion
RieksJ Jun 29, 2023
da030bb
Addressed TallTed's comments
RieksJ Jun 30, 2023
4221fe4
clarification of issuance
RieksJ Jun 30, 2023
bb780b8
Addressed comment of OR13
RieksJ Jun 30, 2023
17c4421
thanks @davidlehn for spotting typo
RieksJ Jul 3, 2023
06ce351
Update terms.html
RieksJ Jul 4, 2023
a9d8bb9
Addressed Manu's comments
RieksJ Jul 4, 2023
5b9597c
addressed wip-abramson's comments
RieksJ Jul 6, 2023
1b213b1
addressed Ted's comment
RieksJ Jul 7, 2023
8b61aa4
Fix mismatched <UL> in terminology.
msporny Jul 8, 2023
31077c6
addressed TallTeds comment
RieksJ Jul 11, 2023
a09a793
addressed @dlongley's comment
RieksJ Jul 14, 2023
f1ec45c
addressed @brentzundel's suggested change
RieksJ Jul 17, 2023
f900903
Addressed comment by @decentralgabe
RieksJ Jul 18, 2023
abf21e3
Addressed @brentzundel's comment
RieksJ Jul 24, 2023
ec89f9e
removed 'author' as term
RieksJ Jul 24, 2023
e287f14
removed 'party' - should accommodate @brentzundel's and @OR13s comments
RieksJ Jul 25, 2023
d22da0a
comments by @brentzundel and @TallTed
RieksJ Jul 27, 2023
571ae86
comment by @TallTed
RieksJ Jul 31, 2023
a4fb1a4
comments by OR13 and TallTed resolved
RieksJ Aug 1, 2023
3f4448c
addressed comments by @jandrieu and @OR13
RieksJ Aug 2, 2023
788fb36
suggestion by @TallTed
RieksJ Aug 3, 2023
af626d8
attempt to resolve some discussions by various people
RieksJ Aug 5, 2023
16572a9
minor update @TallTed
RieksJ Aug 10, 2023
9172267
Re-used the RDF 'resource' concept to resolve discussions
RieksJ Aug 10, 2023
653c80d
@OR13 comments
RieksJ Aug 11, 2023
246efc4
IRI --> URL
RieksJ Aug 11, 2023
fdecac0
Addressed various comments
RieksJ Aug 14, 2023
c78aeb4
Removed `resource`
RieksJ Aug 14, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 32 additions & 18 deletions terms.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,18 @@
<dl class="termlist">
<dt><dfn data-lt="claims">claim</dfn></dt>
<dd>
An assertion made about a <a>subject</a>.
A digital representation of an assertion made about an <a>entity</a> by a specific <a>entity</a>.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

define or cite definition for "assertion" ?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assertion: the act of asserting, or something that is asserted. See https://www.merriam-webster.com/dictionary/assertion for details. Perhaps we should say, as ISO does, that language that isn't specifically defined in expected to mean what it says from dictionary X. ISO uses the Oxford English Dictionary (OED). As W3C is predominantly American, we could use Merriam-Webster.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assertions can be made about any kind of subject. Subjects need not be entities. They can be concepts.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@jandrieu: In the current spec on the Internet, a 'claim' is 'an assertion made about a subject', and 'subject' is defined as 'a thing about which claims are made'. This is not only a cyclic definition (which I think is a bad practice), but it implies that claims can only be about things, and not about non-things.

I would argue that claims can be made about anything that is known to exist, and my guess is that @jandrieu (and others) would agree. It can be a person (yourself included), a computer, an issuer, a holder, a verifier, an extinct animal, a thought, an idea, a concept, a JSON-object, a verifiable credential, a claim, etc. Really, it is anything you can think of/know to exist.

Since the term 'entity' is already explicitly defined as something different than what we apparently need here, and since the term 'thing' doesn't (really) cut it, I would say we are in need of a term that means 'anything that is known to exist', and that could be defined, e.g., as "anything that is known to exist, e.g., a person (yourself included), a computer, an issuer, a holder, a verifier, an extinct animal, a thought, an idea, a concept, a JSON-object, a verifiable credential, a claim, etc. Really, it is anything you can think of/know to exist."

We can then use this term to define 'claim' as "A digital representation of an assertion made about a {{fill in the chosen term here}} by a specific entity."

I'm curious what term we will end up with.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've added suggested text that I believe may resolve this https://github.com/w3c/vc-data-model/pull/1172/files#r1282231464

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The text @brentzundel suggested would mean that digital representations of arbitrary assertions would all qualify as claims. I think there are assertions that should not qualify as a claim, e.g.:

  • existential statements, such as "it is raining";
  • impersonal statements, i.e. where a subject is assumed that isn't there/specified, as in "it is said that ..."
  • abstract statements, e.g., "love conquers all" (in other contexts than those where the concept of love is being discussed),
  • proverbs/aphorisms: "Every cloud has a silver lining".

The point being, perhaps, that claims should have an actual subject (someone/something that is known to exist), and its definition should make that clear.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes made should address this.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there are assertions that should not qualify as a claim

Do you propose to review the content of every generated VC in order to confirm that the claims contained therein all "qualify" as such in your view? This goes far into the "impossible" category.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No. I'm fine with claims that have a subject (identifier) and a predicate (identifier) and optionally, an object (identifier).

The entity about which the assertion is made is called the <a>subject</a> of the claim.
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
The meaning of the claim (its semantics) is determined by its author.
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
Claims can be authored by <a>issuers</a>, e.g., to construct a <a>verifiable credential</a> with, or
by <a>holders</a>, e.g., to include in a <a>verifiable presentation</a>.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Claims can be authored by <a>issuers</a>, e.g., to construct a <a>verifiable credential</a> with, or
by <a>holders</a>, e.g., to include in a <a>verifiable presentation</a>.
Claims can be made by <a>issuers</a>, e.g., to construct a <a>verifiable credential</a>, or
by <a>holders</a>, e.g., to include in a <a>verifiable presentation</a>.

When a holder creates a VC, they are acting as an Issuer.

Currently, there is no consensus mechanism for adding claims

RieksJ marked this conversation as resolved.
Show resolved Hide resolved
Different <a>issuers</a> and <a>verifiers</a> can reuse the same semantics for claims through the use of shared vocabularies and/or ontologies.
</dd>
<dt><dfn data-lt="credential|credentials">credential</dfn></dt>
<dd>
A set of one or more <a>claims</a> made by an <a>issuer</a>.
The <a>claims</a> in a credential can be about different <a>subjects</a>.
A set of one or more <a>claims</a> created by a single <a>issuer</a>,
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
that is constructed for the purpose of transferring it to some other <a>entity</a>.
The <a>claims</a> in a <a>verifiable credential</a> can be about different <a>subjects</a>.
</dd>
<dt><dfn>data minimization</dfn></dt>
<dd>
Expand Down Expand Up @@ -53,6 +59,8 @@
<dd>
A thing with distinct and independent existence, such as a person,
organization, or device that performs one or more roles in the ecosystem.
For accountability and other purposes, it can be relevant to know
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
whether an entity performs such roles by itself, or on behalf of some other entity.
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
</dd>
<dt><dfn data-lt="graphs">graph</dfn></dt>
<dd>
Expand All @@ -62,10 +70,11 @@
<dt><dfn data-lt="holders|holder's|holders'">holder</dfn></dt>
<dd>
A role an <a>entity</a> might perform by possessing one or more
<a>verifiable credentials</a> and generating <a>presentations</a> from them.
A holder is usually, but not always, a <a>subject</a> of the <a>verifiable
credentials</a> they are holding. Holders store their <a>credentials</a> in
<a>credential repositories</a>.
<a>verifiable credentials</a> and generating <a>verifiable presentations</a>,
both from such <a>verifiable credentials</a> and <a>claims</a> it authors itself.
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
A holder can be the <a>subject</a> of zero or more <a>claims</a> within
the <a>verifiable credentials</a> they are holding.
Holders store their <a>credentials</a> in <a>credential repositories</a>.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Holders store their <a>credentials</a> in <a>credential repositories</a>.
Holders store <a>credentials</a> in <a>credential repositories</a>.

</dd>
<dt><dfn class="lint-ignore"
data-lt="identities|identity's">identity</dfn></dt>
Expand All @@ -91,12 +100,12 @@
specifications. This specification decouples the <a>identity provider</a>
concept into two distinct concepts: the <a>issuer</a> and the <a>holder</a>.
</dd>
<dt><dfn data-lt="issuers|issuer's">issuer</dfn></dt>
<dt><dfn data-lt="issuers|issuer's|issuer(s)|issuing|issued">issuer</dfn></dt>
<dd>
A role an <a>entity</a> can perform by asserting <a>claims</a> about one or
more <a>subjects</a>, creating a <a>verifiable credential</a> from these
<a>claims</a>, and transmitting the <a>verifiable credential</a> to a
<a>holder</a>.
A role an <a>entity</a> can perform as it constructs a <a>verifiable credential</a>
from a set of <a>claims</a> it has authored, including metadata and proofs,
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
typically for the purpose of transferring the <a>verifiable credential</a> to
a <a>holder</a>.
</dd>
<dt><dfn data-lt="presentation|presentations">presentation</dfn></dt>
<dd>
Expand All @@ -114,9 +123,12 @@
The ability of a <a>holder</a> to make fine-grained decisions about what
information to share.
</dd>
<dt><dfn data-lt="subjects|subject's">subject</dfn></dt>
<dd>
A thing about which <a>claims</a> are made.
<dt><dfn data-lt="subjects|subject's|subject(s)">subject</dfn></dt>
The <a>entity</a> about which a <a>claim</a> is made.
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
Note that the common practice of speaking about "*the* <a>subject</a> of a <a>verifiable credential</a>"
may be incorrect, as <a>verifiable credentials</a> can contain multiple <a>claims</a> that can be made
about different <a>entities</a>, in which case *the* <a>subject</a> of that <a>verifiable credential</a>
is not determinable.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
about different <a>entities</a>, in which case *the* <a>subject</a> of that <a>verifiable credential</a>
is not determinable.
about different <a>subjects</a>, in which case *the* <a>subject</a> of that <a>verifiable credential</a>
is plural. It would be more proper to say that such a <a>verifiable credential</a> has multiple subjects. For example,
a <a>verifiable credential</a> marriage license would likely have several subjects: two or more spouses, an officiant, and a witness.

Subjects are not entities. They can be abstract.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Subjects are entities, which can be abstract.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I recommend that our entity description makes it clear that an entity can be abstract to resolve this issue.

The old text used to say that a subject is: "An entity about which claims are made. Example subjects include human beings, animals, and things."

A simple tweak to that would have been: "An entity about which claims are made. An entity can be anything, for example, a person, place, thing, or idea."

Something similar should be done here to clarify without adding a lot of text.

RieksJ marked this conversation as resolved.
Show resolved Hide resolved
</dd>
<dt><dfn class="lint-ignore">user agent</dfn></dt>
<dd>
Expand Down Expand Up @@ -168,9 +180,11 @@
</dd>
<dt><dfn data-lt="verifier|verifiers|verifier's|credential verifiers|credential verifier's">verifier</dfn></dt>
<dd>
A role an <a>entity</a> performs by receiving one or more
<a>verifiable credentials</a>, optionally inside a
<a>verifiable presentation</a> for processing. Other specifications might refer
A role an <a>entity</a> performs by requesting for, and receiving one or more
<a>verifiable credentials</a> that are authored by <a>entities</a> that it trusts,
RieksJ marked this conversation as resolved.
Show resolved Hide resolved
so that they can reliably be processed for the purpose(s) they have been requested.
The <a>verifiable credentials</a> may be received within a
<a>verifiable presentation</a>. Other specifications might refer
to this concept as a <dfn data-lt="relying parties">relying party</dfn>.
</dd>
<dt><dfn data-lt="URL|URLs">URL</dfn></dt>
Expand Down