-
Notifications
You must be signed in to change notification settings - Fork 8
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
What is the difference between JsonSchema2023 and CredentialSchema2023? #172
Comments
@msporny the CredentialSchema2023 type wraps a JSON schema in a VC, so that when you resolve the id property of credentialSchema you get a VC where the credentialSubject is a schema. The JsonSchema2023 type is a json schema alone, meaning when you resolve the id in the credentialSchema you get a json schema document. |
Ok, thanks, I think I understand the difference now. If that is the difference, it seems like Example 3 is wrong in the spec today: https://w3c.github.io/vc-json-schema/#credentialschema2023 Specifically, the credential subject is a DID object that has an email address
... and is almost exactly the same as Example 2: https://w3c.github.io/vc-json-schema/#example-example-jsonschema2023 It's also not clear where I'd use one vs. the other, as the specification seems to be silent on that topic (at present). Are you trying to get to a JSON Schema that is signed by the issuer? If so, have you considered using https://w3c.github.io/vc-data-model/#integrity-of-related-resources |
I just reviewed them both and I believe them to be correct, help me understand what might be wrong. Example 2 (under
Example 3 (under
You would want to use I agree the usage of the two can and should be clarified. Opened #173 to address.
Yes, this seems to be to provide a hash...which we would also want, I'll add a note to #120. But does it solve signing too? |
If anyone is confused, following the second link, it's supposed to be https://w3c.github.io/vc-json-schema/#verifiablecredentialschema2023 (not |
The issue was discussed in a meeting on 2023-07-25
View the transcript2. What is the difference between JsonSchema2023 and CredentialSchema2023? (issue vc-json-schema#172)See github issue vc-json-schema#172. Kristina Yasuda: decentralgabe, are you able to talk here? Gabe Cohen: Yes. The current spec defines JSON schema 2023 as well as the credentials schema 2023. The latter just wraps it in a verifiable credential, allowing the provenance of schemas to be verified. Manu Sporny: The examples had some surprising context values. This made the subject of the verifiable credentials appear to be a plain JSON object rather than JSON-LD data.
Manu Sporny: Regarding the decision last meeting about datestamps, which version of JSON Schema applies? It is not clear which would apply.
Gabe Cohen: I am happy to move the data to a new property where the type is 'json'. As for the versioning, I'm happy to change this as well. Manu Sporny: That would address my high-level concerns. The only other concern I have is that sometimes people state the wrong version of JSON Schema. You can't always depend on the metadata. Gabe Cohen: We should maybe introduce a normative requirement to specify a version of JSON Schema, but I don't think we should require a specific version. Sebastian Crane: Wanted to ask, semantically, what does a JSON Schema VC mean in contrast to JSON Schema published via GPG? Gabe Cohen: GPG would be one way to secure a VC, but that's out of scope... there could be other ways to secure JSON Schema that are valid. Manu Sporny: I wanted to agree with decentralgabe that we should make the normative statement stronger, however, I think we should also require at least one specific version of JSON Schema, and make older version support optional.
Manu Sporny: If we remove the version specifier, though, we'll be locked in to that JSON Schema version forever. We could introduce language to require parsing the version identifier. Ivan Herman: There is a blog post in the JSON Schema website which may resolve the issue of version incompatibilities.
Ivan Herman: It may well be that by the time we go to REC, the issue might have disappeared. Gabe Cohen: manu, I like the idea of making at least one required and others optional. Manu Sporny: kristina, I think you said we had a path to CR and REC. What is that? Gabe Cohen: It's the OpenJS Foundation specifications that we are allowed to reference normatively.
Ivan Herman: We are not the only ones to have this trouble.
|
While reviewing w3c/vc-data-model#1178, it was not clear what the difference between https://w3c.github.io/vc-json-schema/#jsonschema2023 and https://w3c.github.io/vc-json-schema/#credentialschema2023 are. They both seem to use JSON Schema to validate an input document, with no differentiating features that I could tell.
What is the difference between those two types? When should you use one vs. the other?
The text was updated successfully, but these errors were encountered: