The PDO request / response message structure is divided into three parts:

  1. pdoheader
  2. Request
  3. Response



For the request message, the <pdoheader> and <request> sections are required, while for the response message, only the <response> section is required.
<i2b2:message_body>
<crc:pdoheader>
<request_type>GetPDOFromInputList_requestType</request_type>
. . .
</crc:pdoheader>
<crc:request>
. . .
</crc:request>
<crc:response>
. . .
</crc:response>
</i2b2:message_body>

Element Name

Description

pdoheader

The header contains a <request_type> element, which will carry the operation name. Each operation name has a specific request / response combination.

The following is a list of supported operation names:

  • getPDO_fromInputList
  • get_observationfact_by_primary_key
  • get_patient_by_primary_key
  • get_event_by_primary_key
  • get_concept_by_primary_key
  • get_observer_by_primary_key

request

The <request> is modeled as an object using a polymorphic approach. All operation specific request objects inherit a base RequestType object as shown in the object model diagram in the next section.

response

The <response> is also modeled as an object using a polymorphic approach. All operation specific response objects inherit a base PDOResponseType object containing a StatusType attribute as shown in the object model diagram in the next section.