Ontology Working Group
Space shortcuts
Space Tools
Ontology Working Group OWL

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: formatting and headers for tables illustrating Part 4, info box

...

For instance, if the patient's electronic health record indicates that the patient had the procedure "Tonsillectomy with adenoidectomy," then that fact needs to be recorded in the CRC database using the standard code for that particular procedure as defined in the ONT database. In the case of using the default i2b2 Procedures metadata tree, that code would be "ICD9:28.3". When a researcher makes a query in the user interface for "Tonsillectomy with adenoidectomy," then i2b2 will query the CRC database for all patients who have the code ICD9:28.3 in their data records.


Let's illustrate this brieflyview a high-level illustration of the mechanism behind a typical query. Here's that concept's definition from the procedures table in the ONT (metadata) database:

in the procedures table
Excerpt from Procedures Table in Demo Ontology (I2B2 table in ONT metadata database)
Concept Name, displayed to userConcept Path, a unique identifierother fields
Tonsillectomy with adenoidectomy

\i2b2\Procedures\PRC\ICD9 (Inpatient)\(21-29) Operations on nose, mouth and pharynx\(p28) Operations on tonsils and a~\(p28-3) Tonsillectomy with adenoi~\

...

When the user selects that Concept Name in the user interface, the i2b2 Query Tool associates that with the Concept Path. When running the query, i2b2 looks for that path in the concepts table in the CRC database, which looks like this...

in the concepts table
Excerpt from Concepts Table in Demo Ontology (CONCEPT_DIMENSION table in CRC database)
Concept Path, a unique identifierConcept Code, used in facts tableother fields

\i2b2\Procedures\PRC\ICD9 (Inpatient)\(21-29) Operations on nose, mouth and pharynx\(p28) Operations on tonsils and a~\(p28-3) Tonsillectomy with adenoi~\

ICD9:28.3

...

...and i2b2 associates that Concept Path with the Concept Code for that concept. i2b2 then locates those patients in the facts table in the CRC database that share that Concept Code...

in the facts table
Excerpt from Facts Table in Demo Patient Data (OBSERVATION_FACTS table in CRC database)
Patient IDVisit IDConcept Codeother fields

...

...

...

...

105048

50256

ICD9:28.3

...

...

...

...

...

118953

54877

ICD9:28.3

...

...

...

...

...

267169

39218

ICD9:28.3

...

...

...

...

...

... and reports a count of those patients back to the user at the conclusion of the query. In this illustration, there were 3 patients that had this Concept Code in the facts table, so the user's query for patients with the "Tonsillectomy with adenoidectomy" procedure will return a count of 3 patients.

Info Box

The query mechanism illustrated above applies to most queries, but not all. For more details, see Ontologies 103 – Ontology Table Structure and Query Mechanism.


Info

It's important to understand that each institution will have its own protocols for coding diagnoses, procedures, medications, etc., in the patient electronic health records (aka EHR, as in Cerner or Epic databases), and that these institutional protocols may use standard, non-standard, or proprietary codes. So, when loading patient data into the CRC database for i2b2, it's necessary for the data curators who perform the ETL process (extract-transform-load) to map the codes existing in the patient EHR into the codes that are defined in the i2b2 metadata (ONT database).

For instance, let's say a patient's EHR record includes an NDC code for a medication. And let's say that your institution's i2b2 ontology tree only has an RxNorm code for that particular medication. Then the medication record from the EHR would need to be mapped into a patient record in the i2b2 CRC database in such a way that the ontology's RxNorm code (not the EHR's NDC code) appears in the patient record. If the patient record in the CRC database has the NDC code from the EHR, then it would not be matched in a query, since the i2b2 query would be using the RxNorm code.

...

Ontology Working Group OWL