PCC-1/Parameter List

From IHE Wiki
Jump to navigation Jump to search
Parameter List

The message supports specification of the data items listed in the table below as query parameters. The first column of this table provides the name of the parameter. The next column indicates the number of times it may occur in the query. The next column indicates the type of data expected for the query parameter. The next column indicates the vocabulary domain used for coded values. The Consumer column indicates whether the {{{1}}} must supply this parameter. The Source column indicates whether the Clinical Data Source must support this parameter.

A {{{1}}} may supply parameters other than those required by this profile, but must appropriately handle any detected issue alert raised by the Clinical Data Source in its response.

Parameter Name Cardinality Data Type Vocabulary Domain Consumer Source
Query Parameters
careProvisionCode 0..1 CD   O R
careProvisionReason 0..* CD   O O
careRecordTimePeriod 0..1 IVL<TS>   O R
clinicalStatementTimePeriod 0..1 IVL<TS>   O R
includeCarePlanAttachment 0..1 BL   R R
maximumHistoryStatements 0..1 INT   O R
patientAdministrativeGender 0..1 CE AdministrativeGender O R
patientBirthTime 0..1 TS   O R
patientId 1..1 II   R R
patientName 0..1 PN   O R

An example of the query specification is described in the figure below.

 <parameterList>
   <careProvisionCode>
     <value code=' ' displayName=' ' codeSystem=' ' codeSystemName=/>
   </careProvisionCode>
   <careProvisionReason>
     <value code=' ' displayName=' ' codeSystem=' ' codeSystemName=/>
   </careProvisionReason>
   <careRecordTimePeriod>
     <value><low value=' '/><high value=' '/></value>
   </careRecordTimePeriod>
   <clinicalStatementTimePeriod>
     <value><low value=' '/><high value=' '/></value>
   </clinicalStatementTimePeriod>
   <includeCarePlanAttachment><value value='true|false'/></includeCarePlanAttachment>
   <maximumHistoryStatements><value value=' '/></maximumHistoryStatements>
   <patientAdministrativeGender>
     <value code=' ' displayName=' ' 
       codeSystem='2.16.840.1.113883.5.1' codeSystemName='AdministrativeGender'/>
   </patientAdministrativeGender>
   <patientBirthTime><value value=' '/></patientBirthTime>
   <patientId><value root=' ' extension=' '/></patientId>
   <patientName><value></value></patientName>
 </parameterList>
<parameterList>

The <parameterList> element shall be present, and contains the set of query parameters being used in this query.

<careProvisionCode><value code=' ' displayName=' ' codeSystem=' ' codeSystemName=' '/></careProvisionCode>

This <careProvisionCode> may be present. This element describes the information that is being looked for in the <value> element. When the <careProvisionCode> element is not present, it indicates that all relevant results are to be reported up to the maximum number specified in maximumHistoryStatements for each result. To obtain results that have not been coded, the <value> element may be specified with a nullFlavor attribute. There are various flavors of NULL defined in the HL7 NullFlavor vocabulary. A query for results coded using a specific flavor of null shall return all flavors of null that are equal to, or subordinate to that flavor of null within the HL7 hierarchy of null flavors.

A {{{1}}} can restrict the results returned in the query by setting the value attribute of <value> element in the <careProvisionCode> element to a code identifying the clinical data to be returned. A Clinical Data Source can use the codes specified in the sections below to obtain different kinds of clinical data.

A {{{1}}} implementing one of the options for that actor shall be able to issue a query using at least one of the codes listed for that information category as specified in the table below. A Clinical Data Source implementing one of these options must support all codes listed in the table below for that information category.

Information Category Code Returns Template Id
Vital Signs COBSCAT All Vital Signs Vital Signs Observation
Any Code from the Vital Signs Table in the Vital Signs Observation The vital sign identified by the code Vital Signs Observation
Problems and Allergies MEDCCAT All problem entries Problem Entry
CONDLIST All Concern Entries Concern Entry
PROBLIST All Problem Concerns Problem Concern
INTOLIST All Allergy Concerns Allergy and Intolerance Concern
RISKLIST All Risks1 Concern Entry
Diagnostic Results LABCAT All Lab Results Simple Observations
DICAT All Imaging Results Simple Observations
Medications RXCAT All Medications Medications
MEDLIST All Medications Medications
CURMEDLIST All active medications Medications
DISCHMEDLIST Discharge Medications Medications
HISTMEDLIST All Historical Medications Medications
Immunizations IMMUCAT All Immunizations Immunizations
Professional Services PSVCCAT All professional service entries Encounters


Procedures Entry

A {{{1}}} Actor may make requests using other codes not specified above to obtain other clinical data, but these are not guaranteed to be supported by the Clinical Data Source actor.

Note: Clinical Data Sources that are grouped with Content Creators are required to support the vocabulary used within the templates defining the content being created!


Querying for Substances
Often, a query needs to identify a particular substance, such as in the case for a query about the use of a specific medication, immunization, or allergy to a given substance. To support these queries, IHE requires that Clinical Data Sources that can respond to queries using appropriate vocabularies for substances use the following form:
<value code='DRUG|IMMUNIZE|INTOL' displayName=' ' codeSystem='1.3.5.1.4.1.19376.1.5.3.2' codeSystemName='IHEActCode'>
  <qualifier>
    <name code='SUBSTANCE|SUBSTCLASS'/>
    <value code=' ' displayName=' ' codeSystem=' ' codeSystemName=' '/>
  </qualifier>
