Commit 7c9c93df authored by Purcell, Shaun M.,Ph.D.'s avatar Purcell, Shaun M.,Ph.D.
Browse files

added APPLES, and new POPS v1

parent d1a407e8
let volt = V,volt
let mvolt = mV,millivolt,milli-volt,mvolt,m-volt
let uvolt = uV,microvolt,micro-volt,uvolt,u-volt
%
% EEG
%
C3_M2
req:
sig = EEG_C3_A2
unit = volt
unit = mvolt
unit = uvolt
unit = unknown,.
set:
unit = uV
sr = 128
C4_M1
req:
sig = EEG_C4_A1
unit = volt
unit = mvolt
unit = uvolt
unit = unknown,.
set:
unit = uV
sr = 128
O1_M2
req:
sig = EEG_O1_A2
unit = volt
unit = mvolt
unit = uvolt
unit = unknown,.
set:
unit = uV
sr = 128
O2_M1
req:
sig = EEG_O2_A1
unit = volt
unit = mvolt
unit = uvolt
unit = unknown,.
set:
unit = uV
sr = 128
%
% Respiratory channels
%
abdomen <- Effort_Abd
thorax <- Effort_Tho
%
% Oxygen
%
SpO2 <- SpO2
%
% Chin EMG
%
EMG <- EMG_Chin
%
% EOG
%
LOC <- EOG_Left
ROC <- EOG_Right
%
% Leg EMGs
%
LEG <- Leg_LAT_RAT Leg_LAT.RAT Leg_LEGS
%
% Pulse
%
pulse <- pulse
%
% Snore
%
snore <- snore
%
% ECG
%
ECG <- ECG
......@@ -2,9 +2,9 @@
% -------------------------------------------------------------------------
%
% Surface electromyography (EMG)
% - assumes 1,2,3 = C,L,R
% - assumes L-R and R-L are equivalent
%
% assumes 1,2,3 = C,L,R
% assumes L-R and R-L are equivalent, etc
% -------------------------------------------------------------------------
let central_chin=EMG1,Chin1,Chin1_EMG,Chin-C,EMG/C,C_Chin,CCHin,Chin-Ctr
......@@ -20,7 +20,7 @@ let chin_right_central=Chin3-Chin1,Chin_3-Chin_1,EMG3-EMG1,EMG_Chin3-Chin1,RChin
let chin_left_right=chinIII,Chin2-Chin3,Chin_2-Chin_3,EMG2-EMG3,EMG_Chin2-Chin3,LChin-RChin,L_Chin-R_Chin,EMG_Chin2_Chin3
let chin_left_right=chinIII=Chin3-Chin2,Chin_3-Chin_2,EMG3-EMG2,EMG_Chin3-Chin2,RChin-LChin,R_Chin-L_Chin,EMG_Chin3_Chin2
let chin=chin,EMG,EMG_chin,Chin_EMG,Chin_EMG_Gnd
let chin=chin,EMG,EMG_chin,Chin_EMG,Chin_EMG_Gnd,EMG_sm
EMG
req:
......
% -------------------------------------------------------------------------
%
% EOG channels; preferred both referenced against M2
......@@ -21,15 +20,18 @@ let right_eog=EOG_R_Ref
let left_eog_right_mastoid_ref=E1_M2,E1-M2,E1_M2,E1_A2,E1-A2
let left_eog_right_mastoid_ref=EOG_LOC-M2,EOG_LOC_M2,LOC/M2,LOC-M2,LOC_M2,EOGL-M2
let left_eog_right_mastoid_ref=EOG_LOC-A2,EOG_LOC_A2,LOC/A2,LOC-A2,LOC_A2,EOGL-A2
let left_eog_right_mastoid_ref=LOC_A2,LOC_M2
let right_eog_right_mastoid_ref=E2_M2,E2-M2,E2_M2,E2_A2,E2-A2
let right_eog_right_mastoid_ref=EOG_ROC-M2,EOG_ROC_M2,ROC/M2,ROC-M2,ROC_M2,EOGR-M2
let right_eog_right_mastoid_ref=EOG_ROC-A2,EOG_ROC_A2,ROC/A2,ROC-A2,ROC_A2,EOGR-A2
let right_eog_right_mastoid_ref=ROC_A2,ROC_M2
% also include right EOG against left ref.
let right_eog_left_mastoid_ref=E2_M1,E2-M1,E2_M1,E2_A1,E2-A1
let right_eog_left_mastoid_ref=EOG_ROC-M1,EOG_ROC_M1,ROC/M1,ROC-M1,ROC_M1,EOGR-M1
let right_eog_left_mastoid_ref=EOG_ROC-A1,EOG_ROC_A1,ROC/A1,ROC-A1,ROC_A1,EOGR-A1
let right_eog_left_mastoid_ref=ROC_A1,ROC_M1
%% rules
% AASM standard has LOC and ROC both referenced against M2
......@@ -41,7 +43,7 @@ LOC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -53,7 +55,7 @@ LOC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -64,7 +66,7 @@ LOC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -77,7 +79,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -89,7 +91,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -102,7 +104,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -114,7 +116,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -129,7 +131,7 @@ LOC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -140,7 +142,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -526,7 +526,6 @@ OZ_LM
set:
unit = uV
% -------------------------------------------------------------------------
%
% EOG channels; preferred both referenced against M2
......@@ -548,15 +547,18 @@ let right_eog=EOG_R_Ref
let left_eog_right_mastoid_ref=E1_M2,E1-M2,E1_M2,E1_A2,E1-A2
let left_eog_right_mastoid_ref=EOG_LOC-M2,EOG_LOC_M2,LOC/M2,LOC-M2,LOC_M2,EOGL-M2
let left_eog_right_mastoid_ref=EOG_LOC-A2,EOG_LOC_A2,LOC/A2,LOC-A2,LOC_A2,EOGL-A2
let left_eog_right_mastoid_ref=LOC_A2,LOC_M2
let right_eog_right_mastoid_ref=E2_M2,E2-M2,E2_M2,E2_A2,E2-A2
let right_eog_right_mastoid_ref=EOG_ROC-M2,EOG_ROC_M2,ROC/M2,ROC-M2,ROC_M2,EOGR-M2
let right_eog_right_mastoid_ref=EOG_ROC-A2,EOG_ROC_A2,ROC/A2,ROC-A2,ROC_A2,EOGR-A2
let right_eog_right_mastoid_ref=ROC_A2,ROC_M2
% also include right EOG against left ref.
let right_eog_left_mastoid_ref=E2_M1,E2-M1,E2_M1,E2_A1,E2-A1
let right_eog_left_mastoid_ref=EOG_ROC-M1,EOG_ROC_M1,ROC/M1,ROC-M1,ROC_M1,EOGR-M1
let right_eog_left_mastoid_ref=EOG_ROC-A1,EOG_ROC_A1,ROC/A1,ROC-A1,ROC_A1,EOGR-A1
let right_eog_left_mastoid_ref=ROC_A1,ROC_M1
%% rules
% AASM standard has LOC and ROC both referenced against M2
......@@ -568,7 +570,7 @@ LOC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -580,7 +582,7 @@ LOC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -591,7 +593,7 @@ LOC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -604,7 +606,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -616,7 +618,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -629,7 +631,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -641,7 +643,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -656,7 +658,7 @@ LOC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -667,7 +669,7 @@ ROC
unit = volt
unit = mvolt
unit = uvolt
sr-min = 100
sr-min = 50
scale = AC
set:
unit = uV
......@@ -675,9 +677,9 @@ ROC
% -------------------------------------------------------------------------
%
% Surface electromyography (EMG)
% - assumes 1,2,3 = C,L,R
% - assumes L-R and R-L are equivalent
%
% assumes 1,2,3 = C,L,R
% assumes L-R and R-L are equivalent, etc
% -------------------------------------------------------------------------
let central_chin=EMG1,Chin1,Chin1_EMG,Chin-C,EMG/C,C_Chin,CCHin,Chin-Ctr
......@@ -693,7 +695,7 @@ let chin_right_central=Chin3-Chin1,Chin_3-Chin_1,EMG3-EMG1,EMG_Chin3-Chin1,RChin
let chin_left_right=chinIII,Chin2-Chin3,Chin_2-Chin_3,EMG2-EMG3,EMG_Chin2-Chin3,LChin-RChin,L_Chin-R_Chin,EMG_Chin2_Chin3
let chin_left_right=chinIII=Chin3-Chin2,Chin_3-Chin_2,EMG3-EMG2,EMG_Chin3-Chin2,RChin-LChin,R_Chin-L_Chin,EMG_Chin3_Chin2
let chin=chin,EMG,EMG_chin,Chin_EMG,Chin_EMG_Gnd
let chin=chin,EMG,EMG_chin,Chin_EMG,Chin_EMG_Gnd,EMG_sm
EMG
req:
......@@ -752,8 +754,8 @@ let RA_electrode=RA,ECG1,EKG1,ECG_R,ECGR,EKGR,ECG1-REF,ECG1_REF
let LA_electrode=LA,ECG2,EKG2,ECG_L,ECGL,EKGL,ECG1-REF,ECG2_REF
let LL_electrode=LL,ECG3,EKG3,ECG_LL,ECG1-REF,ECG2_REF
% leads; if a single ECG channel present, assume is lead I bipolar
% othewise, create explicitly from the existing channels
% leads; if a single ECG channel present, assume lead I is bipolar
% otherwise, create explicitly from the existing channels
let ecg_lead1=ECG_LA-RA,ECG1-ECG2
......@@ -829,70 +831,104 @@ ECG
%
% -------------------------------------------------------------------------
let abdomen=abdomen,ABD,Abdmn,Abdo,ABDOM,Abdomen,Abdomen.1,Abd.1,Abd2,Abdominal
let abdomen=Effort_ABD,ABDO_EFFORT,A-Effort,Abdomen_EG,Resp_Abdominal,Abdo_Res,Resp_Abdomen,EEG_Abd
let abdomen=abdomen,ABD,Abdmn,Abdo,ABDOM,Abdomen,Abd2,Abdominal
let abdomen=Effort_ABD,ABDO_EFFORT,A-Effort,Abdomen_EG,Resp_Abdominal,Abdo_Res,Resp_Abdomen
let abdomen=EEG_Abd,AbdDC,ABDM
let thorax=thorax,Thorax.1,Thoracic,THOR_RES,Thor,Thorax_EG,THO,THOR_EFFORT,Effort_THO,Resp_Thoracic
let thorax=Chest,Chest1,Resp_Chest,EEG_Chest,RIB_CAGE
let thorax=thorax,Thoracic,THOR_RES,Thor,Thorax_EG,THO,THOR_EFFORT,Effort_THO,Resp_Thoracic
let thorax=Chest,Chest1,Resp_Chest,EEG_Chest,RIB_CAGE,ChestDC
let sum=sum,Subm,THOR+ABDO,Sum_
let sum=sum,THOR+ABDO,Sum_
% rules (note: variables are not expanded for canonical channel labels)
abdomen
req:
sig = abdomen
unit=mV,uV,V,Volts,.,none
set:
unit=mV
thorax
req:
sig = thorax
unit=mV,uV,V,Volts,.,none
set:
unit=mV
sum
req:
sig = sum
unit=mV,uV,V,Volts,.,none
set:
unit=mV
% -------------------------------------------------------------------------
%
% Airflow: thermister & nasal pressure cannula
%
% Airflow: thermistor & nasal pressure cannula
%Stages St. Luke's uses Nasal_therm term for thermistor
% -------------------------------------------------------------------------
% thermistor
%chat uses PVDF, we decided to map to thermistor
let therm=therm,TERM,Thermistor,Oral_Thermistor,Nasal/Oral,Aux_AC,EEG_Therm,Thermistor_EG
let thermistor=therm,Thermistor,EEG_Therm,Thermistor_EG,AIRFLOW,nasalflow
let airflow=air,Airflow1,AIR_FLOW,Flow_EG,NasalSn,Nasal_Therm
let thermistor=oralflow,AIR,airlfow,NasOr,NasOr2
% nasal pressure transducer
% removed N_Pres and N.Press they were in the Stages cohort and were not legitimate signals
let nas_pres=CannulaFlow,CanulaFlow,Cannula,Cannula_Flow,CannulaFow,CannnulaFlow,CannlulaFlow,CannualFlow
let nas_pres=CannulaNasal,Nasal_Cannula,NASAL_PRES,Nasal_Pressure
let nas_pres=Nasal,Nasal.1,NasalP,NASAL_PRESS,PNasal,NASAL_FLOW,Nasal_EG,nFlow
let nas_pres=NPAF,NP,NPV,NPV_flow,PN,NAF,PNEUMFLOW,PTAF,Ptrans,Prongs,Pressure,Pres
let nasal_pres=CannulaFlow,CanulaFlow,Cannula,Cannula_Flow,CannulaFow,CannnulaFlow,CannlulaFlow,
let nasal_pres=CannualFlow,CannulaNasal,Nasal_Cannula,NASAL_PRES,Nasal_Pressure
let nasal_pres=Nasal,NASAL_PRESS,Nasal_EG, PTAF
let nasal_pres=NP,Pressure,Pres,nas_pres,DC_Nasal_Canual
% Unspecified airflow channels (info may be in the transducer fields)
let airflow=airflow,flow,Airflow,Flow_A10,Flow_CU,Flow_Patient
let airflow=air,Airflow1,AIR_FLOW,Flow_EG,Flo
let airflow=Resp_Airflow,Resp_Flow,Resp_FLOW-Ref,Resp_Airflow+-Re
let airflow=flow,Flow_Patient
let airflow=Resp_Airflow,Resp_Flow,Resp_FLOW-Ref,Resp_Airflow+-Re,NasalDC
let airflow=Flow_Aux4
% rules
% TODO: add in transducer rules for generic airflow channels
therm
thermistor
req:
sig = therm
sig = thermistor
unit=mvolt
unit=uvolt
unit=unknown,.,*
nas_pres
nasal_pres
req:
sig = nas_pres
sig = nasal_pres
unit=mvolt
unit=uvolt
unit=mbar
unit=ubar
unit=unknown,.
nasal_pres
req:
sig = airflow
unit=mbar
unit=ubar
airflow
unless:
therm
nas_pres
thermistor
nasal_pres
req:
sig = airflow
unit=mvolt
unit=uvolt
unit=unknown,.
% -------------------------------------------------------------------------
......@@ -901,13 +937,23 @@ airflow
%
% -------------------------------------------------------------------------
let SpO2=SpO2,SAO2,SAT,SpO2_EG,SA02,SO02,PaO2
let SpO2=SpO2,SAO2,SAT,SpO2_EG,SA02,SO02,PaO2,SPO2__2_,Sa02masimo,SA02nonin,SAO2External,Nonin_sat
let SpO2=SAO2masimo,SAO2Nellcor,SAO2ninon,SAO2noin,A_SpO2,SAO2nonin,SA02nonin,SpO2Sta,SpO2x,SpO2xx
SpO2
req:
sig = SpO2
unit = percent,.,*
let Pleth=pleth,plethmasimo,plethmasino,plethnellcor,plethwv,pletmasimo,PPG
Pleth
req:
sig = Pleth
unit=V
unit=uV
unit=mV
unit=none,.
% -------------------------------------------------------------------------
%
% (Derived) Heart rate (BPM)
......@@ -925,8 +971,8 @@ HR
% Plethysmography (volume of blood, from oximetry signal)
%
% -------------------------------------------------------------------------
let pleth=pleth,Plethysmogram,Plesmo,PlethWV,RD-Pleth,RD-Pleth_EG
let pleth=pleth,Plethysmogram,Plesmo,PlethWV,RD-Pleth,RD-Pleth_EG,Plethmasimo,PlethMasino
let pleth=PlethNellcor,PletMasimo
pleth
req:
......@@ -945,105 +991,328 @@ pulse
req:
sig = pulse
% -------------------------------------------------------------------------
%
% Surface EMG monitoring of limb muscles
%
% -------------------------------------------------------------------------
let left_leg1=EEG_LLeg1,LLEG1,LEFT_LEG1,L_LEG1,L_LEG_1,LLeg3,LegsL_Leg1
let left_leg2=EEG_LLeg2,LLEG2,LEFT_LEG2,L_LEG2,L_LEG_2,LLeg4
let right_leg1=RLEG1,RIGHT_LEG1,EEG_RLeg1,R_LEG1,R_LEG_1,RLeg5
let right_leg2=RLEG2,RIGHT_LEG2,EEG_RLeg2,R_LEG2,R_LEG_2,RLeg6
let left_right_leg=lleg_r,lleg1_2
% pre-computed bilateral LATs and RATs
let left_leg=LLEG,L_LEG,LLeg1_LLeg2,LEFT,Leg_Ltibial,L_Legs,lleg1_2,EMG_LLEG_LLEG2,EMG_LLEG__LLEG_, EMG_LAT1_LAT2,LAT1_LAT2
% generate LAT and RAT, allowing for three transducer types
let right_leg=RLEG,R_LEG,RLEG1_RLeg2,Leg_Rtibial,RIGHT,R_Legs,rleg1_2,EMG_RLEG_RLEG2,EMG_RLEG__RLEG_,EMG_RAT1_RAT2, RAT1_RAT2
% EMG, piezo and unknown
%piezo monitoring of limb muscles
let left_leg_piezo=L_Leg, lleg,Leg_L,LegL
let right_leg_piezo=R_Leg, rleg,Leg_R,LegR
let leg_piezo=Leg
%
let left_leg1_unknown=LLeg1,leg_1,Leg_12
let left_leg2_unknown=LLeg2,Leg_2,Leg_22
let right_leg1_unknown=rleg1
let right_leg2_unknown=RLeg2
let left_leg_unknown=LLeg1,LLEG,L_Leg,LAT,Leg_L_LEG
let right_leg_unknown=RLeg,R_Leg,RAT
let left_right_unknown=lleg_r,EMG_LLeg_RLeg
% expected EMG signals typically either have two channels per leg (which
% rules
% will need to be re-referenced to each other) or one bipolar signal
% per leg (i.e. already re-referenced). Piezo will only have one
% signal per leg
%
% Channel + Transducer --> Inferred type
% -------------------------------------------------
% EMG + any/none --> EMG
% generic + EMG --> EMG
% piezo + any/none --> piezo (no current examples/rules)
% generic + piezo --> piezo
% generic + unknown/none --> unknown
% EMG has two leads per leg, versus piezo only has one,
% assume that channels indicating >1 lead == EMG
%
% Define generic left/right leg fields
% (i.e. presumably piezo OR bipolar EMG)
%
let left_leg=LLEG,L_LEG,LEFT,Leg_L,LegL,Leg_Ltibial,L_Legs,LATl,LegsL_Leg1,L_Leg1,L_LEG_1
let left_leg=LLeg3,L_Leg2,L_LEG_2,LLeg4,Leg_L_LEG,LAT
let right_leg=RLEG,R_LEG,RIGHT,Leg_R,LegR,Leg_Rtibial,R_Legs,RAT,R_LEG1,RLEG1,RLeg5,RLEG_2
let right_leg=RLEG2,RLeg6
let leg=leg
let leg1=leg_1
let leg2=Leg_2
%
% EMG-specific rules (indicated by presence of >1 channel per leg in labels)
%
% 4-lead EMG channels (2 channels per leg: implies EMG)
let left_leg1_emg=LLEG1,LEFT_LEG1,L_LEG1,L_LEG_1
let left_leg1_emg=EEG_LLEG1,EEG_LEFT_LEG1,EEG_L_LEG1,EEG_L_LEG_1
let left_leg1_emg=EMG_LLEG1,EMG_LEFT_LEG1,EMG_L_LEG1,EMG_L_LEG_1
let left_leg2_emg=LLEG2,LEFT_LEG2,L_LEG2,L_LEG_2
let left_leg2_emg=EEG_LLEG2,EEG_LEFT_LEG2,EEG_L_LEG2,EEG_L_LEG_2
let left_leg2_emg=EMG_LLEG2,EMG_LEFT_LEG2,EMG_L_LEG2,EMG_L_LEG_2
let right_leg1_emg=RLEG1,RIGHT_LEG1,R_LEG1,R_LEG_1
let right_leg1_emg=EEG_RLEG1,EEG_RIGHT_LEG1,EEG_R_LEG1,EEG_R_LEG_1
let right_leg1_emg=EMG_RLEG1,EMG_RIGHT_LEG1,EMG_R_LEG1,EMG_R_LEG_1
let right_leg2_emg=RLEG2,RIGHT_LEG2,R_LEG2,R_LEG_2
let right_leg2_emg=EEG_RLEG2,EEG_RIGHT_LEG2,EEG_R_LEG2,EEG_R_LEG_2
let right_leg2_emg=EMG_RLEG2,EMG_RIGHT_LEG2,EMG_R_LEG2,EMG_R_LEG_2
% 2-lead EMG channels (pre-computed bilateral LATs and RATs)
% assumption: requires that channel labels make referencing explicit
let left_leg_emg=LLeg1_LLeg2,lleg1_2
let left_leg_emg=EMG_LLEG_LLEG2,EMG_LLEG__LLEG_,EMG_LAT1_LAT2,LAT1_LAT2