-
Notifications
You must be signed in to change notification settings - Fork 117
PresentationSchema for VPs #839
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
Comments
I propose we define a schema for VPs in JSON Schema, and that v2 perfectly reflect that schema in normative language. |
+1 to a json schema. but what repo should it live in? |
IMO the schema should be in the same repo with the normative statements that it is built from. |
There are two sets of schema that are needed for operational systems.
|
^ This covers the shape of both JWT and Data Integrity Proof VCs... I am in favor of defining schemas... I like type safe languages. I'm more interested in schemas for folks are welcome to copy from any of these schema files, if they are helpful. |
I believe @David-Chadwick meant that we could define a The following is an example, how
I saw similar usage of So, I believe, @David-Chadwick wants to achieve the same thing for new types of Verifiable Presentations such as the following:
In the example above @David-Chadwick Is my assumption correct? Updated:
|
if this is really a request for |
The issue was discussed in a meeting on 2022-08-17
View the transcript2.2. Schema for VPs (issue vc-data-model#839)See github issue vc-data-model#839. David Chadwick: in OIDC, when we stick something into VP, it will have new type into type field -- it would be nice if this data model could give some guidance on how different types of VPs are formed and how recipient will know if VP is well formed.. David Chadwick: Are we going to have a presentation schema? That's the broad issue..
David Chadwick: We have schemas for VCs, so looking at schema you can see what they contain... but we don't have one for VPs. We have talked 19:22:55 Brent Zundel: is anyone opposed to having a vp schema. Manu Sporny: not opposed, but it would be very simple for now.
Dmitri Zagidulin: not opposed but maybe we don't need a schema if all the fields are optional. Michael Jones: not opposed but it is work. Takes work to keep schemas in sync.
Michael Jones: is the effort worth the benefit?.
Michael Prorock: can we leave this until we have more context and examples. Feels like a lot of maintenance work to start now. Oliver Terbu: the schema is needed for syntactic interoperability. Can we reuse Kevin Dean: if we are going to verify a VP then processing schema seems to be fundamental to me.
Samuel Smith: in ACDC we use compose schema and disclose schema so that once verifier signs it is committed to the rules then the ACDC can be disclosed. David Waite: if we have normative text describing properties plus a schema then one has to trump the other if they conflict.
David Waite: since we dont want to mandate people to use schemas then they should be informative. Michael Jones: JSON schema is not used in TLS. Prose are sufficient for interoperable implementations.
Gabe Cohen: their is value in schemas. Manu Sporny: there is spec text already so a schema would be simple and not necessary (for now). David Chadwick: Yes, trying to write down what Oliver said, got a bit lost when he was talking about subtypes and subschemas.. Manu Sporny: we are still not clear if we are talking about a new VPschema or existing credentialSchema. Brent Zundel: concludes that there is no opposition to this, but not necessarily anyone wanting to do all the work!. |
Yes I was requesting that the property presentationSchema be defined in the v2 data model. |
@David-Chadwick thanks, can you please update the title of the issue to reflect what is requested? It was not clear to everybody. |
@OR13 it seems that @David-Chadwick requests to add a new property |
The issue was discussed in a meeting on 2022-08-31
View the transcript4.4. credentialSchema and Selective Disclosure (issue vc-data-model#890)See github issue vc-data-model#890. Brent Zundel: david can you walk us through this?. David Chadwick: thanks for reminding me... there are various ways in which selective disclosure can be done....
Logan Porter: you want to validate as much as you can... I don't think there should be any requirement to check the schema.. David Chadwick: example, I want to see bank account details from a university degree credential... assuming I got an answer... what should the RP do?. Logan Porter: seems the credential would be contradicting the schema. Manu Sporny: several layers... first one is when the issuer issues the credential, are they stating mandatory and optional.... Ted Thibodeau Jr.: I think that those mandatory fields are mandatory for issuance, not presentations..
Samuel Smith: we solve this in ACDC with composable schema... the issuer can create a schema in such a way that the holder can present valid combinations... using anyOf and oneOf. David Chadwick: what I understand is that maybe we need a separate field for presentationSchema... instead of credentialSchema..
Manu Sporny: I am concerned that we know of a few selective disclosure schemes, that define that schema at the cryptographic layer... and thats were it belongs, because you want to enforce.
Manu Sporny: it looks like folks are putting these in the crypto layer, and that we don't need presentationSchema then.. David Chadwick: if we have advanced crypto, maybe that works, but it we are using vanilla crypto, it might be more valuable.
Brent Zundel: this seems like the verifier presentation definition... which is the schema the verifier is requring.. David Chadwick: this would be set by the issuer, not the verifier.
Logan Porter: I think there is a danger of having the issuer control the presentation.
Logan Porter: I think its dangerous to have the issuer mandate presented fields..
See github issue vc-data-model#839. Oliver Terbu: question, is this issue related?. David Chadwick: I don't think they are exactly the same... The verifier is in control of verification... and then applying business rules.
David Chadwick: the verifier can ignore the verification if it wants to.. Ted Thibodeau Jr.: I don't understand.
|
The issue was discussed in a meeting on 2022-10-19
View the transcript3.5. PresentationSchema for VPs (issue vc-data-model#839)See github issue vc-data-model#839. David Chadwick: I haven't looked at this for some time..
David Chadwick: The proposal was to have a presentationSchema property.. Manu Sporny: thinks it lets an attacker choose the schema. |
The issue was discussed in a meeting on 2022-11-09
View the transcript2.3. PresentationSchema for VPs (issue vc-data-model#839)See github issue vc-data-model#839. Kristina Yasuda: lets tackle #839. We agreed with Gabe to begin working on it, this is for credentialSchema for VPs?. David Chadwick: will produce a PR, it is ready but haven't had the time just yet.. |
I have produced the PR for this as requested, but when I tried to push it to the repo it said I did not have write access, so did I want to fork the repo instead. Please advise |
@David-Chadwick I did add a VP schema to the repo here -- https://github.com/w3c/vc-data-model/tree/main/schema is this sufficient to close out this issue? |
My PR is simply adding text to the VCDM to describe this new property. It does not affect your schema but actually supports it |
@David-Chadwick i was planning on another change to add text to support both the VP and VC schemas - happy to build off your work |
My current question is, how should I submit my PR so that you can build off it. Should I create a fork in the repo as Github desktop suggests I should do, or should I be given write access to the VCDM repo (which I believe I had for DCVM v1 and v1.1) |
I'm not sure who controls write access maybe @iherman In the meantime a fork should work - you'll be able to open up a pull request from your fork to this repo which I can build upon |
Thanks. Manu also suggested the same approach. So you should be able to see the PR now #987 |
In general I'm supportive of that feature since I found |
@awoie Good question. The presentationSchema should control the properties of the VP, not the VC. That being said, any instantiation of the presentationSchema will no doubt mandate that a verifiableCredential property must be present, without diving into the details of this property, as its credentialSchema will do that |
The issue was discussed in a meeting on 2023-06-06
View the transcript1.4. PresentationSchema for VPs (issue vc-data-model#839)See github issue vc-data-model#839. Brent Zundel: presentation schema for VPs, the associated PR is closed because we couldn't come to consensus to merge it. Suggest marking this as pending close in light of that.
Manu Sporny: +1. Brent Zundel: ok, not hearing objections, marking pending close and moving on. |
No objections raised since marked |
Uh oh!
There was an error while loading. Please reload this page.
The current specification does not address the schema of verifiable presentations, but each VP will have a schema, and different organisations, or protocol specifications, may require different parameters to be inserted into VPs e.g. nonces. I therefore think it would be a good idea to define the presentationSchema property in the v2 DM, with a similar definition to credentialSchema, in order to allow holders to describe the structure and format of the VP.
The text was updated successfully, but these errors were encountered: