DCQLClaimsPathPointer

OpenID4VP 1.0, 7. Claims Path Pointer

A claims path pointer is a pointer into the Credential, identifying one or more claims. A claims path pointer MUST be a non-empty array of strings, nulls and non-negative integers. A claims path pointer can be processed, which means it is applied to a Credential. The results of processing are the referenced claims.

OpenID4VP 1.0, 7.1. Semantics for JSON-based credentials

This section defines the semantics of a claims path pointer when applied to a JSON-based Credential.

A string value indicates that the respective key is to be selected, a null value indicates that all elements of the currently selected array(s) are to be selected; and a non-negative integer indicates that the respective index in an array is to be selected. The path is formed as follows:

Start with an empty array and repeat the following until the full path is formed.

To address a particular claim within an object, append the key (claim name) to the array.
To address an element within an array, append the index to the array (as a non-negative, 0-based integer).
To address all elements within an array, append a null value to the array.

Constructors

Link copied to clipboard
constructor(vararg segments: DCQLClaimsPathPointerSegment)
constructor(startSegment: String)
constructor(startSegment: String, vararg segments: String)
constructor(startSegment: UInt)
constructor(nullValue: Nothing?)

Properties

Link copied to clipboard
open override val size: Int

Functions

Link copied to clipboard
open operator override fun contains(element: DCQLClaimsPathPointerSegment): Boolean
Link copied to clipboard
Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
open operator override fun get(index: Int): DCQLClaimsPathPointerSegment
Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
open override fun indexOf(element: DCQLClaimsPathPointerSegment): Int
Link copied to clipboard
open override fun isEmpty(): Boolean
Link copied to clipboard
open operator override fun iterator(): Iterator<DCQLClaimsPathPointerSegment>
Link copied to clipboard
open override fun lastIndexOf(element: DCQLClaimsPathPointerSegment): Int
Link copied to clipboard
Link copied to clipboard
operator fun plus(nullValue: Nothing?): DCQLClaimsPathPointer
operator fun plus(key: String): DCQLClaimsPathPointer
operator fun plus(index: UInt): DCQLClaimsPathPointer
Link copied to clipboard
fun query(jsonElement: JsonElement): NodeList

Selects the claims this claims path pointer points to in jsonElement, the root element of a credential, i.e. its top-level JSON object.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
inline fun <T> Collection<T>?.requireIsNotNullOrEmpty(lazyMessage: () -> Any = { "Collection must neither be null nor empty." })
Link copied to clipboard
open override fun subList(fromIndex: Int, toIndex: Int): List<DCQLClaimsPathPointerSegment>
Link copied to clipboard
Link copied to clipboard
open override fun toString(): String