Skip to main content

Reference Data Model

This document defines canonical data objects for Portable Trust Infrastructure (PTI) v1.0.

Normative language

The key words MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL are to be interpreted as described in RFC 2119.

Object overview

Trust Identity

Represents a portable subject in the trust fabric.

FieldTypeRequiredDescription
pti_idstringMUSTStable portable identifier (pti_ prefix + opaque suffix)
identity_typeenumMUSTindividual, organization, device_proxy
statusenumMUSTactive, suspended, merged, erased
created_atdatetimeMUSTISO 8601 UTC
partner_refsarrayOPTIONALPartner-local entity mappings
verification_levelenumSHOULDunverified, document, registry, in_person

Partner reference object

{
"partner_id": "prt_acme_lending",
"entity_id": "borrower_88421",
"linked_at": "2026-01-15T10:22:00Z"
}

pti_id values MUST NOT embed personally identifiable information.

Trust Context

Defines a life-area or lens scope for signals and lookups.

FieldTypeRequiredDescription
context_idstringMUSTStable slug (e.g., lending, risk_compliance)
context_tierenumMUSTprimary, lens
labelstringMUSTHuman-readable name
derivation_rulesarrayOPTIONALUpstream contexts for lens derivation
enabledbooleanMUSTRegistry publication flag

Lens contexts MUST declare derivation_rules when context_tier is lens.

Trust Event

See Reference Event Model for full lifecycle. Summary fields:

FieldTypeRequired
event_idUUIDMUST
event_typestringMUST
context_idstringMUST
pti_idstringMUST
producer_idstringMUST
occurred_atdatetimeMUST
payloadobjectMUST
schema_versionstringMUST

Trust Signal

Normalized, queryable representation derived from events.

FieldTypeRequiredDescription
signal_idUUIDMUSTUnique signal identifier
pti_idstringMUSTSubject reference
context_idstringMUSTBound context
signal_typestringMUSTCatalogued signal classification
polarityenumMUSTpositive, negative, neutral
weightnumberSHOULDNormalized influence weight (0.0–1.0)
source_event_idUUIDMUSTProvenance link
effective_atdatetimeMUSTSignal validity start
expires_atdatetimeOPTIONALTTL for ephemeral signals

Signals MUST NOT exist without a source_event_id except for governed manual attestations recorded as events.

Trust Evidence

Supporting material for assertions and verification.

FieldTypeRequiredDescription
evidence_idUUIDMUSTUnique evidence identifier
evidence_typeenumMUSTdocument, endorsement, registry_match, badge, third_party_report
uristringOPTIONALSecure reference to artifact
hashstringSHOULDContent digest for integrity
attestor_idstringMUSTProducer or verifier identity
attested_atdatetimeMUSTAttestation timestamp

Evidence URIs MUST use HTTPS or governed internal schemes.

Trust Assertion

A signed statement about a subject in a context.

FieldTypeRequiredDescription
assertion_idUUIDMUSTGlobally unique
pti_idstringMUSTSubject
context_idstringMUSTContext scope
claimobjectMUSTMachine-readable claim body
confidencenumberSHOULD0.0–1.0 attestor confidence
evidence_idsarraySHOULDSupporting evidence
issuer_idstringMUSTSigning producer or registry
issued_atdatetimeMUSTIssue time
expires_atdatetimeOPTIONALAssertion TTL
signaturestringMUSTJWS compact serialization

Context Score (derived object)

Output of the Trust Intelligence Engine; not directly writable by producers.

FieldTypeRequiredDescription
pti_idstringMUSTSubject
context_idstringMUSTContext
score_pctintegerMUST0–100 normalized outcome
bandenumMUSTthin, fair, good, strong
confidencenumberMUSTModel confidence 0.0–1.0
computed_atdatetimeMUSTLast refresh timestamp
coverage_gapsarraySHOULDExplicit thin-data flags

Validation rules

  1. All objects MUST include schema_version.
  2. context_id on events, signals, and assertions MUST match registry-published contexts.
  3. Erased subjects (status: erased) MUST NOT appear in consumer lookups.
  4. Merged identities MUST redirect lookups to the surviving pti_id with 301 semantic in registry APIs.