Skip to content
Open
Changes from all commits
Commits
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
29 changes: 8 additions & 21 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -476,7 +476,7 @@ <h1>DID Resolution</h1>
<p>
All conformant <a>DID resolvers</a> MUST implement the <a>DID resolution</a>
function for at least one <a>DID method</a> and MUST be able to return a
<a>DID document</a> in at least one conformant <a>representation</a>.
<a>DID document</a>.
</p>

<p>
Expand Down Expand Up @@ -649,8 +649,7 @@ <h3>DID Resolution Metadata</h3>
error
</dt>
<dd>
An error data structure defined in [[RFC9457]]. This property is REQUIRED when there is an error
in the resolution process. The errors defined by this specification and can be found in
An error data structure defined in [[RFC9457]]. The errors defined by this specification and can be found in
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
An error data structure defined in [[RFC9457]]. The errors defined by this specification and can be found in
An error data structure defined in [[RFC9457]]. The errors defined by this specification can be found in

Section <a href="#errors"></a>.
Additional errors SHOULD be registered in the DID Resolution Extensions [[?DID-EXTENSIONS-RESOLUTION]].
</dd>
Expand Down Expand Up @@ -879,7 +878,7 @@ <h3>DID Document Metadata</h3>

<section id="resolving-algorithm">
<h2>DID Resolution Algorithm</h2>
<p>The following <a>DID resolution</a> algorithm MUST be implemented by a conformant <a>DID resolver</a>.</p>
<p>A <a>DID resolver</a> implements the following <a>DID resolution</a> algorithm.</p>
<ol class="algorithm">
<li>Validate that the <var>input <a>DID</a></var> conforms to the `did` rule of the
<a href="https://www.w3.org/TR/did-core/#did-syntax">DID Syntax</a>.
Expand All @@ -902,10 +901,6 @@ <h2>DID Resolution Algorithm</h2>
<a href="https://www.w3.org/TR/did-core/#method-operations">Read</a> operation against the
<var>input <a>DID</a>'s</var> <a>verifiable data registry</a>, as defined by the <var>input <a>DID method</a></var>:
<ol class="algorithm">
<li>Besides the <var>input <a>DID</a></var>, all additional <var>resolution options</var> of
this algorithm MUST be passed to the
<a href="https://www.w3.org/TR/did-core/#method-operations">Read</a> operation of the
<var>input <a>DID method</a></var>.</li>
<li>If the <var>input <a>DID</a></var> does not exist, return the following result:
<ol class="algorithm">
<li><b>didResolutionMetadata</b>: <var>error object</var> with type set to <a href="#NOT_FOUND">NOT_FOUND</a></li>
Expand Down Expand Up @@ -1248,7 +1243,7 @@ <h3>DID URL Content Metadata</h3>

<section id="dereferencing-algorithm">
<h2>DID URL Dereferencing Algorithm</h2>
<p>The following <a>DID URL dereferencing</a> algorithm MUST be implemented by a conformant <a>DID resolver</a>.
<p>A <a>DID URL dereferencer</a> implements the following <a>DID URL dereferencing</a> algorithm.
In accordance with [[RFC3986]], it consists of the following three steps: resolving the DID; dereferencing the
resource; and dereferencing the fragment (only if the <var>input <a>DID URL</a></var> contains a <a>DID fragment</a>):</p>

Expand Down Expand Up @@ -1592,13 +1587,8 @@ <h2>Metadata Structure</h2>
<a data-cite="INFRA#sets">set</a>,
<a data-cite="INFRA#boolean">boolean</a>, or
<a data-cite="INFRA#nulls">null</a>. The values within any complex data
structure such as a map or list MUST be one of these data types as well.
All metadata property definitions registered in the DID Resolution Extensions
[[?DID-EXTENSIONS-RESOLUTION]] MUST define the value type, including any
additional formats or restrictions to that value (for example, a string
formatted as a date). It is RECOMMENDED that property
definitions use strings for values. The entire metadata structure MUST be
serializable according to the <a
structure such as a map or list MUST be one of these data types as well.
The entire metadata structure MUST be serializable according to the <a
data-cite="INFRA#serialize-an-infra-value-to-json-bytes">JSON
serialization rules</a> in the [[INFRA]] specification. Implementations MAY
serialize the metadata structure to other data formats.
Expand Down Expand Up @@ -1831,9 +1821,7 @@ <h2>Method Architectures</h2>

<p>
To enable <a>verifiable reads</a>, many DID methods use digital signatures, state proofs, proofs of
inclusion in Merkle trees, cryptographic event logs, or other types of proofs. If a <a>DID method</a>
uses such proofs, it MUST specify in its DID method specification how they are used for
verification of the correctness of the result of a "Read" operation.
inclusion in Merkle trees, cryptographic event logs, or other types of proofs.
</p>

<p>
Expand Down Expand Up @@ -1940,8 +1928,7 @@ <h2>Resolver Architectures</h2>
<section id="resolver-architectures-multiple">
<h2>Multiple Methods</h2>

<p>A <a>DID resolver</a> MUST support the <a>DID resolution</a> algorithm for at least one <a>DID method</a> and
MAY support it for multiple <a>DID methods</a>:</p>
<p>A <a>DID resolver</a> might support the <a>DID resolution</a> algorithm for multiple <a>DID methods</a>:</p>
<figure id="figure-resolver-multiple">
<img style="margin: auto; display: block; width: 100%; margin-bottom: 20px;" src="diagrams/section-7/resolver-multiple.svg"
alt="Diagram showing a DID resolver that supports multiple DID methods.">
Expand Down