i2b2 Developer's Forum
Space shortcuts
Space Tools

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 4.0

...

In the Observation_fact table of the Clinical Research Chart of i2b2, the following columns are used to describe values associated with concepts:

ValueType     ValType_CD (Varchar(50))

NVal     NVal_num (number)

TVal     TVal_char (Varchar(255) – standard, sized per implementation)

ValueFlag     ValueFlag_CD (Varchar(50))

Quantity     Quantity_CD (number)

Units     Units_CD (Varchar(50))

Observation     Observation_blob (blob)

Values that are expected to occur in these columns are specified in a column of the Ontology Cell named "Metadata_XML".  Modifiers may often have values associated with them, and the above columns are filled and the Metadata_XML is specified in the same way as the concept_cd, however the value applies to the modifier rather than the concept_cd.  When there is a value in these columns and a modifier is present in the modifier_cd column, the value ALWAYS applies to the modifier_cd coded element.  Note that if the value is desired to apply to the base concept_cd, the modifier_cd column is specified to be "@".

Values are defined according to the ValueTypeValType_CD column, which can be construed as an identifier for the type of value object that fills out the rest of the above columns.   There are two identifiers that are used for medication modifiers:

N      N = numeric value

T      T = enumerated or string value

...

MaxStringLength will contain a postitive integer or 0, representing the longest acceptable string length, if the datatype is "string".

LowofLowReference LowofLowValue specifies the lowest of the low range values for PosInteger, Integer, Float, and PosFloat datatypes.

HighofLowReference HighofLowValue specifies the highest of the low range values for PosInteger, Integer, Float, and PosFloat datatypes.

LowofHighReference LowofHighValue specifies the lowest of the high range values for PosInteger, Integer, Float, and PosFloat datatypes.

HighofHighReference HighofHighValue specifies the highest of the high range values for PosInteger, Integer, Float, and PosFloat datatypes.

LowofToxicReference LowofToxicValue specifies the lowest of the toxic range values for PosInteger, Integer, Float, and PosFloat datatypes.

HighofToxicReference HighofToxicValue specifies the highest of the toxic range values for PosInteger, Integer, Float, and PosFloat datatypes (rarely used).

Analysis contains tags that are used to retain data for the analysis of a valuemetadata element.  However, it is transient, and will not be retained from one build to the next.  It generally only reflects the current state of the metadata database.  The New tag is intended to contain new unitvalues, enumvalues, and such.

<ValueMetadata>

            <Version>3     <Version>3.02</Version>            <CreationDateTime>

     <CreationDateTime>

            <TestID     <TestID/>            <TestName

     <TestName/>

            <DataType>PosInteger     <DataType>PosInteger, Integer, Float, PosFloat, Enum, String</DataType>

            <Flagstouse     <Flagstouse/>            <Oktousevalues

     <Oktousevalues/>

            <UnitValues>     <UnitValues>

            <NormalUnits          <NormalUnits/>            <EqualUnits

          <EqualUnits/>

            <ConvertingUnits          <ConvertingUnits/>

<Units          <Units/>

<MultiplyingFactor          <MultiplyingFactor/>

            <ConvertingUnits          <ConvertingUnits/>            <ExcludingUnits

          <ExcludingUnits/>

            <     </UnitValues>            <EnumValues>

     <EnumValues>

                        <Val           <Val description=""/>                       

<ExcludingVal           <ExcludingVal description=""/>

            <     </EnumValues>

            <MaxStringLength     <MaxStringLength/>            <CommentsDeterminingExclusion>

     <CommentsDeterminingExclusion>

                        <Com><          <Com></Com>

            <     </ CommentsDeterminingExclusion >CommentsDeterminingExclusion>

            <LowofLowReference     <LowofLowReference/>            <HighofLowReference

     <HighofLowReference/>

            <LowofHighReference     <LowofHighReference/>            <HighofHighReference

     <HighofHighReference/>

            <LowofToxicReference     <LowofToxicReference/>            <HighofToxicReference

     <HighofToxicReference/>

<Analysis>     <Analysis>

                        <Enums          <Enums/>                        <Counts

          <Counts/>

                        <New          <New/>

            <     </Analysis>

</ValueMetadata>

...

<?xml version="1.0"?>

<ValueMetadata>

      <Version>3     <Version>3.02</Version>

      <CreationDateTime>01     <CreationDateTime>01/26/2011 00:00:00</CreationDateTime>

<TestID>MED     <TestID>MED:DOSE</TestID>

<TestName>Medication      <TestName>Medication Dose</TestName>

<DataType>PosFloat<     <DataType>PosFloat</DataType>

<Flagstouse><     <Flagstouse></Flagstouse>

<Oktousevalues>Y<     <Oktousevalues>Y</Oktousevalues>

