Repository navigation
Conversation
|
Discussed in group: @c2bo will attempt to rephrase. |
Co-authored-by: Christian Bormann <chris.bormann@gmx.de>
|
|
||
| Document types can define special rules under which a data element other than the one requested can be returned. In particular, [@ISO.18013-5] defines that when an mDL does not contain a requested `age_over_NN` data element, a different `age_over_NN` data element can be returned by the Wallet - see Section 7.2.5 of [@ISO.18013-5] for the definition on how the `age_over_NN` matching works. | ||
|
|
||
| When processing a claims path pointer for an mdoc where its second component refers to a data element that does not exist in the mdoc, the Wallet SHOULD apply any such rule defined for the document type and namespace of the mdoc. |
There was a problem hiding this comment.
Any reason this isn't a MUST?
There was a problem hiding this comment.
We have other features like value matching where it is up to the wallet to decide how to deal with that special logic (a SHOULD, not a MUST). It felt in-line to keep it a SHOULD here, but i don't have any strong opinions other than trying to keep things consistent.
|
One extra complication is that we should at least be clear how this dcql query is processed: In particular in the case where the credential has both |
|
If the wallet supports the matching of |
|
So semantically we'd treat it as equivalent to requesting all the age_over_xx values? i.e. |
Yes, that would be my interpretation - you basically request the first matching one which is identical to your query. |
|
Discussed today, language seems acceptable. Needs more approvals to merge. @jogu will review |
It turned out my understanding here wasn't correct (thanks to Gareth for explaining the rules better) - the rules in 18013-5 are more complex and an equivalent DCQL query would need value matching as well. i.e. So for an age_over_18 query, if you get a true claim back (for any age_over_xx), the user is definitely over 18, if you get a false claim back, they're definitely under 18. If the wallet only has age_over_19 false, then in my example query it would return age_in_years instead. I think that's what Christian's text already says will happen. |
|
|
||
| ### Data Element Selection Rules {#mdocs_data_element_selection} | ||
|
|
||
| Document types can define special rules under which a data element other than the one requested can be returned. In particular, [@ISO.18013-5] defines that when an mDL does not contain a requested `age_over_NN` data element, a different `age_over_NN` data element can be returned by the Wallet - see Section 7.2.5 of [@ISO.18013-5] for the definition on how the `age_over_NN` matching works. |
There was a problem hiding this comment.
I think given photo ID (and the age assurance credential too?) have similar rules this is an example:
| Document types can define special rules under which a data element other than the one requested can be returned. In particular, [@ISO.18013-5] defines that when an mDL does not contain a requested `age_over_NN` data element, a different `age_over_NN` data element can be returned by the Wallet - see Section 7.2.5 of [@ISO.18013-5] for the definition on how the `age_over_NN` matching works. | |
| Document types can define special rules under which a data element other than the one requested can be returned. For example, [@ISO.18013-5] defines that when an mDL does not contain a requested `age_over_NN` data element, a different `age_over_NN` data element can be returned by the Wallet - see Section 7.2.5 of [@ISO.18013-5] for the definition on how the `age_over_NN` matching works. |
| * The selected data element is treated as if it were the requested claim when evaluating `claims`, `claim_sets`, and `values` (see (#selecting_claims)). Value matching, if requested, is applied to the value of the selected data element. | ||
| * The Presentation contains the data element that was selected under its own data element identifier, not the identifier used in the Claims Query. | ||
|
|
||
| Verifiers SHOULD be prepared to receive a different data element identifier and evaluate it according to the document type's rules. |
There was a problem hiding this comment.
Not sure it's quite right but I think this should be a MUST otherwise it's not clear how it interacts with 'Verifiers MUST check that the returned Credentials meet all criteria in the query.'. Maybe something like this?
| Verifiers SHOULD be prepared to receive a different data element identifier and evaluate it according to the document type's rules. | |
| Where the document type they are requesting defines a special rule, Verifiers MUST be prepared to receive a different data element identifier and evaluate it according to the document type's rules. |
| A claims path pointer can be processed, which means it is applied to a Credential. The results of | ||
| processing are the referenced claims. | ||
|
|
||
| Credential Format-specific rules as introduced in (#format_specific_parameters) can define special cases in which processing a claims path pointer selects a claim other than the one identified by the direct interpretation of the pointer, especially on a basis of special behaviour for claims in specific credential types. |
There was a problem hiding this comment.
I think this is slightly more correct, at least according to Americans (who we otherwise follow in this spec):
| Credential Format-specific rules as introduced in (#format_specific_parameters) can define special cases in which processing a claims path pointer selects a claim other than the one identified by the direct interpretation of the pointer, especially on a basis of special behaviour for claims in specific credential types. | |
| Credential Format-specific rules as introduced in (#format_specific_parameters) can define special cases in which processing a claims path pointer selects a claim other than the one identified by the direct interpretation of the pointer, especially on the basis of special behavior for claims in specific credential types. |
Closes #718
Should this be added to 1.0 errata?