Rebase is a library for handling the witnessing of cryptographically verifiable claims, and the issuance of Verifiable Credentials (VC) based on this programmatic witnessing. It is based on several layered abstractions defined with Rust traits. In particular, Rebase abstracts schemas that can be wrapped inside VCs using the
SchemaTypetrait. This trait provides the required pieces of a VC:
- a JSON-LD context to interpret the VC serialized as a JSON-LD document,
- the types of the VC,
- the subjects of the VC, and
- the evidence of the VC.
Defining the necessary JSON-LD context introduces a lot of redundancies with the schema definition, and depending on the schema size, can be very tedious. This section shows a few examples on how TreeLDR can be used to simplify the definition of types and the conception of JSON-LD contexts when implementing Rebase flows.