@prefix bcio: .
@prefix chebi: .
@prefix cmo: .
@prefix dcterms: .
@prefix efo: .
@prefix fm: .
@prefix loinc: .
@prefix mesh: .
@prefix ncit: .
@prefix owl: .
@prefix prov: .
@prefix rdfs: .
@prefix sio: .
@prefix snomed: .
@prefix sosa: .
@prefix time: .
@prefix voaf: .
@prefix vso: .
@prefix xsd: .
fm:ApEn a owl:NamedIndividual,
fm:NonlinearHRV ;
rdfs:label "ApEn" ;
rdfs:comment "Approximate entropy of RR series (m=2). Legacy metric retained for comparability; ECG signal-based computation (Čukić et al. method) planned as extension" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:BMI a cmo:0000105,
owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "BMI" ;
rdfs:comment "Body mass index (kg/m2). Nearest OMR value to recording_date; filtered 10-80" ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:BPM a ncit:C49673,
owl:NamedIndividual,
fm:PhysiologicalRate ;
rdfs:label "BPM" ;
rdfs:comment "Mean heart rate (beats per minute). 60000 / mean(RR_ms); 10-second window" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:BR a ncit:C49660,
owl:NamedIndividual,
fm:PhysiologicalRate ;
rdfs:label "BR" ;
rdfs:comment "Breathing rate derived from ECG (breaths/min). ECG-derived breathing rate via EDR method (neurokit2); NCIT C49660 preferred over PATO for clinical measurement concept" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:DBP a vso:0000015,
owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "DBP" ;
rdfs:comment "Diastolic blood pressure (mmHg). Nearest OMR value to recording_date" ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:DFA a owl:NamedIndividual,
fm:NonlinearHRV ;
rdfs:label "DFA" ;
rdfs:comment "Detrended fluctuation analysis alpha. Short-term scaling exponent; nolds library; ECG signal-based computation (Čukić et al. method) planned as extension" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:ECGSignal a owl:Class,
owl:NamedIndividual ;
rdfs:subClassOf fm:SignalSource .
fm:ECG_source a owl:NamedIndividual,
prov:Activity,
fm:ProvenanceVar ;
rdfs:label "ECG_source" ;
rdfs:comment "ECG acquisition device/protocol metadata. ECG acquisition event; PROV-O Activity; format: dataset|fs|channels|samples|fmt|adc" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:HF a owl:NamedIndividual,
fm:SpectralHRV ;
rdfs:label "HF" ;
rdfs:comment "High-frequency HRV power 0.15-0.4 Hz (ms^2). Computed via Lomb-Scargle Periodogram (LSP); more reliable than LF at 10s; parasympathetic marker" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:frequencyBand "0.15-0.4 Hz" ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "not_computed" .
fm:HFD a owl:NamedIndividual,
fm:NonlinearHRV ;
rdfs:label "HFD" ;
rdfs:comment "Higuchi fractal dimension of RR series. kmax=min(10 or N/2); antropy library; ECG signal-based computation (Čukić et al. method) planned as extension" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:LF a owl:NamedIndividual,
fm:SpectralHRV ;
rdfs:label "LF" ;
rdfs:comment "Low-frequency HRV power 0.04-0.15 Hz (ms^2). Computed via Lomb-Scargle Periodogram (LSP); ultra-short-term estimate; NIH supports use for ANS assessment with caveats documented" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:frequencyBand "0.04-0.15 Hz" ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "not_computed" .
fm:LFnu a owl:NamedIndividual,
fm:SpectralHRV ;
rdfs:label "LFnu" ;
rdfs:comment "Normalized LF power. LF/(LF+HF)*100; normalized LF power; FAIR-MIND extension term" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:frequencyBand "0.04-0.15 Hz (normalized)" ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "not_computed" .
fm:MAD a owl:NamedIndividual,
fm:TimeDomainHRV ;
rdfs:label "MAD" ;
rdfs:comment "Median absolute deviation of RR intervals (ms). Robust variability index; ontology extension needed" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:RMSSD a efo:EFO_0009257,
owl:NamedIndividual,
fm:TimeDomainHRV ;
rdfs:label "RMSSD" ;
rdfs:comment "Root mean square of successive RR differences (ms). Parasympathetic marker; artifact filtering via neurokit2" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:SBP a vso:0000038,
owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "SBP" ;
rdfs:comment "Systolic blood pressure (mmHg). Nearest OMR value to recording_date" ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:SD1 a owl:NamedIndividual,
fm:PoincareHRV ;
rdfs:label "SD1" ;
rdfs:comment "Poincare plot short-term variability (ms). BMONT missing explicit Poincare terms" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:SD2 a owl:NamedIndividual,
fm:PoincareHRV ;
rdfs:label "SD2" ;
rdfs:comment "Poincare plot long-term variability (ms). Requires ontology extension for Poincare metrics" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:SDNN a efo:EFO_0009256,
owl:NamedIndividual,
fm:TimeDomainHRV ;
rdfs:label "SDNN" ;
rdfs:comment "Standard deviation of NN intervals (ms)" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:SampEn a owl:NamedIndividual,
fm:NonlinearHRV ;
rdfs:label "SampEn" ;
rdfs:comment "Sample entropy of RR series (m=2). r=0.2*std; inf replaced with NaN; ECG signal-based computation (Čukić et al. method) planned as extension" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:TP a owl:NamedIndividual,
fm:SpectralHRV ;
rdfs:label "TP" ;
rdfs:comment "Total power of HRV (ms^2). Total spectral power (LF+HF+VLF); computed via LSP; reliability limited at 10s; documented in params" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:frequencyBand "0.003-0.4 Hz" ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "not_computed" .
fm:admittime a loinc:LP185883-8,
owl:NamedIndividual,
fm:Timestamp ;
rdfs:label "admittime" ;
rdfs:comment "Admission timestamp" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:age a owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "age" ;
rdfs:comment "Age at ECG (years). Derived: anchor_age + (recording_date.year - anchor_year)" ;
rdfs:seeAlso sio:SIO_001013 ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:anchor_age a sio:SIO_001013,
owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "anchor_age" ;
rdfs:comment "MIMIC-IV anchor age. Reference point for computing age at ECG" ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:anchor_year a owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "anchor_year" ;
rdfs:comment "MIMIC-IV anchor year. Used with recording_date to derive age" ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:antidepress a owl:NamedIndividual,
fm:MedicationVar ;
rdfs:label "antidepress" ;
rdfs:comment "Antidepressant medication use (binary). Covers SSRI/SNRI classes; renamed from antidepressant" ;
rdfs:seeAlso mesh:D000928 ;
fm:belongsToLayer fm:Layer4_Medications ;
fm:pipelineStatus "implemented" .
fm:belongsToLayer a owl:ObjectProperty ;
rdfs:domain fm:Variable ;
rdfs:isDefinedBy ;
rdfs:range fm:APLayer .
fm:computedFrom a owl:ObjectProperty ;
rdfs:comment "Source signal from which this variable is computed." ;
rdfs:domain fm:ComputedVariable ;
rdfs:isDefinedBy ;
rdfs:range fm:SignalSource ;
rdfs:subPropertyOf prov:wasDerivedFrom .
fm:depression a snomed:35489007,
owl:NamedIndividual,
fm:ClinicalVar ;
rdfs:label "depression" ;
rdfs:comment "Depression flag (ICD-10 F32, F33). Binary; replaces PHQ-9 (unavailable in MIMIC-IV)" ;
fm:belongsToLayer fm:Layer1_Clinical ;
fm:pipelineStatus "implemented" .
fm:dischtime a loinc:MTHU048209,
owl:NamedIndividual,
fm:Timestamp ;
rdfs:label "dischtime" ;
rdfs:comment "Discharge timestamp" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:dod a ncit:C70810,
owl:NamedIndividual,
fm:Timestamp ;
rdfs:label "dod" ;
rdfs:comment "Date of death if known. Mortality endpoint" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:file_name a owl:NamedIndividual,
prov:Location,
fm:Identifier ;
rdfs:label "file_name" ;
rdfs:comment "Relative path to WFDB record (.hea/.dat). Relative path to WFDB waveform files (.hea/.dat); source locator" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:frequencyBand a owl:DatatypeProperty ;
rdfs:comment "Frequency range for spectral HRV analysis." ;
rdfs:isDefinedBy ;
rdfs:range xsd:string .
fm:hadm_id a ncit:C25179,
owl:NamedIndividual,
fm:Identifier ;
rdfs:label "hadm_id" ;
rdfs:comment "Hospital admission identifier. Hospital admission episode identifier; links ECG to clinical context" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:hasParamsRef a owl:DatatypeProperty ;
rdfs:comment "URI to computation parameter documentation." ;
rdfs:domain fm:ComputedVariable ;
rdfs:isDefinedBy ;
rdfs:range xsd:anyURI .
fm:lithium a owl:NamedIndividual,
fm:MedicationVar ;
rdfs:label "lithium" ;
rdfs:comment "Lithium medication use (binary). BCIO links to CHEBI compound for lithium carbonate" ;
rdfs:seeAlso chebi:30145 ;
fm:belongsToLayer fm:Layer4_Medications ;
fm:pipelineStatus "implemented" .
fm:pNN20 a owl:NamedIndividual,
fm:TimeDomainHRV ;
rdfs:label "pNN20" ;
rdfs:comment "Percentage of NN differences > 20ms. BMONT defines pNN50 but not pNN20; extension needed" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:pNN50 a owl:NamedIndividual,
fm:TimeDomainHRV ;
rdfs:label "pNN50" ;
rdfs:comment "Percentage of NN differences > 50ms. Percentage of NN intervals >50ms; no verified EFO/CMO term found; FAIR-MIND extension pending EFO submission" ;
fm:belongsToLayer fm:Layer2_Biomarkers ;
fm:computedFrom fm:RRIntervals ;
fm:hasParamsRef "https://github.com/cik860/fair-mind-ap/blob/main/hrv_params.json"^^xsd:anyURI ;
fm:pipelineStatus "implemented" .
fm:pipelineStatus a owl:DatatypeProperty ;
rdfs:comment "Implementation status: implemented, not_computable, planned." ;
rdfs:isDefinedBy ;
rdfs:range xsd:string .
fm:recording_date a owl:NamedIndividual,
prov:InstantaneousEvent,
fm:ProvenanceVar ;
rdfs:label "recording_date" ;
rdfs:comment "Date and time of ECG measurement. ISO8601 timestamp; renamed from ecg_time" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:sex a bcio:BCIO_015105,
owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "sex" ;
rdfs:comment "Biological sex of participant. Values M/F; renamed from gender" ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:study_id a owl:NamedIndividual,
prov:Entity,
fm:Identifier ;
rdfs:label "study_id" ;
rdfs:comment "MIMIC-IV-ECG unique ECG study identifier. MIMIC-IV-ECG recording identifier; PROV-O Entity representing one ECG record" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:subject_id a ncit:C41189,
owl:NamedIndividual,
fm:Identifier ;
rdfs:label "subject_id" ;
rdfs:comment "MIMIC-IV unique patient identifier. MIMIC-IV patient identifier; maps to NCIT Study Subject concept" ;
rdfs:seeAlso ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:suicidality a owl:NamedIndividual,
fm:ClinicalVar ;
rdfs:label "suicidality" ;
rdfs:comment "Suicidal thoughts or behavior flag. ICD-10 T1491/Z915; ideation vs attempt distinction unclear" ;
rdfs:seeAlso snomed:429451000124109 ;
fm:belongsToLayer fm:Layer1_Clinical ;
fm:pipelineStatus "implemented" .
fm:z_BMI a owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "z_BMI" ;
rdfs:comment "Body mass index (standardized z-score). Standardized z-score of BMI; FAIR-MIND extension" ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:z_age a owl:NamedIndividual,
fm:DemographicVar ;
rdfs:label "z_age" ;
rdfs:comment "Age (standardized z-score). Standardized z-score of age; no exact EFO/NCIT term for z-scored demographic; FAIR-MIND extension" ;
fm:belongsToLayer fm:Layer3_Provenance ;
fm:pipelineStatus "implemented" .
fm:ClinicalVar a owl:Class ;
rdfs:comment "Clinical diagnostic variable." ;
rdfs:isDefinedBy ;
rdfs:subClassOf fm:Variable .
fm:Layer1_Clinical a owl:Class,
owl:NamedIndividual ;
rdfs:subClassOf fm:APLayer .
fm:Layer4_Medications a owl:Class,
owl:NamedIndividual ;
rdfs:subClassOf fm:APLayer .
fm:MedicationVar a owl:Class ;
rdfs:comment "Medication prescription variable." ;
rdfs:isDefinedBy ;
rdfs:subClassOf fm:Variable .
fm:PhysiologicalRate a owl:Class ;
rdfs:isDefinedBy ;
rdfs:subClassOf fm:ComputedVariable .
fm:PoincareHRV a owl:Class ;
rdfs:isDefinedBy ;
rdfs:subClassOf fm:HRVFeature .
fm:ProvenanceVar a owl:Class ;
rdfs:comment "Provenance metadata variable (recording source, parameters)." ;
rdfs:isDefinedBy ;
rdfs:subClassOf prov:Entity,
fm:Variable .
fm:SignalSource a owl:Class ;
rdfs:isDefinedBy .
fm:Timestamp a owl:Class ;
rdfs:comment "Temporal instant variable (admission, discharge, recording date)." ;
rdfs:isDefinedBy ;
rdfs:subClassOf time:Instant,
fm:Variable .
fm:ComputedVariable a owl:Class ;
rdfs:comment "A computed variable derived from physiological signals." ;
rdfs:isDefinedBy ;
rdfs:subClassOf sosa:ObservableProperty,
fm:Variable .
fm:HRVFeature a owl:Class ;
rdfs:isDefinedBy ;
rdfs:subClassOf fm:ComputedVariable .
fm:Identifier a owl:Class ;
rdfs:comment "Record identifier, traceable as a PROV-O entity." ;
rdfs:isDefinedBy ;
rdfs:subClassOf prov:Entity,
fm:Variable .
fm:NonlinearHRV a owl:Class ;
rdfs:isDefinedBy ;
rdfs:subClassOf fm:HRVFeature .
fm:SpectralHRV a owl:Class ;
rdfs:isDefinedBy ;
rdfs:subClassOf fm:HRVFeature .
fm:APLayer a owl:Class ;
rdfs:isDefinedBy .
fm:TimeDomainHRV a owl:Class ;
rdfs:isDefinedBy ;
rdfs:subClassOf fm:HRVFeature .
fm:Variable a owl:Class ;
rdfs:isDefinedBy .
fm:DemographicVar a owl:Class ;
rdfs:comment "Demographic characteristic variable (age, sex, BMI)." ;
rdfs:isDefinedBy ;
rdfs:subClassOf ncit:C17357,
fm:Variable .
fm:Layer2_Biomarkers a owl:Class,
owl:NamedIndividual ;
rdfs:subClassOf fm:APLayer .
fm:RRIntervals a owl:Class,
owl:NamedIndividual ;
rdfs:subClassOf fm:SignalSource .
fm:Layer3_Provenance a owl:Class,
owl:NamedIndividual ;
rdfs:subClassOf fm:APLayer .
a voaf:Vocabulary,
owl:Ontology ;
dcterms:contributor "Milena Čukić" ;
dcterms:created "2026-05-01"^^xsd:date ;
dcterms:creator "Inkyung Choi" ;
dcterms:description "A variable-level vocabulary for integrating depression clinical data with ECG-derived HRV biomarkers, composing 8 established ontologies across 4 semantic layers. Uses RDFS-level semantics with SHACL validation; OWL declarations maintained for forward compatibility." ;
dcterms:license ;
dcterms:publisher "Sungkyunkwan University" ;
dcterms:source ;
dcterms:title "FAIR-MIND Application Profile" ;
rdfs:seeAlso ;
owl:versionIRI ;
owl:versionInfo "v4.0" .