Skip to content

make credential_type an array - #61

Open
c2bo wants to merge 3 commits into
mainfrom
46-make-credential_type-array
Open

c2bo wants to merge 3 commits into
mainfrom
46-make-credential_type-array

Conversation

@c2bo

@c2bo c2bo commented Sep 21, 2026

Copy link
Copy Markdown
Member

Closes #46

@github-actions

github-actions Bot commented Sep 21, 2026 •

Copy link
Copy Markdown

📄 Editor's Copy preview

https://openid.github.io/dchp/PREVIEW-DO-NOT-USE/pr-61/digital-credentials-harmonized-presentation-editors-copy.html

Preview of a9ce0fc; updated on every push. For review only — the official specifications are published at https://openid.net/specs/

github-actions Bot pushed a commit that referenced this pull request Sep 21, 2026

@jogu jogu left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We need to update the definition of 'allow_multiple' - it currently says "Allow returning multiple credentials of the same type" and my presumption is with this change you end up allowing any of the types in the array. (This falls out of it being semantically equivalent to the longer form non-array form of repeating the query.)

Note this will clash with #57 - we could use stacked PRs here: https://docs.github.com/en/pull-requests/how-tos/stacked-pull-requests (i.e. built on top of my branch, and assuming mine is merged first GitHub should auto retarget yours to main when mine is merged). The a query matches credentials whose docType or vct "is identical to the requested value" in mine will need to be updated too.

Comment thread draft/digital-credentials-harmonized-presentation.md Outdated
Comment thread draft/digital-credentials-harmonized-presentation.md Outdated
Comment thread draft/digital-credentials-harmonized-presentation.md Outdated
Comment thread draft/digital-credentials-harmonized-presentation.md Outdated
| `encryption_ref` | `7` | `int` | O | Reference to an entry in `additional_encryption_contexts`; absent means the main `encryption_context` is used |

Listing multiple values in `credential_type` is a size optimization for requesting the same data elements from credential types that are closely related (e.g., newer versions of the same credential type). The same effect could be achieved by defining multiple `CredentialQuery` entries.
The verifier MUST ensure that every element in `elements_dict` is defined for each listed credential type.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Discussed on today's WG call:

Martijn will make a comment/suggestion. It's not a "MUST" but for the query to work this needs to be the case, e.g. if one credential has an extension and the other doesn't.

Comment thread draft/digital-credentials-harmonized-presentation.md Outdated
| `format_extensions` | `6` | `formatExtensions` | O | Format-specific extensions (e.g., `mdocExtensions`, `sdjwtExtensions`) |
| `encryption_ref` | `7` | `int` | O | Reference to an entry in `additional_encryption_contexts`; absent means the main `encryption_context` is used |

Listing multiple values in `credential_type` is a size optimization for requesting the same data elements from credential types that are closely related (e.g., newer versions of the same credential type). The same effect could be achieved by defining multiple `CredentialQuery` entries.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See above

Suggested change
Listing multiple values in `credential_type` is a size optimization for requesting the same data elements from credential types that are closely related (e.g., newer versions of the same credential type). The same effect could be achieved by defining multiple `CredentialQuery` entries.
Listing multiple values in `credential_types` is a size optimization for requesting the same data elements from credential types that are closely related (e.g., newer versions of the same credential type). The same effect could be achieved by defining multiple `CredentialQuery` entries.

Co-authored-by: Joseph Heenan <joseph@heenan.me.uk>
Co-authored-by: Oliver Terbu <o.terbu@gmail.com>
github-actions Bot pushed a commit that referenced this pull request Sep 24, 2026
github-actions Bot pushed a commit that referenced this pull request Sep 24, 2026
@c2bo

c2bo commented Sep 24, 2026

Copy link
Copy Markdown
Member Author

Not sure what gh did from committing a 2 word change (via UI suggestions in gh) to creating a 1200 line commit that doesn't change anything but 2 words...

I'll force push remove the last commit if this doesn't fix itself

@c2bo
c2bo force-pushed the 46-make-credential_type-array branch from 3b3211d to a9ce0fc Compare September 24, 2026 15:59
github-actions Bot pushed a commit that referenced this pull request Sep 24, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Make credential_type an array

3 participants