Skip to content
This repository has been archived by the owner on Oct 29, 2019. It is now read-only.

[DID Subject] The concept of the DID Subject is redundant, confuding,and I believe unnecessary #139

Closed
mwherman2000 opened this issue Dec 31, 2018 · 7 comments
Labels
editorial Editorial changes to the specification

Comments

@mwherman2000
Copy link

mwherman2000 commented Dec 31, 2018

In https://w3c-ccg.github.io/did-spec/#did-subject, it states...

The DID subject is the identifier that the DID Document is about, i.e., it is the DID described by DID Document. The rules for a DID subject are:

  • A DID Document MUST have exactly one DID subject.
  • The key for this property MUST be id.
  • The value of this key MUST be a valid DID.
  • When this DID Document is registered with the target distributed ledger or network, the registered DID MUST match this DID subject value.

Example:

EXAMPLE 4
{
"id": "did:example:21tDAKCERh95uGgKbJNHYp"
}

I believe "DID Subject" is an unnecessary, extra concept that can be removed from the draft specification. It appears to be just another name for the "id (DID)" property which already carries 1 extra name (i.e. the "DID").

Why is a third name for the same concept (e.g. id, DID and now Subject) necessary?

The concept of the DID Subject is confuding, redundant, and I believe unnecessary - and hence, should be removed from the draft spec (everywhere).

NOTE: If section https://w3c-ccg.github.io/did-spec/#did-subject is deleted, Example 4 needs to be moved elsewhere in the draft DID spec as it is the only representation of the "world's simplest" DID document (which needs to be kept in the spec).

Principle: #lessismore

Cross referenced with issue: #115

Reference: Hyperledger Indy/Sovrin Comprehensive Architecture Reference Model (INDY ARM) - latest version - bullets (12) thru (16) in both the diagram, Narration, and principles

@mwherman2000 mwherman2000 changed the title [DID Subject] The concept of the DID Subject is confuding, redundant, and I believe unnecessary [DID Subject] The concept of the DID Subject is redundant, confuding,and I believe unnecessary Dec 31, 2018
@mwherman2000
Copy link
Author

mwherman2000 commented Jan 1, 2019

I believe (but may be wrong) that Subject is a higher-level concept that belongs to the concept of a Verifiable Credential ...and doesn't need to/shouldn't belong in the DID specification.

Reference: https://w3c.github.io/webpayments-ig/VCTF/architecture/

@rhiaro rhiaro added the discuss Wider discussion in an issue or meeting required before merging label Jan 25, 2019
@rhiaro rhiaro added editorial Editorial changes to the specification and removed discuss Wider discussion in an issue or meeting required before merging labels Mar 3, 2019
@rhiaro
Copy link
Member

rhiaro commented Mar 3, 2019

The DID subject is the thing the DID (decentralized identifier) identifies. Hopefully this is clarified by 418ab1b and 776406c.

@rhiaro rhiaro closed this as completed Mar 3, 2019
@mwherman2000
Copy link
Author

FYI: I'll have to take another look at the whole text of the DID spec once all of these changes settle out. It's hard to tell from just the change logs.

@rhiaro
Copy link
Member

rhiaro commented Mar 3, 2019

@mwherman2000 certainly, and I will be doing more work on the introductory sections (there are still open issues around that) and then a full run through the whole spec, and will let you know when that feels ready for you to go through as a whole.

@talltree
Copy link
Contributor

talltree commented Mar 4, 2019 via email

@mwherman2000
Copy link
Author

RE: 1. Define the "resource identified by a DID" once and for all as the "DID Subject" (which is parallel to both the term used by Verifiable Credentials and by RDF).

@talltree I'm not sure your definition is "100%". Please checkout this scenario: #174

@talltree
Copy link
Contributor

talltree commented Mar 4, 2019

@mwherman2000 I checked out #174 and, unless I'm missing something, it contains a logical tautology. The diagram classifies Alice is a DID Subject, and then it says that Alice does not have a DID.

By definition, a DID Subject is the resource identified by a DID. So therefore if a resource (which per the definition in section 1.1 of RFC 3986 is "anything that can be identified") does not have a DID, then that resource is not a DID Subject.

Now, two clarifications. First, whether a specific resource is a DID Subject applies only to a specific DID. Meaning that a resource (such as a person like Alice) may be a DID Subject in 1000 different contexts (i.e., she is identified by a DID in all of those contexts). But in context 1001, if Alice is NOT identified with a DID, then in context 1001, Alice is NOT a DID Subject.

Secondly, being a DID Subject does not imply anything about the method of the DID used to identify the DID Subject. #174 seems to imply that all DIDs must be registered in a public or widely accessible Verifiable Data Registry. However that is not a requirement of a DID method. For example, a DID method may be pairwise pseudonymous, i.e., shared with only a single peer, as described in did:peer:, a DID method being developed specifically for this purpose.

Net net: I don't think that anything I see in #174 changes the definition that a DID subject is the resource identified by a DID.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
editorial Editorial changes to the specification
Projects
None yet
Development

No branches or pull requests

3 participants