Difference between revisions of "PCC TF-1/QCG"

From IHE Wiki
Jump to navigation Jump to search
m (New page: <noinclude> {{:PCC TF-1/Header|Query for Clinical Guidance (QCG)}} </noinclude> ==Query for Clinical Guidance Integration Profile (QCG) == The Query for Clinical Guidance Profile (QED) su...)
 
Line 5: Line 5:
 
==Query for Clinical Guidance Integration Profile (QCG) ==
 
==Query for Clinical Guidance Integration Profile (QCG) ==
 
The Query for Clinical Guidance Profile (QED) supports integration of Clinical Decision Support into health IT systems. A wide variety of systems often need access to clinical guidance, e.g., for ordering medications, determining appropriate immunizations, diagnostic tests, et cetera. This profile makes it possible for systems to obtain this guidance from other systems within an enterprise.
 
The Query for Clinical Guidance Profile (QED) supports integration of Clinical Decision Support into health IT systems. A wide variety of systems often need access to clinical guidance, e.g., for ordering medications, determining appropriate immunizations, diagnostic tests, et cetera. This profile makes it possible for systems to obtain this guidance from other systems within an enterprise.
 +
 +
A wide class of problems in healthcare are described as being in the area of clinical decision support. However, integration of these capabilities into EHR applications has been slow due to the inability to integrate clinical decision support into HIT applications. Most of the attention on integration of CDS in EHR applications has been in the area of describing the logic that is used to solve the problems. However, the exchange of CDS algorithms has failed to make decision support more readily available.
 +
 +
What is first needed is a common way to integrate CDS into healthcare IT applications to support its use to solve problems such as:
 +
 +
* Drug and Allergy interaction detection
 +
* Forecasting a vaccine schedule
 +
* Identification of patients eligible for participation in reseach or other programs.
 +
* Cost effective selection of antibiotics based on recent institutional data
 +
 +
The key is not in how to express the decision support logic, but to integrate that logic into a healthcare IT application in a standard fashion.
  
 
=== Technical Approach ===
 
=== Technical Approach ===
 
The QCG profile leverages the existing content modeling defined previously in other IHE document profiles and the HL7 CCD implementation guide to deliver information needed by a clinical decision support application.  The clinical decision support application can then respond with information that includes a care plan, and validated clinical information.
 
The QCG profile leverages the existing content modeling defined previously in other IHE document profiles and the HL7 CCD implementation guide to deliver information needed by a clinical decision support application.  The clinical decision support application can then respond with information that includes a care plan, and validated clinical information.
 
  
 
===Actors/Transaction===
 
===Actors/Transaction===
There are two actors in this profile, the Clinical Data Consumer and the Clinical Data Source.
+
There are two actors in this profile, the Care Manager and the Care Plan Suggester.
[[image:qedat.gif|frame|center|Query for Existing Data Actor Diagram]]
+
[[image:qcgat.gif|frame|center|Query for Clinical Guidance Actor Diagram]]
  
