DCQL
DCQL, il Digital Credentials Query Language, è il formato JSON che una relying party utilizza all'interno di una richiesta di presentazione OpenID4VP per descrivere quali credenziali e quali claim al loro interno desidera vedere, in un modo che qualsiasi wallet conforme può interpretare senza un'integrazione su misura.
Una query DCQL elenca una credential query per ogni credenziale richiesta dal verifier, ciascuna con un formato come mdoc o SD-JWT VC, un filtro di tipo e i claim specifici da divulgare. Il campo opzionale claim_sets consente a una singola query di offrire gruppi alternativi e ordinati di claim, così il wallet può ripiegare su un controllo più generico quando quello preciso non è disponibile, mentre il campo opzionale credential_sets può richiedere combinazioni particolari tra più credential query. DCQL è definito direttamente all'interno della specifica OpenID4VP anziché come documento separato e sostituisce la precedente dipendenza da DIF Presentation Exchange per le richieste OpenID4VP: è deliberatamente più snello, senza gruppi di input descriptor né requisiti di submission, ed esprime i vincoli specifici del formato direttamente nella query invece che tramite un filtro JSON Schema generico. L'ecosistema EUDI Wallet si è standardizzato su DCQL per le presentazioni OpenID4VP. Per un esempio completo di richiesta e risposta, consulta DCQL spiegato.
In cosa differisce DCQL da DIF Presentation Exchange?
Entrambi descrivono ciò che un verifier richiede a un wallet, ma DCQL è limitato a OpenID4VP ed è definito direttamente in quella specifica, mentre Presentation Exchange è una specifica DIF separata che copre anche altri protocolli. DCQL è deliberatamente più snello ed esprime vincoli specifici del formato, come un doctype mdoc o un tipo SD-JWT VC, direttamente in un oggetto query anziché tramite un filtro JSON Schema generico. L'ecosistema EUDI Wallet si è standardizzato su DCQL per le presentazioni OpenID4VP.