DCQL
DCQL, czyli Digital Credentials Query Language, to format JSON używany przez stronę ufającą wewnątrz żądania prezentacji OpenID4VP, aby opisać, jakie poświadczenia i jakie atrybuty w ich obrębie chce zobaczyć, w sposób zrozumiały dla każdego zgodnego portfela bez potrzeby dedykowanej integracji.
Zapytanie DCQL zawiera jedno zapytanie o poświadczenie dla każdego poświadczenia, którego potrzebuje weryfikator, przy czym każde z nich określa format, taki jak mdoc lub SD-JWT VC, filtr typu oraz konkretne atrybuty do ujawnienia. Opcjonalne claim_sets pozwalają, aby pojedyncze zapytanie oferowało alternatywne, uszeregowane grupy atrybutów, dzięki czemu portfel może zastosować mniej precyzyjną weryfikację, gdy dokładna nie jest możliwa, a opcjonalne credential_sets mogą wymagać konkretnych kombinacji spośród kilku zapytań o poświadczenia. DCQL jest zdefiniowany bezpośrednio w specyfikacji OpenID4VP, a nie jako osobny dokument, i zastępuje wcześniejszą zależność od DIF Presentation Exchange w żądaniach OpenID4VP: jest celowo prostszy, bez grup deskryptorów wejściowych czy wymagań dotyczących zgłoszenia, i wyraża ograniczenia specyficzne dla formatu bezpośrednio w zapytaniu, zamiast poprzez ogólny filtr JSON Schema. Ekosystem EUDI Wallet przyjął DCQL jako standard dla prezentacji OpenID4VP. Pełny przykład żądania i odpowiedzi znajdziesz na stronie DCQL wyjaśniony.
Czym DCQL różni się od DIF Presentation Exchange?
Oba opisują to, czego weryfikator oczekuje od portfela, ale DCQL jest ograniczony do OpenID4VP i zdefiniowany bezpośrednio w tej specyfikacji, podczas gdy Presentation Exchange to osobna specyfikacja DIF, która obejmuje także inne protokoły. DCQL jest celowo prostszy i wyraża ograniczenia specyficzne dla formatu, takie jak typ dokumentu mdoc czy typ SD-JWT VC, bezpośrednio w obiekcie zapytania, zamiast poprzez ogólny filtr JSON Schema. Ekosystem EUDI Wallet przyjął DCQL jako standard dla prezentacji OpenID4VP.