sicpa-dlab / photo-id-vc

Verifiable Credential for a Photo ID.
0 stars 0 forks source link

Feedback on the schema from DVV #1

Open joelposti opened 1 month ago

joelposti commented 1 month ago

What

Feedback on the schema from DVV (the Finnish Digital Agency). DVV will be a PhotoID issuer in the EWC pilot.

Why

The schema has some areas that could benefit from improvements.

Feedback

Below is a list of things we would like to see improved.

  1. required Currently all attributes are listed in these arrays. We believe required arrays should have only those attributes listed that are specified as mandatory in the PhotoID.docx file. Fixed in commit 55f714d.

  2. We think that the _unicode suffixes on some attributes are redundant. They also are not consistently applied. For example resident_address_unicode has the suffix, but resident_street does not although that is the most likely address component to have Unicode characters in it.

  3. portrait This attribute should have contentEncoding to indicate how the binary data of the portrait should be encoded (https://json-schema.org/draft/2020-12/json-schema-validation#section-8.3).

  4. issue_date This attribute feels redundant, because the SD-JWT has mandatory iat claim.

  5. issue_date Name of this attribute is different in the PhotoID.docx file: issue_date vs. issuance_date.

  6. issue_date Format of this attribute should be "date-time" instead of "date" because the PhotoID.docx file allows this attribute to be a datetime. Additionally, iat claim is a datetime.

  7. expiry_date This attribute feels redundant, because the SD-JWT could have exp claim.

  8. expiry_date Format of this attribute should be "date-time" instead of "date" because the PhotoID.docx file allows this attribute to be a datetime. Additionally, exp claim is a datetime.

  9. sex Name of this attribute is different in the PhotoID.docx file: sex vs. gender.

  10. sex Value of this attribute is different in the PhotoID.docx file. The PhotoID.docx file says that the value should be compatible with ISO/IEC 5218, meaning the value should be 0, 1, 2 or 9 (https://en.wikipedia.org/wiki/ISO/IEC_5218). The JSON schema, on the other hand, says that the value should be F, M or <. These are incompatible. Fixed in commit 0b420ce.

  11. name_at_birth Is this a family name or a given name? The PhotoID.docx file has family_name_birth and given_name_birth.

  12. birthplace Name of this attribute is different in the PhotoID.docx file: birthplace vs. birth_place.

  13. administrative_number Description of this attribute is quite different between the PhotoID.docx file and the JSON schema.

  14. resident_street, resident_house_number and resident_state Why are these two attributes not in the iso23220 object? Other address components are there.

  15. resident_state This attribute is specified in the PhotoID.docx file but missing from the JSON schema. Fixed in commit 55f714d.

  16. issuing_jurisdiction This attribute is specified in the PhotoID.docx file but missing from the JSON schema.

  17. travel_document_number This attribute is not in the PhotoID.docx file.

mat-work commented 1 month ago

Many thanks @joelposti for your feedback, we are still reviewing the schema and we´ll take your suggestions into account.

joelposti commented 1 month ago

Commits have been pushed since I opened this issue. I edited the issue description to reflect the state of the schema in commit ab02df8.