Version 9 (modified by 12 years ago) ( diff ) | ,
---|
The PATS mappings are split into text and numeric fields.
Text Fields
Text fields are mapped to the i2b2 Observation Fact table like this
i2b2 Field | Source |
Encounter_Num | i2b2 Patient ID |
Patient_Num | i2b2 PatientID |
Concept_Cd | Enum lookup value (see below) |
Provider_Id | "@" |
Start_Date | The source table observation date field (see below) |
Modifier_Cd | "@" |
ValType_Cd | "T" (text) |
Units_Cd | "@" |
Location_Cd | "@" |
Update_Date | The current date using the GETDATE() Function |
SourceSystem_Cd | "BRICCS" |
Upload_Id | "1" |
SOMETIME (RB): Convert Update_Date to use a date parameter. It's just a little quicker.
SOMETIME (RB): Should the SourceSystem_Cd not be "PATS"? Or maybe "MINAP" or whatever.
SOMETIME (RB): The Upload_Id is presumably always one because everything is reloaded each time. Might be nice to change this to something more meaningful.
Enum Lookup Value
The Concept Code to use is found in the table DATA_DICTIONARY_ENUM_VALUES in the DWBRICCS database on UHLDWH server. This table contains records for concept code keyed on source table name, column name and column value. NULL column values may be mapped to the field '(empty)'.
ACTION (RB): Check if all possible values of column value contain a mapping in the DATA_DICTIONARY_ENUM_VALUES table.
Source Table Observation Date Field
For each source table in the there is a single field that is used as the start date for all columns from that field. The observation date field to use for each table is stored in the pats_tables table in the DWBRICS on the UHLDWH server.
Numeric Fields
Numeric fields are mapped to the i2b2 Observation Fact table like this
i2b2 Field | Source |
Encounter_Num | i2b2 Patient ID |
Patient_Num | i2b2 PatientID |
Concept_Cd | "PTS:{TABLE_NAME}_{COLUMN_ID}" |
Provider_Id | "@" |
Start_Date | The source table observation date field (see above) |
Modifier_Cd | "@" |
ValType_Cd | "N" (numeric) |
TVal_Char | "E" (see below) |
Units_Cd | Value calculated by ufn_get_units function (see below) |
Location_Cd | "@" |
Update_Date | The current date using the GETDATE() Function |
SourceSystem_Cd | "BRICCS" |
Upload_Id | "1" |
TVal_Char
The TVal_Char describes the meaning of the value contained in the NVal_Num field.
For all values currently the value of TVal_Char is set to "E", which means equals. That is, the value in the NVal_Num field is the result of the test. All possible values of TVal_Char are:
Value | Meaning |
E | Equals |
NE | Not Equal |
L | Less Than |
LE | Less Than or Equals |
G | Greater Than |
GE | Greater Than or Equals |
From a casual look at the data, I think that a value of less than X, or greater than Y is sometimes used for Pathology data.
ufn_get_units Function
The function ufn_get_units in the DWBRICCS database is called with parameters of table_name and field_name to determine the units.
ACTION (RB): Work out what this function actually does and then move the logic into a join if possible. This should be clearer and also quicker.