ProvenDB adds metadata to each document which includes a hash value and effective version numbers. Normally, this metadata is suppressed. However, the showMetadata command can be used to request that metadata be displayed in query results. This command takes effect across all sessions for a given user.

ProvenDB maintains a set of collections that are used to define version information and record proofs. These collections cannot be modified by ProvenDB users but can be viewed normally. The diagram below documents these collections.

User collection metadata

The attributes added to each user collection in the _provendb_metadata embedded document are listed below

Attribute

Description

hash

Hash value for the document. The hash includes metadata attributes but (of course) not the hash itself

minVersion

The database version in which this version of the document first became visible

maxVersion

The database version in which this version of the document last became visible

forgotten

If true, the contents of this document have been forgotten

_id

the "ProvenDB" _id - this is the same for all versions of a document

mongoId

The actual MongoDB "_id" of the document. Unlike the provenDB _id , this value changes every time a document is updated.

provenDB metadata collections

Below is a definition of each ProvenDB metadata collection

Name

Description

_provendb_versions

Contains details of each database version including it's timestamp and status

_provendb_versionProofs

Contains details of each proof created in the database including it's Chainpoint proof, collections included in the proof and bitcoin block and tranaction ids

_provendb_collections

Contains collection-level locking information.

_provendb_currentVersion

Contains a single document that defines the current version status

_provendb_forgetRequests

Records the status of each forget request.

_provendb_documentProofs

Contains details of document proofs that have been requested. This acts mainly as a cache to avoid recalculation of document proofs should the same document proof be requested more than once


What’s Next