The table below lists the transactions for each actor directly involved in the Query for Existing Data Profile. In order to claim support of this Integration Profile, an implementation must perform the required transactions (labeled 'R'). Transactions labeled 'O' are optional. A complete list of options defined by this Integration Profile and that implementations may choose to support is listed below under [[#Options | Options]].
+
The table below lists the transactions for each actor directly involved in the Query for Clinical Guidance Profile. In order to claim support of this Integration Profile, an implementation must perform the required transactions (labeled 'R'). Transactions labeled 'O' are optional. A complete list of options defined by this Integration Profile and that implementations may choose to support is listed below under [[#Options | Options]].
  
 
{|style='background-color:#D9D9D9;' align='center' border='1' cellspacing='0'
 
{|style='background-color:#D9D9D9;' align='center' border='1' cellspacing='0'
Line 23: Line 33:
 
|+Query for Existing Data Actors and Transactions
 
|+Query for Existing Data Actors and Transactions
 
|- style='background-color:#ffffff;' align='center'
 
|- style='background-color:#ffffff;' align='center'
| Clinical Data Consumer
+
| Care Manager
| [[#Query Existing Data| Query Existing Data]]
+
| [[#Care Management Update| Care Management Update]]
 
| R
 
| R
| PCC-1
+
| PCC-10
 
|- style='background-color:#ffffff;' align='center'
 
|- style='background-color:#ffffff;' align='center'
| Clinical Data Source
+
| Care Plan Suggester
| [[#Query Existing Data| Query Existing Data]]
+
| [[#Care Plan Suggestion| Care Plan Suggestion]]
 
| R
 
| R
 
| PCC-1
 
| PCC-1
Line 37: Line 47:
  
 
=== Options ===
 
=== Options ===
{|style='background-color:#ffffff;' border='1' cellspacing='0'
 
!align='center' style='background-color:#cfcfcf;' |Actor
 
!align='center' style='background-color:#cfcfcf;' |Option
 
|+Query for Existing Data Options
 
|-
 
|rowspan='6'|Clinical Data Source
 
|[[#Vital Signs Option|Vital Signs Option]] (1)
 
|-
 
|[[#Problems and Allergies Option|Problems and Allergies Option]] (1)
 
|-
 
|[[#Lab Results Option|Diagnostic Data Option]] (1)
 
|-
 
|[[#Medications Option|Medications Option]] (1)
 
|-
 
|[[#Immunizations Option|Immunizations Option]] (1)
 
|-
 
|[[#Professional Services Option|Professional Services Option]] (1)
 
|-
 
|rowspan='6'|Clinical Data Consumer
 
|[[#Vital Signs Option|Vital Signs Option]] (1)
 
|-
 
|[[#Problems and Allergies Option|Problems and Allergies Option]] (1)
 
|-
 
|[[#Lab Results Option|Diagnostic Data Option]] (1)
 
|-
 
|[[#Medications Option|Medications Option]] (1)
 
|-
 
|[[#Immunizations Option|Immunizations Option]] (1)
 
|-
 
|[[#Professional Services Option|Professional Services Option]] (1)
 
|}
 
 
(1) At least one of these options shall be supported by the Actor
 
  
 
=== Grouping ===
 
=== Grouping ===

Revision as of 13:02, 13 April 2009

Volume 1

HIMSS and RSNA
Integrating the Healthcare Enterprise

IHEBandW.png

IHE Patient Care Coordination

Query for Clinical Guidance (QCG)
Technical Framework Supplement
Volume I

Revision 3.0
2008-2009

Public Comment



Query for Clinical Guidance Integration Profile (QCG)

The Query for Clinical Guidance Profile (QED) supports integration of Clinical Decision Support into health IT systems. A wide variety of systems often need access to clinical guidance, e.g., for ordering medications, determining appropriate immunizations, diagnostic tests, et cetera. This profile makes it possible for systems to obtain this guidance from other systems within an enterprise.

A wide class of problems in healthcare are described as being in the area of clinical decision support. However, integration of these capabilities into EHR applications has been slow due to the inability to integrate clinical decision support into HIT applications. Most of the attention on integration of CDS in EHR applications has been in the area of describing the logic that is used to solve the problems. However, the exchange of CDS algorithms has failed to make decision support more readily available.

What is first needed is a common way to integrate CDS into healthcare IT applications to support its use to solve problems such as:

  • Drug and Allergy interaction detection
  • Forecasting a vaccine schedule
  • Identification of patients eligible for participation in reseach or other programs.
  • Cost effective selection of antibiotics based on recent institutional data

The key is not in how to express the decision support logic, but to integrate that logic into a healthcare IT application in a standard fashion.

Technical Approach

The QCG profile leverages the existing content modeling defined previously in other IHE document profiles and the HL7 CCD implementation guide to deliver information needed by a clinical decision support application. The clinical decision support application can then respond with information that includes a care plan, and validated clinical information.

Actors/Transaction

There are two actors in this profile, the Care Manager and the Care Plan Suggester.

File:Qcgat.gif
Query for Clinical Guidance Actor Diagram

The table below lists the transactions for each actor directly involved in the Query for Clinical Guidance Profile. In order to claim support of this Integration Profile, an implementation must perform the required transactions (labeled 'R'). Transactions labeled 'O' are optional. A complete list of options defined by this Integration Profile and that implementations may choose to support is listed below under Options.

Actor Name Optionality Transaction
Query for Existing Data Actors and Transactions
Care Manager Care Management Update R PCC-10
Care Plan Suggester Care Plan Suggestion R PCC-1

Note 1: The Actor shall support at least one of these transactions.

Options

Grouping

Audit Trail and Node Authentication and Consistent Time

All actors of this profile shall be grouped with either the Secure Node or the Secure Application actor, to ensure the security of the information being exchanged. These actors shall also implement Time Client to ensure that consistent time is maintained across systems.

Retrieve Form for Data Capture

When grouped with an Form Filler or Form Manager actor, a Clinical Data Consumer Actor shall appropriately populate forms with recently gathered clinical data.

Cross Enterprise Document Sharing

A Clincial Data Source actor may be grouped with a Cross Enterprise Document Repository actor. Data gathered from clinical documents submitted to the Document Repository can be a source of information returned by the Clinical Data Source actor. Information returned by the Clinical Data Source shall include references to all documents used in generating the results.

Content Integration Profiles

A Content Creator may be grouped with a Clinical Data Consumer to obtain some or all of the information necessary to create a Medical Summary based on information found in a Clinical Data Source.

A Content Creator may be grouped with a Clinical Data Source. When grouped with a Content Creator, the Clinical Data Source Actor shall respond to queries containing the relevant vocabulary codes used by the Content Creator.


Note: This may create additional vocabulary requirements on applications implementing the Clinical Data Source profile and another IHE content profile!


Patient Identity Cross Referencing and Patient Demographics Query

A clinical data consumer may be grouped with a Patient Identifier Cross-reference Consumer or a Patient Demographics Consumer actor to resolve patient identifiers prior to submitting queries to a Repository.

Within an enterprise, the need to cross-reference patient identifiers may not be necessary. However, once enterprise boundaries are crossed, these identifiers will need to be resolved. In that case either PIX or PDQ shall be used.

Process Flow

Query for Existing Data Process Flow

Drug Safety

Medication to be administered for a radiology procedure may cause an allergic reaction in some patients. The RIS can query the EMR for current problems and allergies and medications using [PCC-1] to enable display of this information to the operator, or to send to a decision support system to determine if this medication is OK to administer.

A CPOE system needs to generate a medication order for a patient for a medication whose dosage is based on weight. Prior to generating the order, the system will query the EMR for the most recent weight measurements of the patient to determine the correct dose using [PCC-1]. The system also request information about the patient's current problems and allergies and medications to perform drug interaction checking before completing the order.

Identifying Qualifying Patients

Decision support systems can query the EMR to obtain specific data elements for a patient, and use that information to determine if the patient qualifies for a clinical trial, or if the visit is one that requires additional reporting.

Upon completion of a visit, the EMR activates a decision support system. The decision support system queries the EMR for patient diagnoses using [PCC-1]. Upon determining that the patient has been diagnosed with Diabetes, the decision support system notifies the EMR that it needs to activate protocols for diabetic care. This use case could be continued as described in the section below.

Actor Definitions

Clinical Data Consumer
A clinical data consumer makes use of clinical patient data.
Clinical Data Source
A Clinical Data Sources maintains patient information about vital signs, problem and allergies, results from diagnostic tests (e.g., Lab, Imaging, or other test results), medications, immunizations or historical or planned visits and procedures.

Transaction Definitions

Query Existing Data
Request information about recent patient information, used to obtain vital signs measurements, problems and allergies, diagnostic results, medications, immunizations, or procedures or visits relevant for a patient. The query may request information about some or all of the above topics, or may request information on a specific topic, or one entered for a specific encounter or date range.

Volume II

HIMSS and RSNA
Integrating the Healthcare Enterprise

IHEBandW.png

IHE Patient Care Coordination

Query for Clinical Guidance (QCG)
Technical Framework Supplement
Volume II

Revision 3.0
2008-2009

Public Comment



Namespaces and Vocabularies

This section lists the namespaces and identifiers defined or referenced by the IHE PCC Technical Framework, and the vocabularies defined or referenced herein.

The following vocabularies are referenced in this document. An extensive list of registered vocabularies can be found at http://www.hl7.org/oid/.

Vocabularies Used
codeSystem codeSystemName Description
1.3.6.1.4.1.19376.1.5.3.1 IHE PCC Template Identifiers This is the root OID for all IHE PCC Templates. A list of PCC templates can be found below in CDA Release 2.0 Content Modules.
1.3.6.1.4.1.19376.1.5.3.2 IHEActCode See IHEActCode Vocabulary below
1.3.6.1.4.1.19376.1.5.3.3 IHE PCC RoleCode See IHERoleCode Vocabulary below
1.3.6.1.4.1.19376.1.5.3.4   Namespace OID used for IHE Extensions to CDA Release 2.0
2.16.840.1.113883.10.20.1 CCD Root OID Root OID used for by ASTM/HL7 Continuity of Care Document
2.16.840.1.113883.5.112 RouteOfAdministration See the HL7 RouteOfAdministration Vocabulary
2.16.840.1.113883.5.1063 SeverityObservation See the HL7 SeverityObservation Vocabulary
2.16.840.1.113883.5.7 ActPriority See the HL7 ActPriority Vocabulary
2.16.840.1.113883.6.1 LOINC Logical Observation Identifier Names and Codes
2.16.840.1.113883.6.96 SNOMED-CT SNOMED Controlled Terminology
2.16.840.1.113883.6.103 ICD-9CM (diagnosis codes) International Classification of Diseases, Clinical Modifiers, Version 9
2.16.840.1.113883.6.104 ICD-9CM (procedure codes) International Classification of Diseases, Clinical Modifiers, Version 9
2.16.840.1.113883.6.26 MEDCIN A classification system from MEDICOMP Systems.
2.16.840.1.113883.6.88 RxNorm RxNorm
2.16.840.1.113883.6.63 FDDC First DataBank Drug Codes
2.16.840.1.113883.6.12 C4 Current Procedure Terminology 4 (CPT-4) codes.
2.16.840.1.113883.6.257 Minimum Data Set for Long Term Care The root OID for Minimum Data Set Answer Lists
1.2.840.10008.2.16.4 DCM DICOM Controlled Terminology; PS 3.16 Content Mapping Resource, Annex D
2.16.840.1.113883.6.24 MDC ISO/IEEE 11073 Medical Device Nomenclature
2.16.840.1.113883.3.26.1.5 NDF-RT National Drug File Reference Terminology (NCI version)
2.16.840.1.113883.11.19465 nuccProviderCodes National Uniform Codes Council Healthcare Provider Terminology
2.16.840.1.113883.6.255.1336 X12DE1336 Insurance Type Code (ASC X12 Data Element 1336)
2.16.840.1.113883.6.256 RadLex RadLex (Radiological Society of North America)

The IHE FormatCode vocabulary is now managed in an Implementation Guide published using FHIR.

This FormatCode vocabulary represents:

  • Code System 1.3.6.1.4.1.19376.1.2.3
  • Value Set 1.3.6.1.4.1.19376.1.2.7.1

IHEActCode Vocabulary

CCD   ASTM/HL7 Continuity of Care Document
CCR   ASTM CCR Implementation Guide

The IHEActCode vocabulary is a small vocabulary of clinical acts that are not presently supported by the HL7 ActCode vocabulary. The root namespace (OID) for this vocabulary is 1.3.6.1.4.1.19376.1.5.3.2. These vocabulary terms are based on the vocabulary and concepts used in the CCR and CCD standards listed above.

Code Description
COMMENT This is the act of commenting on another act.
PINSTRUCT This is the act of providing instructions to a patient regarding the use of medication.
FINSTRUCT This is the act of providing instructions to the supplier regarding the fulfillment of the medication order.
IMMUNIZ The act of immunization of a patient using a particular substance or class of substances identified using a specified vocabulary. Use of this vocabulary term requires the use of either the SUBSTANCE or SUBSTCLASS qualifier described below, along with an identified substance or class of substances.
DRUG The act of treating a patient with a particular substance or class of substances identified using a specified vocabulary. Use of this vocabulary term requires the use of either the SUBSTANCE or SUBSTCLASS qualifier described below, along with an identified substance or class of substances.
INTOL An observation that a patient is somehow intollerant of (e.g., allergic to) a particular substance or class of substances using a specified vocabulary. Use of this vocabulary term requires the use of either the SUBSTANCE or SUBSTCLASS qualifier described below, along with an identified substance or class of substances.
SUBSTANCE A qualifier that identifies the substance used to treat a patient in an immunization or drug treatment act. The substance is expected to be identified using a vocabulary such as RxNORM, SNOMED CT or other similar vocabulary and should be specific enough to identify the ingredients of the substance used.
SUBSTCLASS A qualifier that identifies the class of substance used to treat a patient in an immunization or drug treatment act. The class of substances is expected to be identified using a vocabulary such as NDF-RT, SNOMED CT or other similar vocabulary, and should be broad enough to classify substances by mechanism of action (e.g., Beta Blocker), intended effect (Dieuretic, antibiotic) or ...


For Public Comment What else needs to appear above for SUBSTCLASS?


IHERoleCode Vocabulary

The IHERoleCode vocabulary is a small vocabulary of role codes that are not presently supported by the HL7 Role Code vocabulary. The root namespace (OID) for this vocabulary is 1.3.6.1.4.1.19376.1.5.3.3.

IHERoleCode Vocabulary
Code Description
EMPLOYER The employer of a person.
SCHOOL The school in which a person is enrolled.
AFFILIATED An organization with which a person is affiliated (e.g., a volunteer organization).
PHARMACY The pharmacy a person uses.

HL7 Version 3.0 Content Modules

This section contains content modules based upon the HL7 CDA Release 2.0 Standard, and related standards and/or implementation guides.

CDA Document Content Modules

CDA Header Content Modules

CDA Section Content Modules

This list defines the sections that may appear in a medical document. It is intended to be a comprehensive list of all document sections that are used by any content profile defined in the Patient Care Coordination Technical Framework. All sections shall have a narrative component that may be freely formatted into normal text, lists, tables, or other appropriate human-readable presentations. Additional subsections or entry content modules may be required.





Impressions


CDA and HL7 Version 3 Entry Content Modules

Appendix A - Examples Using PCC Content Profiles

Example documents conforming to each profile can be found on the IHE wiki at the following URLs.

Profile and Content URL
XDS-MS  
 Referral Summary XDSMS Example1
 Discharge Summary XDSMS Example1
XPHR  
 XPHR Content XPHR Example1
 XPHR Update XPHR Example2
(EDR) ED Referral EDR Example
(APS) Antepartum Summary APS Example
(EDES)  
 Triage Note EDES Example1
 ED Nursing Note EDES Example2
 Composite Triage and Nursing Note EDES Example3
 ED Physician Note EDES Example4
(FSA) Functional Status Section FSA Example

Appendix B - Validating CDA Documents using the Framework

Many of the constraints specified by the content modules defined in the PCC Technical Framework can be validated automatically by software. Automated validation is a very desirable capability, as it makes it easier for implementers to test the correctness of their implementations. With regard to validation of the content module, the PCC Technical Framework narrative is the authoritative specification, not any automated software tool. Having said that, it is still very easy to create a validation framework for the IHE PCC Technical Framework using a XML validation tool such as Schematron. Since each content module has a name (the template identifier), any XML instance that reports itself to be of that "class" can be validated by creating assertions that must be true for each constraint indicated for the content module. In the XML representation, the <templateId> element is a child of the element that is claiming conformance to the template named. Thus the general pattern of a Schematron that validates a specific template is shown below:

<schema xmlns="http://www.ascc.net/xml/schematron" xmlns:cda="urn:hl7-org:v3">
  <ns prefix="cda" uri="urn:hl7-org:v3" />
  <pattern name='ReferralSummary'>
    <rule context='*[cda:templateId/@root="1.3.6.1.4.1.19376.1.5.3.1.1.3]"'>
      <!-- one or more assertions made by the content module -->
    </rule>
  </pattern>
</schema>

Validating Documents

For document content modules, the pattern can be extended to support common document content module constraints as shown below:

<schema xmlns="http://www.ascc.net/xml/schematron" xmlns:cda="urn:hl7-org:v3">
  <ns prefix="cda" uri="urn:hl7-org:v3" />
  <pattern name='ReferralSummary'>
    <rule context='*[templateId/@root="1.3.6.1.4.1.19376.1.5.3.1.1.3]"'>
      <!-- Verify that the template id is used on the appropriate type of object -->
      <assert test='../ClinicalDocument'>
        Error: The referral content module can only be used on Clinical Documents.
      </assert>
      <!-- Verify that the parent templateId is also present. -->
      <assert test='templateId[@root="1.3.6.1.4.1.19376.1.5.3.1.1.2"]'>
        Error: The parent template identifier for medical summary is not present.
      </assert>
      <!-- Verify the document type code -->
      <assert test='code[@code = "34133-9"]'>
        Error: The document type code of a referral summary must be
        34133-9 SUMMARIZATION OF EPISODE NOTE.
      </assert>
      <assert test='code[@codeSystem = "2.16.840.1.113883.6.1"]'>
        Error: The document type code must come from the LOINC code 
        system (2.16.840.1.113883.6.1).
      </assert>
      <!-- Verify that all required data elements are present -->
      <assert test='.//templateId[@root = "1.3.6.1.4.1.19376.1.5.3.1.3.1"]'>
        Error: A referral summary must contain a reason for referral.
      </assert>
      <!-- Alert on any missing required if known elements -->
      <assert test='.//templateId[@root = "1.3.6.1.4.1.19376.1.5.3.1.3.8"]'>
        Warning: A referral summary should contain a list of history of past illnesses.
      </assert>
      <!-- Note any missing optional elements -->
      <assert test='.//templateId[@root = "1.3.6.1.4.1.19376.1.5.3.1.3.18"]'>
        Note: This referral summary does not contain the pertinent review of systems.
      </assert>
    </rule>
  </pattern>
</schema>

Validating Sections

The same pattern can be also applied to sections with just a few minor alterations.

<schema xmlns="http://www.ascc.net/xml/schematron" xmlns:cda="urn:hl7-org:v3">
  <ns prefix="cda" uri="urn:hl7-org:v3" />
  <pattern name='ReasonForReferralUncoded'>
    <rule context='*[templateId/@root="1.3.6.1.4.1.19376.1.5.3.1.3.1"]'>
      <!-- Verify that the template id is used on the appropriate type of object -->
      <assert test='section'>
        Error: The coded reason for referral module can only be used on a section.
      </assert>
      <assert test='false'>
        Manual: Manually verify that this section contains narrative providing the
        reason for referral.
      </assert>
      <!-- Verify that the parent templateId is also present. -->
      <assert test='templateId[@root="1.3.6.1.4.1.19376.1.5.3.1.3.1"]'>
        Error: The parent template identifier for the reason for referral 
        module is not present.
      </assert>
      <!-- Verify the section type code -->
      <assert test='code[@code = "42349-1"]'>
        Error: The section type code of the reason for referral section must be 42349-1
        REASON FOR REFERRAL.
      </assert>
      <assert test='code[@codeSystem = "2.16.840.1.113883.6.1"]'>
        Error: The section type code must come from the LOINC code 
        system (2.16.840.1.113883.6.1).
      </assert>
  </pattern>
  <pattern name='ReasonForReferralCoded'>
    <rule context='*[templateId/@root="1.3.6.1.4.1.19376.1.5.3.1.3.2"]'>
      <!-- The parent template will have already verified the type of object -->
      <!-- Verify that the parent templateId is also present. -->
      <assert test='templateId[@root="1.3.6.1.4.1.19376.1.5.3.1.3.1"]'>
        Error: The parent template identifier for the reason for referral 
        module is not present.
      </assert>
      <!-- Don't bother with the section type code, as the parent template caught it -->
      <!-- Verify that all required data elements are present -->
      <assert test='.//templateId[@root = "1.3.6.1.4.1.19376.1.5.3.1.4.13"]'>
        Error: A coded reason for referral section must contain an simple observation.
      </assert>
      <!-- Alert on any missing required if known elements -->
      <!-- Note any missing optional elements -->
    </rule>
  </pattern>
</schema>

A similar pattern can also be followed for Entry and Header content modules, and these are left as an exercise for the reader.

Phases of Validation and Types of Errors

Note that each message in the Schematrons shown above start with a simple text string that indicates whether the message indicates one of the following conditions:

  • An error, e.g., the failure to transmit a required element,
  • A warning, e.g., the failure to transmit a required if known element,
  • A note, e.g., the failure to transmit an optional element.
  • A manual test, e.g., a reminder to manually verify some piece of content.

Schematron supports the capability to group sets of rules into phases by the pattern name, and to specify which phases of validation should be run during processing. To take advantage of this capability, one simply breaks each <pattern> element above up into separate patterns depending upon whether the assertion indicates an error, warning, note or manual test, and then associate each pattern with a different phase. This is shown in the figure below.

<schema xmlns="http://www.ascc.net/xml/schematron" xmlns:cda="urn:hl7-org:v3">
  <ns prefix="cda" uri="urn:hl7-org:v3" />
  <phase id="errors">
    <active pattern="ReasonForReferralUncoded_Errors"/>
    <active pattern="ReasonForReferralCoded_Errors"/>
  </phase>
  <phase id="manual">
    <active pattern="ReasonForReferralUncoded_Manual"/>
  </phase>
  <pattern name='ReasonForReferralUncoded_Errors'>
    <rule context='*[templateId/@root="1.3.6.1.4.1.19376.1.5.3.1.3.1"]'>
      <assert test='section'>
        Error: The coded reason for referral module can only be used on a section.
      </assert>
      <assert test='code[@code = "42349-1"]'>
        Error: The section type code of the reason for referral section must be 42349-1
        REASON FOR REFERRAL.
      </assert>
      <assert test='code[@codeSystem = "2.16.840.1.113883.6.1"]'>
        Error: The section type code must come from the LOINC code 
        system (2.16.840.1.113883.6.1).
      </assert>
    </rule>
  </pattern>
  <pattern name='ReasonForReferralUncoded_Manual'>
    <rule context='*[templateId/@root="1.3.6.1.4.1.19376.1.5.3.1.3.1"]'>
      <assert test='false'>
        Manual: Manually verify that this section contains narrative providing the
        reason for referral.
      </assert>
  </pattern>
  <pattern name='ReasonForReferralCoded_Errors'>
    <rule context='*[templateId/@root="1.3.6.1.4.1.19376.1.5.3.1.3.2"]'>
      <assert test='templateId[@root="1.3.6.1.4.1.19376.1.5.3.1.3.1"]'>
        Error: The parent template identifier for the reason for referral not present.
      </assert>
      <assert test='.//templateId[@root = "1.3.6.1.4.1.19376.1.5.3.1.4.13"]'>
        Error: A coded reason for referral section must contain an simple observation.
      </assert>
    </rule>
  </pattern>
</schema>

Using these simple "templates" for template validation one can simply create a collection of Schematron patterns that can be used to validate the content modules in the PCC Technical Framework. Such Schematrons are expected to be made available as part of the MESA test tools that are provided to IHE Connectathon participants, and which will also be made available to the general public after connectathon.

Appendix C - Extensions to CDA Release 2.0

This section describes extensions to CDA Release 2.0 that are used by the IHE Patient Care Coordination Technical Framework.

IHE PCC Extensions

All Extensions to CDA Release 2.0 created by the IHE PCC Technical Committee are in the namespace urn:ihe:pcc:hl7v3.

The approach used to create extension elements created for the PCC Technical Framework is the same as was used for the HL7 Care Record Summary (see Appendix E) and the ASTM/HL7 Continuity of Care Document (see secion 7.2).

replacementOf

The <replacementOf> extension element is applied to a section appearing in a PHR Update Document to indicate that that section's content should replace that of a previously existing section. The identifier of the previously existing section is given so that the PHR Manager receiving the Update content will know which section to replace. The model for this extension is shown below.

Model for replacementOf

Use of this extension is shown below. The <replacementOf> element appears after all other elements within the <section> element. The <id> element appearing in the <externalDocumentSection> element shall provide the identifier of the section being replaced in the parent document.

Example use of the replacementOf extension
<section>
 <id root=' ' extension=' '/>
 
 <title>Name of the Section</title>
 <text>Text of the section</text>
 <entry></entry>
 <component></component>
 <pcc:replacementOf xmlns:pcc='urn:ihe:pcc:hl7v3'>
   <pcc:externalDocumentSection>
     <pcc:id root='58FCBE50-D4F2-4bda-BC1C-2105B284BBE3'/>
   <pcc:externalDocumentSection/>
 </pcc:replacementOf>
</section>

Extensions Defined Elsewhere used by IHE PCC

Entity Identifiers

There is often a need to record an identifer for an entity so that it can be subsequently referenced. This extension provides a mechnism to store that identifier. The element appears after any <realm>, <typeId> or <templateId> elements, but before all others in the entity where it is used:

<playingEntity classCode='ENT' determinerCode='INSTANCE'>
 <sdtc:id root='1.3.6.4.1.4.1.2835.2' extension='EntityID'/>
   :
   .
</playingEntity>

Patient Identifier

There is a need to record the identifer by which a patient is known to another healthcare provider. This extension provides a role link between the assigned, related or associated entity, and the patient role.

Use of this extension to record the identifier under which the patient is known to a provider is shown below.

Example use of the Patient Identifier Extension
<assignedEntity>
 <id extension='1' root='1.3.6.4.1.4.1.2835.1'/>
 
 <addr>
   <streetAddressLine>21 North Ave</streetAddressLine>
   <city>Burlington</city>
   <state>MA</state>
   <postalCode>01803</postalCode>
   <country>USA</country>
 </addr>
 <telecom value='tel:(999)555-1212' use='WP'/>
 <assignedPerson>
   <name>
     <prefix>Dr.</prefix><given>Bernard</given><family>Wiseman</family><suffix>Sr.</suffix>
   </name>
 </assignedPerson>
 <sdtc:patient xmlns:sdtc='urn:hl7-org:sdtc' >
   <sdtc:id root='1.3.6.4.1.4.1.2835.2' extension='PatientMRN'/>
 </sdtc:patient>
</assignedEntity>

The <patient> element records the link between the related, assigned or associated entity and the patient. The <id> element provides the identifier for the patient. The root attribute of the <id> should be the namespace used for patient identifiers by the entity. The extension attribute of the <id> element shall be the patient's medical record number or other identifier used by the entity to identify the patient.

WSDLs for QCQ