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

Changed the proofPurpose range in the vocabulary - issue 248 #258

Merged
merged 5 commits into from
Apr 28, 2024
Merged
Show file tree
Hide file tree
Changes from 3 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
145 changes: 62 additions & 83 deletions vocab/security/template.html
Original file line number Diff line number Diff line change
Expand Up @@ -255,128 +255,107 @@ <h2>Diagram description</h2>
<p>
The diagram uses boxes, ellipses, and connecting lines with different "styles"
(border color, end marker, line type) to differentiate their semantic meaning;
iherman marked this conversation as resolved.
Show resolved Hide resolved
these styles identify Property, Class, or Datatype, via the shapes used for the
graph nodes, and Superclass, Domain Of, Range, Type, or Contains, via the styles of the connecting lines.
these styles identify "Property", "Class", or "Datatype" via the shapes used for the
graph nodes, and "Superclass", "Domain Of", "Range", "Type", or "Contains",
via the styles of the connecting lines. In particular, <em>all</em> ellipses are styled as "Class".
iherman marked this conversation as resolved.
Show resolved Hide resolved
These style names are used in the explanation text that follows, below.
</p>
<p>
The diagram is roughly divided into (lower) left and (lower) right sections, and a top section.
These sections are connected by connecting lines of different types, and there is also one
box, labeled as "multibase" and of a shape Datatype, that is shared by the two lower sections.
To make this description easier to understand, these sections will be referred to as the
"Proof Section", "Verification Section", and "Verification Relationship Section", respectively.
The diagram is roughly divided into three sections — lower left, lower right, and upper.
To make this description easier to understand, these sections will be respectively referred to
as the "Proof", "Verification Method", and "Verification Relationship" sections.
The three sections are connected by lines of different types; additionally, one box,
labeled as "multibase", and having shape "Datatype", is shared by the two lower sections
iherman marked this conversation as resolved.
Show resolved Hide resolved
("Proof" and "Verification Method").
</p>
<p>
Each of these sections has an ellipse at the top, styled as Class,
and respectively labeled as "Proof", "VerificationMethod", and "VerificationRelationship".
Each of these sections has an ellipse at the top, labeled as "Proof", "VerificationMethod",
and "VerificationRelationship", respectively.
</p>
<section>
<h3>Proof Section</h3>
<p>
The left side of the Proof Section contains another ellipse,
styled as Class and labeled as "ProofGraph", and connected
to the ellipse labeled as "Proof" with a connecting line styled as Contains.
There is also a box, styled as Property and labeled as "proof",
connected to the ellipse labeled as "ProofGraph"
with a connecting line styled as Range.
The left side of the section contains another ellipse,
labeled as "ProofGraph", and connected to the ellipse labeled as "Proof" with a connecting line,
styled as "Contains".
A separate box, styled as "Property" and labeled as "proof", is connected to the ellipse labeled as "ProofGraph",
with a connecting line styled as "Range".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>
<p>
There are two more ellipses in this section, styled as Class
and labeled as "Ed25519Signature2020" and "DataIntegrityProof",
each connected to the ellipse labeled as "Proof"
with connecting lines styled as Superclass.
The ellipse labeled as "DataIntegrityProof" is
also connected to a box styled as Property,
and labeled as "cryptosuite", with a connecting
line styled as Domain Of. The "cryptosuite" Property box
is connected to a shape
styled as Datatype and labeled as
"cryptosuiteString", with a connecting
line styled as Range.
There are two more ellipses in this section,
labeled as "Ed25519Signature2020" and "DataIntegrityProof", respectively,
each connected to the ellipse labeled as "Proof" through connecting lines styled as "Superclass".
The ellipse labeled as "DataIntegrityProof" is also connected to a box, styled as "Property" and labeled as
"cryptosuite", with a connecting line styled as "Domain Of".
The "cryptosuite" Property box is connected to a shape, styled as "Datatype" and labeled as "cryptosuiteString",
with a connecting line styled as "Range".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>
<p>
The right side of the Section contains a column of labeled boxes,
all styled as Property. The labels, from top to
bottom, are "previousProof", "domain", "challenge",
"nonce", "created", "proofValue".
The ellipse labeled as "Proof" is connected to all of these with
connecting lines styled as Domain Of.
The box labeled as "previousProof" is also connected to the ellipse
labeled as "Proof" with a connecting line styled as Range.
The box labeled as "proofValue" is connected to a shape styled as Datatype
and labeled as "multibase", with a connecting line styled as Range.
Finally, another box, styled as Property and labeled as "digestMultibase",
is connected to the same "multibase" Datatype shape with
a connecting line styled as Range.
The right side of the section contains a column of labeled boxes, all styled as "Property".
The labels, from top to bottom, are "previousProof", "domain", "challenge", "nonce", "created", and "proofValue".
The ellipse, labeled as "Proof", is connected to all of these with connecting lines styled as "Domain Of".
The box labeled as "previousProof" is also connected to the ellipse, labeled as "Proof", with a connecting line styled as "Range".
The box labeled as "proofValue" is connected to a shape, styled as "Datatype" and labeled as "multibase", with a connecting line styled as "Range".
Finally, another box, styled as "Property" and labeled as "digestMultibase", is connected to the same "multibase" shape, styled as "Datatype", with a connecting line styled as "Range".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>
</section>
<section>
<h3>Verification Section</h3>
<h3>Verification Method Section</h3>

