Re: Verifiable Conditions - implementation progress

Well yes, all normative "MUST" statements in the specification are
strict in the sense that the DID document would otherwise not be compliant.

E.g. also see the test suite which would fail if the type was an array:
https://github.com/w3c/did-test-suite/blob/main/packages/did-core-test-server/suites/did-core-properties/did-core-properties.js#L80

But I have to admit I also failed to notice this while looking at the
early Verifiable Conditions drafts....

Markus

On 18.05.21 19:48, Jack Tanner wrote:
> 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
>  
> 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 18:22:18 UTC