</value>
<value code='DRUG|IMMUNIZE|INTOL' displayName=' ' codeSystem='1.3.5.1.4.1.19376.1.5.3.2' codeSystemName='IHEActCode'>

The <value> element expresses in the code attribute whether the act being queried for is:

Code Definition
DRUG Treatment with a specific drug
IMMUNIZ Immunization of a patient
INTOL A record of an allergy or intolerance to a substance

One of the values listed above shall be used in the code attribute. The codeSystem shall be recorded as listed above.

<qualifier><name code='SUBSTANCE|SUBSTCLASS'/>

The <qualifier> element further qualifies the concept being requested. The <name> element indicates whether the substance is being described, or the class of substances is being described.

Code Definition
SUBSTANCE The substance used
SUBSTCLASS A class of substances used
<value code=' ' displayName=' ' codeSystem=' ' codeSystemName=' '/>

The <value> element inside the <qualifier> describes the substance or class of substances of interest in the query.

<careProvisionReason><value code=' ' displayName=' ' codeSystem=' ' codeSystemName=' '/></careProvisionReason>

This element identifies the reason why the result was recorded. If specified, only those results which are recorded for the specified reason will be returned.

The <value> element of the <careProvisionReason> element may contain a value identifying a specific condition that was the reason for obtaining the result or prescribing the medication or immunization. A Clinical Data Source actor that chooses to honor this query parameter shall return only those results that were for the indicated reason. Should the Clinical Data Source Actor not support the use of the <careProvisionReason> element, it shall indicate this by raising the appropriate alert as decribed in the expected actions recorded in PCC-1.


For Public Comment For immunizations, there is a desire to identify a specific immunization program that was the reason for the immunization, how might an immunization program be referenced? A code might identify the specific pathogen against which the patient is being immunized, but for public health use, a more discrete question is being asked: What program caused the patient to come in for immunization? This seems to require the ability to query for an identifier.


<careRecordTimePeriod><value><low value=' '/><high value=' '/></value></careRecordTimePeriod>

This element describes the time period over which the results were recorded. A query could for example, request new entries that have been processed for this patient since the last query request. If specified, only those results that were authored within the specified time period will be returned.

<clinicalStatementTimePeriod><value><low value=' '/><high value=' '/></value></clinicalStatementTimePeriod>

This element describes the effective time for the clinical statement. If specified, only those results that were effective within the clinical statement effective time will be returned.

The effectiveTime range of the returned clinical statements shall overlap or be wholely contained within the time range described by the <clinicalStatementTimePeriod> element. In the example below, the clinical statements with the effectiveTime values represented by time ranges B, C and D would be returned, while those with effectiveTime values represented by time ranges A and E would not, because they fall outside of the specified <clinicalStatementTimePeriod> value.

Effective Time and Clinical Statement Time Period
<includeCarePlanAttachment><value value='true|false'/></includeCarePlanAttachment>

The <includeCarePlanAttachment> element shall be sent, and must be set to either true or false depending upon whether care plans should be returned or not. A Data Source may choose not to honor this request when the value is set to true, but must then raise a BUS detected issue alert to indicate that this capability is not supported. Note that many data repositories will not associate a care plan attachment with a specific result.

<maximumHistoryStatements><value value=' '/></maximumHistoryStatements>

This value indicates the maximum number of each type of result that will be returned by the query. No more than the maximum number will be returned. This value is NOT the maximum number of clinical statements returned, rather it is the maximum number of clinical statements returned for individual type of clinical statement specified in the careProvisionCode. Thus, if all results are requested (e.g., all Vital Signs), and maximumHistoryStatements/value/@value = 1, you will receive the most current value for each kind of result requested (e.g., one each of the most recent value for height, weight, blood pressure, tempurature, et cetera).

For Public Comment Does this parameter have any relevance for the Care Manager Actor?


<patientAdministrativeGender>
 <value code=' ' displayName=' ' codeSystem='2.16.840.1.113883.5.1' codeSystemName='AdministrativeGender'/>

The patient gender may be provided in the query. If provided, it serves as a verification of the patient identity. The value must match the patient gender of the patient specified in patientId. If the two values do not match, the Vital Signs Data Source will raise a detected issue alert.

<patientBirthTime><value value=' '/></patientBirthTime>

The patient birth time may be provided in the query. If provided, it serves as a verification of the patient identity. The value must match the patient birth time of the patient specified in patientId. If the two values do not match, the Vital Signs Data Source will raise a detected issue alert.

<patientId><value root=' ' extension=' '/></patientId>

The patient identifier shall be specified in this element. The root and extension attributes shall be present. When used in cross enterprise settings, the root attribute shall the affinity domain identity OID.

Sending a query with a known invalid patientId element can be used to ping a Data Source. For example, setting the root attribute to "0" and omitting the extension attribute should result in a response that raises an ILLEGAL detected issue alert on the patientId field, since the value "0" will never be used as the OID of a patient identity domain. This capability can be used by a Clinical Data Consumer to verify that it can connect to a Data Source when configuration parameters are modified.


<patientName><value></value></patientName>

The patient name may be provided in the query. If provided, it serves as a verification of the patient identity. The value must match the patient name of the patient specified in patientId. If the two values do not match, the Data Source will raise a detected issue alert.