<p>
The left side of this Section contains a column of three labeled
boxes, all styled as Property. The labels, from top to bottom, are
"expires", "controller", and "revoked". Each of these is connected
to the ellipse labeled "VerificationMethod",
with connecting lines styled as Domain Of.
The "expires" Property box is also connected to the ellipse
labeled "Proof" in the Proof Section, with a connecting line
styled as Domain Of.
The left side of this section contains a column of three labeled boxes, all styled as "Property".
The labels, from top to bottom, are "expires", "controller", and "revoked".
Each of these is connected to the ellipse, labeled "VerificationMethod", with connecting lines styled as "Domain Of".
The "expires" "Property" box is also connected to the ellipse labeled "Proof" in the Proof section,
with a connecting line styled as "Domain Of".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>

<p>
There is also a separate box, styled as Property and labeled as "verificationMethod".
This box is connected to the ellipse labeled as "VerificationMethod" with a
connecting line styled as Range.
There is also a distinct box, styled as "Property" and labeled as "verificationMethod".
This box is connected to the ellipse, labeled as "VerificationMethod", with a connecting line styled as "Range".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>

<p>
The middle of this section contains three more ellipses,
styled as Class, and labeled as
"Multikey, "Ed25519VerificationKey2020", and "JsonWebKey".
Each of these is connected to
the ellipse labeled as "VerificationMethod"
with a connecting line styled as Superclass.
The middle of this section contains three more ellipses, labeled as "Multikey, "Ed25519VerificationKey2020",
and "JsonWebKey", respectively.
Each of these is connected to the ellipse, labeled as "VerificationMethod", with a connecting line styled as "Superclass".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>

<p>
Two boxes, styled as Property and labeled as "secretKeyMultibase"
and "publicKeyMultibase", are connected to the ellipse
labeled as "Multikey" with a connecting line styled as Domain Of.
Each of these boxes is also connected to the shape in the Proof
section styled as Datatype and labeled as "multibase",
with connecting lines styled as Range.
Two boxes, styled as "Property" and labeled as "secretKeyMultibase" and "publicKeyMultibase",
respectively, are connected to the ellipse labeled as "Multikey" with a connecting line styled as "Domain Of".
Each of these boxes is also connected to the shape in the Proof section, styled as "Datatype"
and labeled as "multibase", with connecting lines styled as "Range".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>

<p>
Finally, two boxes, styled as Property and labeled "secretKeyJwk"
and "publicKeyJwk", are connected to the ellipse labeled "JsonWebKey"
with a connecting line styled as Domain Of.
Each of these boxes is also connected to
a shape styled as Datatype and labeled as "rdf:JSON",
with connecting lines styled as Range.
Finally, two boxes, styled as "Property" and labeled as "secretKeyJwk"
and "publicKeyJwk", respectively, are connected to the ellipse labeled "JsonWebKey",
with a connecting line styled as "Domain Of".
Both boxes are also connected to a shape, styled as "Datatype" and labeled as "rdf:JSON", with connecting
lines styled as "Range".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>

</section>
<section>
<h3>Verification Relationship Section</h3>
<p>
The left side of the section contains a single box, styled as Property
and labeled as "proofPurpose". This box is connected to the ellipse
"VerificationRelationship" with a connecting line styled as Range,
and is also connected to the ellipse labeled "Proof" in the Proof Section,
with a connecting line styled as Domain Of.
The left side of the section contains a single box, styled as "Property"
and labeled as "proofPurpose".
This box is connected to the ellipse, labeled as "VerificationRelationship",
with a connecting line styled as "Range".
It is also connected to the ellipse in the Proof section, labeled "Proof",
with a connecting line styled as "Domain Of".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>

<p>
The right side of this Section contains a column of labeled boxes,
all styled as Property. The labels, from top to bottom, are
"verificationMethod", "authentication", "assertionMethod",
"capabilityDelegation", "capabilityInvocation", and "keyAgreement".
Each of these boxes is connected to the ellipse labeled "VerificationMethod" in the
Verification section, with a connecting line styled as Range,
and to the ellipse labeled "VerificationRelationship"
with a connecting line styled as Type.
The right side of the section contains a column of labeled boxes,
all styled as "Property".
The labels, from top to bottom, are "verificationMethod", "authentication", "assertionMethod", "capabilityDelegation", "capabilityInvocation", and "keyAgreement".
Each of these boxes is connected to the ellipse in the Verification Method section, labeled "VerificationMethod",
with a connecting line styled as "Range".
Finally, each of these boxes is also connected to the ellipse, labeled "VerificationRelationship",
with a connecting line styled as "Type".
iherman marked this conversation as resolved.
Show resolved Hide resolved
</p>
</section>
</details>
Expand Down
2 changes: 1 addition & 1 deletion vocab/security/vocabulary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ class:
defined_by: https://www.w3.org/TR/vc-data-integrity/#verification-methods

- id: VerificationRelationship
comment: Instances of this class are verification relationships like, for example, <a href="#authentication">authentication</a> or <a href="#assertionMethod">assertionMethod</a>. These resources can also appear as the values of the <a href="#proofPurpose">proofPurpose</a> property.
comment: Instances of this class are verification relationships like, for example, <a href="#authentication">authentication</a> or <a href="#assertionMethod">assertionMethod</a>. These resources can also appear as values of the <a href="#proofPurpose">proofPurpose</a> property.
defined_by: https://www.w3.org/TR/vc-data-integrity/#verification-relationships
upper_value: rdf:Property
context: none
Expand Down
Loading