Core Concepts
Evidence Assertions
An EvidenceAssertion is the atomic unit of OpenBio. Every fact about a subject — a lab result, a diagnosis, a genomic variant, a behavioral observation — is an assertion with a type, a value, a temporal context, and a trust layer.
Example assertion — Lab Result
9.2g/dL
Hemoglobin · James, 58
Source FactConfidence: 0.99
SourceQuest DiagnosticsProtocolHL7v2 ORUCollected2025-03-15 · 08:42 UTC
The assertion shape
typescript
interface EvidenceAssertion {
id: string;
subjectId: string;
assertionType: 'lab_result' | 'diagnosis' | 'variant_call' | 'imaging_finding'
| 'medication' | 'procedure' | 'vital_sign' | 'note_extract' | 'observation'
| 'treatment' | 'exposure' | 'behavioral' | 'growth_condition'
| 'resistance_profile' | 'passage_event' | 'specimen_collection';
value: unknown; // typed per assertionType
unit?: string;
trustLayer: 'source_fact' | 'normalized_fact' | 'extracted_annotation'
| 'derived_feature' | 'model_output' | 'hypothesis';
confidence: number; // 0–1
temporalContext: {
type: 'instant' | 'period' | 'episode' | 'relative' | 'unknown';
effectiveAt?: string; // ISO 8601
startAt?: string;
endAt?: string;
};
provenance: {
sourceSystemId: string;
sourceRecordId: string;
protocol: string;
collectedAt?: string;
receivedAt: string;
transformationChain: string[];
};
createdAt: string;
}