Overview
- Namespace URI:
https://ns.cascadeprotocol.org/checkup/v1#- Preferred Prefix:
checkup:- Version:
- 1.4
- Status:
- Stable
- Imports:
-
cascade:(Core Vocabulary v1)
clinical:(Clinical Vocabulary v1)
health:(Health Vocabulary v1) - Schema File:
- checkup.ttl (Turtle/RDF)
The Checkup Vocabulary defines structured health data for patient intake forms and pre-visit preparation. It enables aggregation of EHR-imported data, HealthKit wellness data, and manually entered health information into a comprehensive patient profile suitable for healthcare visits.
Core Classes (13 total)
checkup:IntakeFormData
owl:Class
Aggregated patient data formatted for healthcare intake forms. Contains all sections needed for a complete pre-visit profile including demographics, medications, allergies, conditions, and visit concerns.
checkup:PatientProfile
owl:Class
Patient demographics with computed age group for screening logic. Includes biological sex for medical screening recommendations and optional gender identity for form preferences.
checkup:InsuranceInfo
owl:Class
Patient insurance coverage details for intake forms. Includes provider, member ID, coverage type, and primary care provider information.
checkup:MedicationSummary
owl:Class
Current medication with enriched adherence and tolerability data. Links to clinical:Medication source records and tracks self-reported adherence barriers and side effects.
checkup:AllergySummary
owl:Class
Known allergen with reaction type and severity. Tracks data provenance (EHR verified, self-reported) and links to clinical:AllergyIntolerance source records.
checkup:ConditionSummary
owl:Class
Active or resolved health condition with ICD-10 coding. Includes onset information and current status for clinical context.
checkup:FamilyHistoryEntry
owl:Class
Single family member health condition for risk assessment. Captures relative type, condition, and age at diagnosis for inherited condition screening.
checkup:VitalSignsTrend
owl:Class
Deprecated v1.4DEPRECATED: Use health:MetricTrend (Layer 2) for trend data and checkup:WellnessSummary (Layer 3) for patient-facing trend aggregation. Will be removed in v1.5.
checkup:ScreeningStatus
owl:Class
Patient status for recommended preventive screening. Tracks last completed date, next due date, and applicable USPSTF/ACS guidelines.
checkup:VisitIssue
owl:Class
Health issue or symptom the patient wants to discuss at their visit (chief complaint). Includes severity, duration, and user-assigned priority for visit planning.
checkup:SuggestedQuestion
owl:Class
AI-generated or template question for the patient to ask their provider. Based on conditions, medications, symptoms, or health trends identified in their profile.
checkup:DiagnosticTestResult
owl:Class
Reference to a diagnostic test from an external Cascade app (e.g., POTS Check, glucose monitoring). Provides summary for intake forms and links to detailed results in pod.
checkup:SupplementSummary
owl:Class
v1.1+Dietary supplement, OTC product, or herbal remedy with regulatory classification and evidence strength. Separate from MedicationSummary to reflect different regulatory status and data requirements. Links to clinical:Supplement source records.
Insight & Correlation Classes v1.4
Layer 3 classes that synthesize across data domains to produce patient-facing insights. These enable wellness trend summaries, medication-metric correlations, health scoring, attention items, and visit preparation.
checkup:WellnessSummary
owl:Class · rdfs:subClassOf prov:Entity
Layer 3 patient-facing summary of wellness data. Aggregates trends and baselines from health: Layer 2 properties into a patient-readable format.
checkup:TrendInsight
owl:Class · rdfs:subClassOf prov:Entity
A patient-readable observation derived from trend data. Example: "Your resting heart rate has dropped 5 bpm since you started walking 10k steps/day."
checkup:CorrelationInsight
owl:Class · rdfs:subClassOf prov:Entity
Links two data domains with an observed temporal relationship. Example: medication start date correlates with metric change. Temporal correlation only — never implies causation.
checkup:KeyIndicator
owl:Class · rdfs:subClassOf prov:Entity
A distilled, patient-friendly health metric chosen for its predictive value and simplicity. Used for dashboard summaries and health scores. Status values: good, watch, attention.
checkup:AttentionItem
owl:Class · rdfs:subClassOf prov:Entity
Flags when a metric deviates significantly from personal baseline, data has gone stale, or a trend crosses a threshold. Rule-based, not clinical advice. Reasons: baseline_deviation, stale_data, threshold_crossed. Severity: info, watch, action.
checkup:VisitPrepSummary
owl:Class · rdfs:subClassOf prov:Entity
A curated, one-page clinical summary designed for a 15-minute appointment. Auto-generated from metric changes, medication context, and patient questions, then user-edited before export.
Insight & Correlation Properties v1.4
WellnessSummary Properties
checkup:wellnessTrend
owl:ObjectProperty
Link to a health:MetricTrend for a wellness metric.
Domain: checkup:WellnessSummary
Range: health:MetricTrend
checkup:wellnessBaselineDate
owl:DatatypeProperty
Date of the baseline snapshot this summary compares against.
Domain: checkup:WellnessSummary
Range: xsd:dateTime
TrendInsight Properties
checkup:insightText
owl:DatatypeProperty
Patient-readable description of the insight.
Domain: checkup:TrendInsight
Range: xsd:string
checkup:insightSourceTrend
owl:ObjectProperty
The health:MetricTrend this insight is derived from.
Domain: checkup:TrendInsight
Range: health:MetricTrend
checkup:insightGeneratedBy
owl:ObjectProperty
The agent that produced this insight. Supports both software agents (e.g., cascade:DataSource for rule engines) and human agents (clinicians). Aligns with W3C PROV-O prov:wasGeneratedBy pattern.
Domain: checkup:TrendInsight
Range: prov:Agent
CorrelationInsight Properties
checkup:correlationMetric
owl:ObjectProperty
The wellness metric involved in the correlation.
Domain: checkup:CorrelationInsight
Range: health:MetricTrend
checkup:correlationEvent
owl:ObjectProperty
The clinical event (medication start/stop, condition onset) involved in the correlation.
Domain: checkup:CorrelationInsight
checkup:correlationText
owl:DatatypeProperty
Patient-readable description. Must use temporal language only ("started approximately after"), never causal language ("caused by").
Domain: checkup:CorrelationInsight
Range: xsd:string
checkup:correlationTimeLag
owl:DatatypeProperty
Days between the clinical event and the observed metric change onset.
Domain: checkup:CorrelationInsight
Range: xsd:integer
KeyIndicator Properties
checkup:indicatorMetric
owl:DatatypeProperty
The metric key this indicator represents (e.g., "restingHeartRate").
Domain: checkup:KeyIndicator
Range: xsd:string
checkup:indicatorValue / indicatorUnit / indicatorLabel / indicatorStatus
owl:DatatypeProperty
Value (xsd:decimal), unit (xsd:string), patient-friendly label, and traffic-light status (good, watch, attention).
Domain: checkup:KeyIndicator
AttentionItem Properties
checkup:attentionReason / attentionMetric / attentionText / attentionSeverity
owl:DatatypeProperty
Reason (baseline_deviation, stale_data, threshold_crossed), metric key, patient-readable explanation, and severity (info, watch, action).
Domain: checkup:AttentionItem
Range: xsd:string
VisitPrepSummary Properties
checkup:visitPrepDate / visitPrepComparisonDate
owl:DatatypeProperty
Current date and previous snapshot comparison date.
Domain: checkup:VisitPrepSummary
Range: xsd:dateTime
checkup:visitPrepChange
owl:ObjectProperty
A metric change included in this visit prep.
Domain: checkup:VisitPrepSummary
Range: health:MetricTrend
checkup:visitPrepCorrelation
owl:ObjectProperty
Domain: checkup:VisitPrepSummary
Range: checkup:CorrelationInsight
checkup:visitPrepAttention
owl:ObjectProperty
Domain: checkup:VisitPrepSummary
Range: checkup:AttentionItem
checkup:visitPrepUserNotes
owl:DatatypeProperty
Patient-authored questions and concerns for the visit.
Domain: checkup:VisitPrepSummary
Range: xsd:string
Patient Profile Properties
checkup:patientName
owl:DatatypeProperty
Full legal name of the patient for intake forms.
Domain: checkup:PatientProfile
Range: xsd:string
checkup:dateOfBirth
owl:DatatypeProperty
Patient date of birth for age calculation and screening eligibility.
Domain: checkup:PatientProfile
Range: xsd:date
checkup:biologicalSex
owl:DatatypeProperty
Biological sex for medical screening logic: male, female, intersex.
Domain: checkup:PatientProfile
Range: xsd:string
checkup:ageGroup
owl:DatatypeProperty
Demographic classification: pediatric (0-17), young_adult (18-39), adult (40-64), senior (65+).
Domain: checkup:PatientProfile
Range: xsd:string
Medication Properties
checkup:medicationName
owl:DatatypeProperty
Name of the medication (generic or brand).
Domain: checkup:MedicationSummary
Range: xsd:string
checkup:dose
owl:DatatypeProperty
Medication dose with units (e.g., '10mg', '500mg').
Domain: checkup:MedicationSummary
Range: xsd:string
checkup:adherenceStatus
owl:DatatypeProperty
Self-reported adherence: taking_as_prescribed, usually_take, sometimes_miss, often_miss, stopped.
Domain: checkup:MedicationSummary
Range: xsd:string
checkup:sideEffects
owl:DatatypeProperty
List of reported side effects as comma-separated string.
Domain: checkup:MedicationSummary
Range: xsd:string
Medication Properties - Phase 3 Extensions v1.2
checkup:episodeId
owl:DatatypeProperty
Link to canonical MedicationUseEpisode in CascadeSDK. Enables longitudinal tracking.
Domain: checkup:MedicationSummary
Range: xsd:string
checkup:startDate
owl:DatatypeProperty
Date when patient started taking this medication.
Domain: checkup:MedicationSummary
Range: xsd:date
checkup:indication
owl:DatatypeProperty
Why the patient takes this medication (patient's understanding of the reason).
Domain: checkup:MedicationSummary
Range: xsd:string
checkup:patientCost
owl:DatatypeProperty
Patient's out-of-pocket cost for medication or supplement.
Range: xsd:decimal
checkup:costFrequency
owl:DatatypeProperty
Frequency of cost: per_month, per_refill, per_dose, per_bottle, annual.
Range: xsd:string
checkup:functionalImpact
owl:DatatypeProperty
How this medication helps the patient functionally (e.g., "helps me sleep").
Domain: checkup:MedicationSummary
Range: xsd:string
checkup:concernsForDoctor
owl:DatatypeProperty
Concerns the patient wants to discuss with their healthcare provider.
Domain: checkup:MedicationSummary
Range: xsd:string
Supplement Summary Properties v1.1+
checkup:supplementName
owl:DatatypeProperty
Name of the supplement or OTC product.
Domain: checkup:SupplementSummary
Range: xsd:string
checkup:regulatoryStatus
owl:DatatypeProperty
Regulatory classification distinguishing from FDA-approved medications: dietarySupplement (DSHEA), otcDrug (FDA OTC monograph), homeopathic, herbalRemedy, unknown.
Domain: checkup:SupplementSummary
Range: xsd:string
checkup:evidenceStrength
owl:DatatypeProperty
Level of clinical evidence: strongEvidence, moderateEvidence, limitedEvidence, traditionalUse, noEvidence, unknown.
Domain: checkup:SupplementSummary
Range: xsd:string
checkup:supplementDose
owl:DatatypeProperty
Dose with units (e.g., "2000 IU", "500mg").
Domain: checkup:SupplementSummary
Range: xsd:string
checkup:supplementBrand
owl:DatatypeProperty
Brand name if known (e.g., "Nature Made", "Garden of Life").
Domain: checkup:SupplementSummary
Range: xsd:string
checkup:supplementForm
owl:DatatypeProperty
Physical form: capsule, tablet, softgel, liquid, powder, gummy, spray, patch, tea, tincture, other.
Domain: checkup:SupplementSummary
Range: xsd:string
checkup:reasonForUse
owl:DatatypeProperty
User-provided reason for taking supplement (e.g., "bone health", "sleep support").
Domain: checkup:SupplementSummary
Range: xsd:string
checkup:dsldId
owl:DatatypeProperty
NIH Dietary Supplement Label Database identifier for lookup.
Domain: checkup:SupplementSummary
Range: xsd:string
checkup:doctorAware
owl:DatatypeProperty
Whether the patient's healthcare provider knows about this supplement. Used to identify supplements that should be discussed at visits.
Domain: checkup:SupplementSummary
Range: xsd:boolean
Visit Issue Properties
checkup:issueCategory
owl:DatatypeProperty
Category of health issue: pain, skin, digestive, respiratory, cardiovascular, mental_health, neurological, musculoskeletal, urinary, medication, screening, general, other.
Domain: checkup:VisitIssue
Range: xsd:string
checkup:issueDescription
owl:DatatypeProperty
Free text description of the health issue.
Domain: checkup:VisitIssue
Range: xsd:string
checkup:issuePriority
owl:DatatypeProperty
User-ranked importance (1 = highest priority).
Domain: checkup:VisitIssue
Range: xsd:integer
checkup:issueSeverity
owl:DatatypeProperty
Severity of the issue: mild, moderate, severe.
Domain: checkup:VisitIssue
Range: xsd:string
Diagnostic Test Properties
checkup:testType
owl:DatatypeProperty
Type of diagnostic test: pots_check, blood_pressure_series, glucose_series, ecg, sleep_analysis, other.
Domain: checkup:DiagnosticTestResult
Range: xsd:string
checkup:resultSummary
owl:DatatypeProperty
Brief text summary suitable for intake forms.
Domain: checkup:DiagnosticTestResult
Range: xsd:string
checkup:flaggedForDiscussion
owl:DatatypeProperty
Whether user wants to discuss this result with provider.
Domain: checkup:DiagnosticTestResult
Range: xsd:boolean
checkup:potsThresholdMet
owl:DatatypeProperty
Whether the POTS diagnostic threshold was met (HR increase >= 30 bpm). Used for POTS Check results.
Domain: checkup:DiagnosticTestResult
Range: xsd:boolean
Data Provenance Properties
checkup:provenanceType
owl:DatatypeProperty
Source type: ehr_verified, self_reported, scanned, device, ai_extracted, imported.
Range: xsd:string
checkup:provenanceSource
owl:DatatypeProperty
Specific source identifier: MyChart, Apple Health, manual entry, etc.
Range: xsd:string
Usage Example
@prefix cascade: <https://ns.cascadeprotocol.org/core/v1#> .
@prefix checkup: <https://ns.cascadeprotocol.org/checkup/v1#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
<#intake-form-abc123> a checkup:IntakeFormData ;
checkup:schemaVersion "1.0" ;
checkup:generatedAt "2026-01-05T14:30:00Z"^^xsd:dateTime ;
checkup:hasPatientProfile <#patient-profile> ;
checkup:hasMedication <#medication-1> ;
checkup:hasSupplement <#supplement-1> ;
checkup:hasVisitIssue <#issue-1> .
<#patient-profile> a checkup:PatientProfile ;
checkup:patientName "Jane Smith" ;
checkup:dateOfBirth "1985-03-15"^^xsd:date ;
checkup:biologicalSex "female" ;
checkup:ageGroup "adult" ;
checkup:provenanceType "ehr_verified" .
<#medication-1> a checkup:MedicationSummary ;
checkup:medicationName "Lisinopril" ;
checkup:dose "10mg" ;
checkup:frequency "once_daily" ;
checkup:adherenceStatus "taking_as_prescribed" ;
checkup:indication "blood pressure" ;
checkup:episodeId "med-episode-lisinopril-001" ;
checkup:provenanceType "ehr_verified" .
<#supplement-1> a checkup:SupplementSummary ;
checkup:supplementName "Vitamin D3" ;
checkup:supplementDose "2000 IU" ;
checkup:supplementFrequency "once_daily" ;
checkup:supplementBrand "Nature Made" ;
checkup:regulatoryStatus "dietarySupplement" ;
checkup:evidenceStrength "moderateEvidence" ;
checkup:reasonForUse "bone health" ;
checkup:doctorAware "true"^^xsd:boolean .
<#issue-1> a checkup:VisitIssue ;
checkup:issueCategory "cardiovascular" ;
checkup:issueDescription "Occasional heart palpitations when stressed" ;
checkup:issuePriority "1"^^xsd:integer ;
checkup:issueSeverity "mild" .
Integration with Other Vocabularies
- Core Vocabulary: Uses
cascade:schemaVersionandcascade:DataProvenancefor versioning and provenance tracking.cascade:DataSource(v1.1) for source identity. - Health Vocabulary:
checkup:WellnessSummaryreferenceshealth:MetricTrendfor Layer 2 wellness trend data. Insight classes link to Layer 2 observations. - Clinical Vocabulary: Links to
clinical:Medication,clinical:AllergyIntolerance, andclinical:Conditionsource records imported from Apple Health. - POTS Vocabulary:
checkup:DiagnosticTestResultcan referencepots:POTSCheckResultfor orthostatic screening results. - FHIR: Maintains alignment with FHIR resource structures for clinical interoperability.
Changelog
Version 1.4 (2026-02-01)
- Added 5 new Layer 3 insight classes:
WellnessSummary,TrendInsight,CorrelationInsight,KeyIndicator,AttentionItem - Added
VisitPrepSummaryclass for curated clinical visit preparation - Added aggregate links to
IntakeFormData:hasWellnessSummary,hasTrendInsight,hasCorrelationInsight,hasKeyIndicator,hasAttentionItem,hasVisitPrepSummary - Deprecated
VitalSignsTrend— superseded byhealth:MetricTrend(Layer 2) +checkup:WellnessSummary(Layer 3). Will be removed in v1.5. CorrelationInsightenforces temporal-only language (no causation claims)insightGeneratedByusesprov:Agentrange for both software and human agent provenance- Added
health:prefix import for cross-layer references tohealth:MetricTrend
Version 1.3 (2026-01-17)
- Added EHR Provenance Properties for cross-app medication data portability:
ehrSystemName— EHR patient portal identifierehrOrganization— Healthcare organization namefhirResourceType— FHIR resource type originlastSyncedFromSource— Sync timestamp
- Added Medication Classification Properties:
relevanceTier— current, needsVerification, historical, filteredtherapeuticClass— Pharmacological classtierClassificationReason— Human-readable classification explanation
Version 1.2 (2026-01-15)
- Added Phase 3 MedicationSummary properties (
episodeId,indication,patientCost,functionalImpact,concernsForDoctor) - Added
doctorAwareproperty for SupplementSummary - Updated to align with checkup-adult.shapes.ttl v1.2
- SHACL shapes now validate MedicationSummary with episode linkage and SupplementSummary with required regulatoryStatus
Version 1.1 (2026-01-15)
- Added
SupplementSummaryclass for dietary supplements and OTC products - Added 12 supplement-specific properties (
regulatoryStatus,evidenceStrength, etc.) - Added
hasSupplementproperty to IntakeFormData - Supplements explicitly separated from medications due to different regulatory status
Version 1.0 (2026-01-03)
- Initial release with 12 core classes
- IntakeFormData, PatientProfile, InsuranceInfo, MedicationSummary, AllergySummary, ConditionSummary, FamilyHistoryEntry, VitalSignsTrend, ScreeningStatus, VisitIssue, SuggestedQuestion, DiagnosticTestResult
- POTS Check integration via DiagnosticTestResult
- Data provenance properties for source tracking
Important Notes
- Data Classification: Mix of EHR-verified and consumer-generated data (indicated by provenance)
- Privacy: All data stored locally in encrypted pods; patient controls sharing
- PDF Export: Designed to generate professional intake forms for healthcare providers
- FHIR Alignment: Properties align with FHIR Patient, MedicationStatement, AllergyIntolerance, and Condition resources