diff --git a/index.html b/index.html index 7b9223f..6a938ef 100644 --- a/index.html +++ b/index.html @@ -292,7 +292,38 @@

  • Let |providers| be |options|'s {{CredentialRequestOptions/digital}}'s {{DigitalCredentialRequestOptions/providers}} member.
  • -
  • If |providers| is empty, [=exception/throw=] a {{TypeError}}. +
  • If |providers| [=list/is empty=], [=exception/throw=] a + {{TypeError}}. +
  • +
  • Let |range| be [=list/get the indices|the indices=] of |providers|. +
  • +
  • [=Set/For each=] |n| of the |range|: +
      +
    1. Let |provider| be the [=list/item=] at |providers|'s |n| index. +
    2. +
    3. If |provider|'s {{DigitalCredentialsProvider/protocol}} does not + match a [=digital credentials registry/protocol identifier=] from the + [=digital credentials registry=], [=exception/throw=] a + {{TypeError}}. +
    4. +
    5. Let |dictionary| be the [=digital credentials registry/Web IDL + dictionary=] for |provider|'s + {{DigitalCredentialsProvider/protocol}}. +
    6. +
    7. Let |request| be |provider|'s + {{DigitalCredentialsProvider/request}} [=converted to an idl + value|converted=] to |dictionary|. [=exception/throw|Rethrow=] any + exceptions. +
    8. +
    9. Validate |request| against any validation rules set forth in the + corresponding [=digital credentials registry/specification=]. If any + of |request|'s members are invalid, [=exception/throw=] a + {{TypeError}}. +
    10. +
    11. Set [=list/item=] at |providers|'s |n| index's + {{DigitalCredentialsProvider/request}} to |request|. +
    12. +