DID Resolution Contracts

At the behest of an editor for the specification, I have created a series of pull requests that build on each other to re-implement the DID resolution contract in a set of discrete stages. 


Starting with just the function definition and no type information (I personally think this minimalist change is utterly meaningless on its own, but it was requested):

https://github.com/w3c/did-core/pull/295 <https://github.com/w3c/did-core/pull/295>


Adding in type information for all fields and requirements around implementation of the function (and related functions):

https://github.com/w3c/did-core/pull/296 <https://github.com/w3c/did-core/pull/296>


Adding in property values for the metadata input and output fields for the resolution function:

https://github.com/w3c/did-core/pull/297 <https://github.com/w3c/did-core/pull/297>


Adding in a simple definition for metadata structures:

https://github.com/w3c/did-core/pull/298 <https://github.com/w3c/did-core/pull/298>


Adding in requirements for the properties and values of metadata structures, including requirements on transmission and transformation of the same:

https://github.com/w3c/did-core/pull/299 <https://github.com/w3c/did-core/pull/299>



Each of these builds on the one before it in the list, so if you want to see the full change set, look at https://github.com/w3c/did-core/pull/299/commits and go through the commit log to see the individual change sets. I attempted to structure the content of the files to allow for feedback on individual lines within each pull request and easier merging of changes. However, since there is still some debate about how much of this the group wants to use, I do not have any formal advice on where to direct comments until the group formally chooses to move forward with some specific level of changes.


I did not create anything for the DID Dereferencing section, as it is my understanding that the inclusion of that functionality in the group’s scope is still under some debate. If it is decided that it is in, the dereferencing function should be defined and built in the same way the resolution function is here. 

Hopefully this set of changes is clear and descriptive enough to move forward.

As a reminder, we’ll be discussing this on Thursday’s special call this week.

 — Justin

Received on Wednesday, 27 May 2020 21:40:55 UTC