<EnumValues><     <EnumValues></EnumValues>

<UnitValues>     <UnitValues>

< NormalUnits           <NormalUnits >mg/dose</ NormalUnits >NormalUnits>< EqualUnits

          <EqualUnits >mg/tablet</ NormalUnits >< EqualUnits >gm EqualUnits>

          <EqualUnits>gm/liter</ EqualUnits >< EqualUnits >mgEqualUnits>

          <EqualUnits>mg/ml</ NormalUnits >

< ExcludingUnits >%</ ExcludingUnits >

< ExcludingUnits >iu</ ExcludingUnits >

< ExcludingUnits >iu/ml</ ExcludingUnits >

< ExcludingUnits >mcg/inh</ ExcludingUnits >

< ExcludingUnits >mEq</ ExcludingUnits >

< ExcludingUnits >mg/inh</ ExcludingUnits >

< ExcludingUnits >u/gm</ ExcludingUnits >

< ExcludingUnits >u/ml</ ExcludingUnits >

<ConvertingUnits>

<Units> gm/tablet </Units>

<MultiplyingFactor>1000</MultiplyingFactor>

</ConvertingUnits>

<ConvertingUnits>

<Units> gm/15ml </Units>

<MultiplyingFactor>66.66</MultiplyingFactor>

</ConvertingUnits>

<ConvertingUnits>

<Units> gm/50ml </Units>

<MultiplyingFactor>20</MultiplyingFactor>

</ConvertingUnits>

<ConvertingUnits>

<Units> mcg/tablet </Units>

<MultiplyingFactor>0.001</MultiplyingFactor>

</ConvertingUnits>

<ConvertingUnits>

<Units> mcg/ml </Units>

<MultiplyingFactor>0.001</MultiplyingFactor>

</ConvertingUnits>

<ConvertingUnits>

<Units> mg/0.5ml </Units>

<MultiplyingFactor>2</MultiplyingFactor>

</ConvertingUnits>

<ConvertingUnits>

<Units> mg/15ml </Units>

<MultiplyingFactor>15</MultiplyingFactor>

</ConvertingUnits>

<ConvertingUnits>

<Units> mg/5ml </Units>

<MultiplyingFactor>5</MultiplyingFactor>

</ConvertingUnits>

<EqualUnits>

          <ExcludingUnits>%</ExcludingUnits>

          <ExcludingUnits>iu</ExcludingUnits>

          <ExcludingUnits>iu/ml</ExcludingUnits>

          <ExcludingUnits>mcg/inh</ExcludingUnits>

          <ExcludingUnits>mEq</ExcludingUnits>

          <ExcludingUnits>mg/inh</ExcludingUnits>

          <ExcludingUnits>u/gm</ExcludingUnits>

          <ExcludingUnits>u/ml</ExcludingUnits>

          <ConvertingUnits>

               <Units>gm/tablet</Units>

               <MultiplyingFactor>1000</MultiplyingFactor>

          </ConvertingUnits>

          <ConvertingUnits>

               <Units>gm/15ml</Units>

               <MultiplyingFactor>66.66</MultiplyingFactor>

          </ConvertingUnits>

          <ConvertingUnits>

               <Units>gm/50ml</Units>

               <MultiplyingFactor>20</MultiplyingFactor>

          </ConvertingUnits>

          <ConvertingUnits>

               <Units>mcg/tablet</Units>

               <MultiplyingFactor>0.001</MultiplyingFactor>

          </ConvertingUnits>

          <ConvertingUnits>

               <Units>mcg/ml</Units>

               <MultiplyingFactor>0.001</MultiplyingFactor>

          </ConvertingUnits>

          <ConvertingUnits>

               <Units>mg/0.5ml</Units>

               <MultiplyingFactor>2</MultiplyingFactor>

          </ConvertingUnits>

          <ConvertingUnits>

               <Units>mg/15ml</Units>

               <MultiplyingFactor>0.066</MultiplyingFactor>

          </ConvertingUnits>

          <ConvertingUnits>

               <Units>mg/5ml</Units>

               <MultiplyingFactor>0.2</MultiplyingFactor>

          </ConvertingUnits>

     </UnitValues>

</ValueMetadata>

...

<?xml version="1.0"?>

<ValueMetadata>

      <Version>3     <Version>3.02</Version>

      <CreationDateTime>01     <CreationDateTime>01/26/2011 00:00:00</CreationDateTime>

<TestID>MED     <TestID>MED:FREQ</TestID>

<TestName>Medication      <TestName>Medication Frequency</TestName>

<DataType>Enum<     <DataType>Enum</DataType>

<Flagstouse><     <Flagstouse></Flagstouse>

