Skip to content

Commit 2a09e8d

Browse files
ihermanTallTed
andauthored
Updated vocabulary and diagram.
Co-authored-by: Ted Thibodeau Jr <[email protected]>
1 parent 6a3317a commit 2a09e8d

File tree

3 files changed

+593
-440
lines changed

3 files changed

+593
-440
lines changed

vocab/security/template.html

Lines changed: 110 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ <h2>Specification of terms</h2>
156156
using the draw.io (diagrams.net plugin for google).
157157
-->
158158
<div data-include="vocabulary.svg" data-include-replace="true" data-oninclude="massageSVGLinks"></div>
159-
<figcaption>Overview diagram of the vocabulary (without the deprecated items, the error codes, and xsd datatypes).<br />
159+
<figcaption>Overview diagram of the vocabulary (without the reserved and deprecated items, error codes, and `xsd` datatypes).<br />
160160
A separate, stand-alone <a href="vocabulary.svg" target="_blank">SVG version</a> of the diagram, as well as a <a
161161
href="#vocabulary-diagram-alt">textual description</a>,
162162
are also available.
@@ -244,8 +244,115 @@ <h2>Deprecated individuals</h2>
244244
<section class="appendix" id="vocabulary-diagram-alt">
245245
<h2>Diagram description</h2>
246246
<details>
247-
<summary>Overview diagram of the vocabulary (without the deprecated items).</summary>
248-
<p>t.b.d.</p>
247+
<summary>Overview diagram of the vocabulary (without the reserved and deprecated items, error codes, and `xsd` datatypes).</summary>
248+
<p>
249+
The diagram uses boxes, ellipses, and connecting lines with different "styles"
250+
(border color, end marker, line type) to differentiate their semantic meaning;
251+
these styles identify Property, Class, or Datatype, via the shapes used for the
252+
graph nodes, and Superclass, Domain Of, Range, or Contains, via the styles of the connecting lines.
253+
These style names are used in the explanation text that follows, below.
254+
</p>
255+
<p>
256+
The diagram is roughly divided into left and right sections
257+
(although there are some common nodes; see later).
258+
To make this description easier to understand, these will be referred to as the
259+
"Proof Section" and the "Verification Section".
260+
Each of these sections has an ellipse at the top, styled as Class,
261+
and respectively labeled as "Proof" and "VerificationMethod".
262+
</p>
263+
<section>
264+
<h3>Proof Section</h3>
265+
<p>
266+
The left side of the Proof Section contains another ellipse,
267+
styled as Class and labeled as "ProofGraph", and connected
268+
to the ellipse labeled as "Proof" with a connecting line styled as Contains.
269+
There is also a box, styled as Property and labeled as "proof",
270+
connected to the ellipse labeled as "ProofGraph"
271+
with a connecting line styled as Range.
272+
</p>
273+
<p>
274+
There are two more ellipses in this section, styled as Class
275+
and labeled as "Ed25519Signature2020" and "DataIntegrityProof",
276+
each connected to the ellipse labeled as "Proof"
277+
with connecting lines styled as Superclass.
278+
The ellipse labeled as "DataIntegrityProof" is
279+
also connected to a box styled as Property,
280+
and labeled as "cryptosuite", with a connecting
281+
line styled as Domain Of. The "cryptosuite" Property box
282+
is connected to a shape
283+
styled as Datatype and labeled as
284+
"cryptosuiteString", with a connecting
285+
line styled as Range.
286+
</p>
287+
<p>
288+
The right side of the Section contains a column of labeled boxes,
289+
all styled as Property. The labels, from top to
290+
bottom, are "previousProof", "domain", "challenge", "proofPurpose",
291+
"nonce", "created", "proofValue".
292+
The ellipse labeled as "Proof" is connected to all of these with
293+
connecting lines styled as Domain Of.
294+
The box labeled as "previousProof" is also connected to the ellipse
295+
labeled as "Proof" with a connecting line styled as Range.
296+
The box labeled as "proofValue" is connected to a shape styled as Datatype
297+
and labeled as "multibase", with a connecting line styled as Range.
298+
Finally, another box, styled as Property and labeled as "digestMultibase",
299+
is connected to the same "multibase" Datatype shape with
300+
a connecting line styled as Range.
301+
</p>
302+
</section>
303+
<section>
304+
<h3>VerificationMethod Section</h3>
305+
306+
<p>
307+
The right side of this Section contains a column of labeled boxes,
308+
all styled as Property. The labels, from top to bottom, are
309+
"verificationMethod", "authentication", "assertionMethod",
310+
"capabilityDelegation", "capabilityInvocation", and "keyAgreement".
311+
Each of these boxes is connected to
312+
the ellipse labeled "VerificationMethod",
313+
with a connecting line styled as Range.
314+
</p>
315+
<p>
316+
The left side of this Section contains a column of three labeled
317+
boxes, all styled as Property. The labels, from top to bottom, are
318+
"expires", "controller", and "revoked". Each of these is connected
319+
to the ellipse labeled "VerificationMethod",
320+
with connecting lines styled as Domain Of.
321+
The "expires" Property box is also connected to the ellipse
322+
labeled "Proof" in the Proof Section, with a connecting line
323+
styled as Domain Of.
324+
</p>
325+
326+
<p>
327+
The middle of this section contains three ellipses,
328+
styled as Class, and labeled as
329+
"Multikey, "Ed25519VerificationKey2020", and "JsonWebKey".
330+
Each of these is connected to
331+
the ellipse labeled as "VerificationMethod"
332+
with a connecting line styled as Superclass.
333+
</p>
334+
335+
<p>
336+
Two boxes, styled as Property and labeled as "secretKeyMultibase"
337+
and "publicKeyMultibase", are connected to the ellipse
338+
labeled as "Multikey" with a connecting line styled as Domain Of.
339+
Each of these boxes is also connected to the shape in the Proof
340+
section styled as Datatype and labeled as "multibase",
341+
with connecting lines styled as Range.
342+
</p>
343+
344+
<p>
345+
Finally, two boxes, styled as Property and labeled "secretKeyJwk"
346+
and "publicKeyJwk", are connected to the ellipse labeled "JsonWebKey"
347+
with a connecting line styled as Domain Of.
348+
Each of these boxes is also connected to
349+
a shape styled as Datatype and labeled as "rdf:JSON",
350+
with connecting lines styled as Range.
351+
</p>
352+
353+
</section>
354+
355+
249356
</details>
250357
</section>
251358

0 commit comments

Comments
 (0)