Re: Verifiable Conditions - implementation progress

I also want to check about the DID-core requirement for only one type. Is this strict? I think Orie Steele suggested to use multiple types while we were drafting the spec, so maybe I have not understood something.

Cheers,
Jack
________________________________
From: Jack Tanner
Sent: 18 May 2021 4:33 PM
To: public-credentials@w3.org <public-credentials@w3.org>
Cc: Manu Sporny <msporny@digitalbazaar.com>; Caspar Roelofs <caspar@gimly.io>; markus@danubetech.com <markus@danubetech.com>
Subject: Verifiable Conditions - implementation progress

<https://github.com/w3c-ccg/verifiable-conditions>Hi

Team Gimly is leading the implementation of the Verifiable Credentials standard<https://github.com/w3c-ccg/verifiable-conditions> as part of the EOSIO DID<https://github.com/Gimly-Blockchain/eosio-did-resolver/blob/c49d23b3053a174cb78e1b7704f2bd43f9be3ab4/src/resolver.ts#L80>. The standard specifies a new verification method type that looks like this:
{
    "id": "did:example:123",
    "controller": "did:example:123",
    "type": ["VerifiableCondition", "VerifiableConditionAnd"],
    "verificationMethod": {...},
}

We think there may be a problem with the Verifiable Credentials standard<https://github.com/w3c-ccg/verifiable-conditions>, as the type property does not conform to the DID-core<https://w3c.github.io/did-core/#verification-methods> spec regarding the type property of verification methods:
The value of the type property MUST be a string that references exactly one verification method type. In order to maximize global interoperability, the verification method type SHOULD be registered in the DID Specification Registries [DID-SPEC-REGISTRIES].

As such, I propose that the Verifiable Condition is a single type, and that subtypes can be expressed like below. Please let me know what you think, especially @markus@danubetech.com<mailto:markus@danubetech.com> and @Manu Sporny<mailto:msporny@digitalbazaar.com>!
{
    "id": "did:example:123",
    "controller": "did:example:123",
    "type": "VerifiableCondition",
    "conditionType": ["VerifiableConditionAnd"],
    "verificationMethod": {...},
}

Cheers,
Jack Tanner

Received on Tuesday, 18 May 2021 17:48:51 UTC