<Oktousevalues>N<     <Oktousevalues>N</Oktousevalues>

<EnumValues>     <EnumValues>

<Val           <Val description="Before meals">AC</Val>

<Val           <Val description="Twice per day">BID</Val>

<Val           <Val description="Once per day">QD</Val>

<Val           <Val description="Once at night">QHS</Val>

<Val           <Val description="Three times per day">TID</Val>

      <     </EnumValues>

<UnitValues><     <UnitValues></UnitValues>

</ValueMetadata>

...

<?xml version="1.0"?>

<ValueMetadata>

<Version>3     <Version>3.02</Version>

<CreationDateTime>01     <CreationDateTime>01/26/2011 00:00:00</CreationDateTime>

<TestID>MED     <TestID>MED:ROUTE</TestID>

<TestName>Medication      <TestName>Medication Route</TestName>

<DataType>Enum<     <DataType>Enum</DataType>

<Flagstouse><     <Flagstouse></Flagstouse>

<Oktousevalues><     <Oktousevalues></Oktousevalues><EnumValues></EnumValues>

     <EnumValues>

<Val           <Val description="">inhalation</Val>

<Val           <Val description="">injection</Val>

<Val           <Val description="Intravenous">IV</Val>

<Val           <Val description="By Mouth">PO</Val>

<Val           <Val description="By Rectum">PR</Val>

<Val           <Val description="">topical</Val>

<Val           <Val description="">transdermal</Val>

<UnitValues><     </EnumValues>

     <UnitValues></UnitValues>

</ValueMetadata>

PHARMACY ID

<?xml version="1.0"?>

<ValueMetadata>     <ValueMetadata>

<Version>3     <Version>3.02</Version>

<CreationDateTime>01     <CreationDateTime>01/26/2011 00:00:00</CreationDateTime>

<TestID> MED     <TestID>MED:NCPDPID <NCPDPID</TestID>

<TestName>NCPDP      <TestName>NCPDP Provider ID</TestName>

<DataType>String<     <DataType>String</DataType>

<MaxStringLength>255<     <MaxStringLength>255</MaxStringLength>

<Flagstouse><     <Flagstouse></Flagstouse>

<Oktousevalues><     <Oktousevalues></Oktousevalues>

<EnumValues><     <EnumValues></EnumValues>

<UnitValues><     <UnitValues></UnitValues>

</ValueMetadata>


...

<?xml version="1.0"?>

<ValueMetadata>

<Version>3     <Version>3.02</Version>

<CreationDateTime>01     <CreationDateTime>01/26/2011 00:00:00</CreationDateTime>

<TestID>MED     <TestID>MED:PBM</TestID>

<TestName>Pharmacy      <TestName>Pharmacy Benefits Manager Number</TestName>

<DataType>String<     <DataType>String</DataType>

<MaxStringLength>255<     <MaxStringLength>255</MaxStringLength>

<Flagstouse><     <Flagstouse></Flagstouse>

<Oktousevalues><     <Oktousevalues></Oktousevalues>

<EnumValues><     <EnumValues></EnumValues>

<UnitValues><     <UnitValues></UnitValues>

</ValueMetadata>

...

<?xml version="1.0"?>

<ValueMetadata>

<Version>3     <Version>3.02</Version>

<CreationDateTime>01     <CreationDateTime>01/26/2011 00:00:00</CreationDateTime>

<TestID> MED     <TestID>MED:DSPQ <DSPQ</TestID>

<TestName>Quantity      <TestName>Quantity Dispensed</TestName>

<DataType>PosFloat<     <DataType>PosFloat</DataType>

<Flagstouse><     <Flagstouse></Flagstouse>

<Oktousevalues>Y<     <Oktousevalues>Y</Oktousevalues>

<EnumValues><     <EnumValues></EnumValues>

<UnitValues>     <UnitValues>

< NormalUnits >tablets</ NormalUnits >

<          <NormalUnits>tablets</NormalUnits>

     </UnitValues>

</ValueMetadata>

...

<ValueMetadata>

<Version>3.02</Version>

<CreationDateTime>01     <CreationDateTime>01/26/2011 00:00:00</CreationDateTime>

<TestID> MED     <TestID>MED:DDS <DDS</TestID>

<TestName>Number      <TestName>Number of Days Supply Given</TestName>

<DataType>PosFloat<     <DataType>PosFloat</DataType>

<Flagstouse><     <Flagstouse></Flagstouse>

<Oktousevalues>Y<     <Oktousevalues>Y</Oktousevalues>

<EnumValues><     <EnumValues></EnumValues>

<UnitValues>     <UnitValues>

< NormalUnits >days</ NormalUnits >

<          <NormalUnits>days</NormalUnits>

     </UnitValues>

</ValueMetadata>