Skip to content

VBL Provenance Declarations (require_provenance)

require_provenance: evidence_class_name: source_identifier
require_provenance: risk_score: internal_risk_engine
require_provenance: kyc_status: identity_provider
require_provenance: account_balance: core_banking_system

Each declaration states that the named field must have provenance metadata indicating it came from the specified source.

Source identifiers are strings that match the provenance metadata attached by connectors. When a connector acquires evidence from an external system, it tags each field with a source identifier. The require_provenance declaration checks that the tag matches.

Source identifiers follow the same naming rules as evidence field names:

  • Start with a letter
  • Contain only alphanumeric characters and underscores

Provenance is verified by the cloud platform as Stage 1b of the evaluation pipeline, not by the binary evaluation engine. The platform checks that each evidence class with a require_provenance declaration has matching provenance metadata during the admissibility stage.

If a field is submitted directly via the API (not through a connector), it has no provenance metadata. A require_provenance declaration for a directly-submitted field will cause the evaluation to fail.

Each require_provenance line declares one field-source binding:

require_provenance: field_a: source_x
require_provenance: field_b: source_y
require_provenance: field_c: source_x

Multiple fields can require the same source. Each field can only require one source.