wiki:LEGACY - i2b2 - The algorithms applied to importing a PDO

Version 5 (modified by jeff.lusted, 13 years ago) ( diff )

--

Importing a PDO - the algorithms examined in detail

This is work in progress.

The context of this discussion is what happens to a PDO file when you ask the CRC loader to process the file using one of i2b2's web services. There are so many things happening here that throwing some light on the detail is important to understanding the process, and - by reflection - on how to format a PDO suitable for importing in the first place.

A lot of this detail can be gleaned from a careful reading of the CRC documentation, particularly those parts of the CRC Design and CRC Messaging pdf's covering the import use cases. But understanding is not easy. The details have been augmented by code reading the CRC loader.

The PDO (Patient Data Object)

The outline structure of a PDO is given in the following:

<?xml version="1.0" encoding="UTF-8"?>
<pdo:patient_data xmlns:pdo="http://www.i2b2.org/xsd/hive/pdo/1.1/pdo">

   <!-- patient identifier set -->
   <pdo:pid_set>
      <!-- Identifies a patient in a source system -->
      <pid> </pid>
   </pdo:pid_set>
   
   <!-- event identifier set -->
   <pdo:eid_set>
      <!-- Identifies an event/occurrence/visit in a source system -->
      <eid> </eid>
   </pdo:eid_set>
   
   <pdo:patient_set>
      <!-- Basic patient details -->
      <patient> </patient>
   </pdo:patient_set>
   
   <pdo:event_set>
      <!-- Basic event details -->
      <event> </event>
   </pdo:event_set>
   
   <pdo:concept_set>
      <!-- Usually present only on queries -->
      <concept> </concept>
   </pdo:concept_set>
     
   <pdo:observation_set>
      <!-- A single fact concerning one patient -->
      <observation> </observation>
   </pdo:observation_set> 
    
</pdo:patient_data>
Note: See TracWiki for help on using the wiki.