- Created by Ryan Crichton, last modified on Sep 30, 2013
There are a number of different standards available for exchanging clinical information between disparate systems. For the OpenHIE Shared Health Record (SHR) we need to choose to support the standards that make the most sense for our environment. The chosen standard will be used to help define the format of the message that get exchanged with the SHR via its interface. OpenHIE implementations will focus on middle to low income countries so that we can make the most impact. Therefore, we have some key criteria that will influence the decision of what standards would be the 'best' to support. These are as follows:
- Easily Implementable - The standard should be easy to implement in point of care systems and within the HIE as countries will have to support and maintain these with a low number of skilled informatics specialists.
- Size efficient - The messages should be size efficient due to possible bandwidth restrictions in low resource settings.
- Understandable - The standard should be easily understandable and not require informatics professionals to work with the standard or understand the standard.
- Mature tooling - The standard should have some mature tooling to assist application to implement the needed functionality.
- We can influence the standards - It is important that we as the OpenHIE community can influence the standards development organizations such that the needs of low resource setting can be fully realised and met.
Currently, the community believes that there are a few standards that exist that we should be looking at for use within the SHR, these are:
- Custom profiles of HL7 v2
- Custom profiles of HL7 v3
- IHE profiles
- FHIR profiles
A question has been raised about whether we should support multiple standards. The feeling of the community is that we would eventually like to support multiple standards that are deemed useful. For example, FHIR may be useful in the future for more advanced querying of the SHR data. This brings up the question of external-facing standards (the ones the users of the HIE use) and the internal-facing standards (the ones used between components of the HIE) should always be the same or if we can expect to do transformation between different standards. The feeling of the community has been that we should not do transformations between different standards and rather expose multiple standards interfaces both internally and externally if needed. the reason for this is that it can be complex mapping and transforming messages between formats. This does not mean that we will do no transformation of messages, merely, that the transformation that we expect will be needed are transformation of the base standards to a more conformant form of that same base standards. For example, enriching a HL7 message to contain additional required patient information.
Each of the above standards are described in more detail below:
HL7 v2
Overview
HL7 v2 messages are very popular and are commonly used as a message exchange format. This standard has been around for a long time so it has a large number of freely available tools that developers can make use of. It consists of a large number of message types for many different use cases each with their own structure and defined syntax. For technical interoperability HL7v2 employs the MLLP protocol that build upon TCP sockets. HL7 v2 messages can be encoded in either the ER7 (pipes and bars) format or as XML. The XML format allows HL7 v2 to be used in more current day web services.
How could this standard be used in the SHR
We could make use of a specific message types that we profile ourselves so that the use of them well known. For example we could make use of the ORU_R01 message type to transmit patient encounters by using OBX segments within the message.
Pros/Cons
Pros:
- Mature tooling
- Well known and understood
- Efficient message size
Cons
- Legacy format
- Z segments ruins interoperability
- The base standard need to be profiled to provide actual interoperability between systems
Sample Messages
<?xml version="1.0"?> <ORU_R01 xmlns="urn:hl7-org:v2xml"> <MSH> <MSH.1>|</MSH.1> <MSH.2>^~\&amp;</MSH.2> <MSH.4> <HD.1>363</HD.1> </MSH.4> <MSH.6> <HD.1>Shared Health Record</HD.1> </MSH.6> <MSH.7> <TS.1>20120918160235</TS.1> </MSH.7> <MSH.9> <MSG.1>ORU</MSG.1> <MSG.2>R01</MSG.2> <MSG.3>ORU_R01</MSG.3> </MSH.9> <MSH.10>63357449-6a6c-4faa-af7a-e8843a545c31</MSH.10> <MSH.11> <PT.1>D</PT.1> <PT.2>C</PT.2> </MSH.11> <MSH.12> <VID.1>2.5</VID.1> <VID.2> <CE.1>RWA</CE.1> </VID.2> </MSH.12> <MSH.21> <EI.1>CLSM_V0.83</EI.1> </MSH.21> </MSH> <ORU_R01.PATIENT_RESULT> <ORU_R01.PATIENT> <PID> <PID.3> <CX.1>1234567890456789</CX.1> <CX.5>NID</CX.5> </PID.3> <PID.3> <CX.1>3630NX3X-J</CX.1> <CX.5>OMRS363</CX.5> </PID.3> <PID.5> <XPN.1> <FN.1>Umurwayi</FN.1> </XPN.1> <XPN.2>Test</XPN.2> </PID.5> </PID> <ORU_R01.VISIT> <PV1> <PV1.2>0</PV1.2> <PV1.3> <PL.1>111</PL.1> <PL.4> <HD.1>Ruhunda</HD.1> </PL.4> </PV1.3> <PV1.4>ANC</PV1.4> <PV1.7> <XCN.1>3525410</XCN.1> <XCN.2> <FN.1>doctor</FN.1> </XCN.2> <XCN.3>john</XCN.3> <XCN.13>NID</XCN.13> </PV1.7> <PV1.44> <TS.1>201209180402</TS.1> </PV1.44> </PV1> </ORU_R01.VISIT> </ORU_R01.PATIENT> <ORU_R01.ORDER_OBSERVATION> <ORC> <ORC.1>RE</ORC.1> <ORC.9> <TS.1>201209181602</TS.1> </ORC.9> <ORC.12> <XCN.1>259086</XCN.1> </ORC.12> <ORC.16> <CE.1>Identifier</CE.1> <CE.2>Text</CE.2> <CE.3>Name of Coding System</CE.3> </ORC.16> </ORC> <OBR> <OBR.1>0</OBR.1> <OBR.3> <EI.1>1437</EI.1> </OBR.3> <OBR.4> <CE.2>ANC</CE.2> </OBR.4> <OBR.7> <TS.1>201209180000</TS.1> </OBR.7> <OBR.20>111</OBR.20> <OBR.21>Ruhunda</OBR.21> </OBR> </ORU_R01.ORDER_OBSERVATION> <ORU_R01.ORDER_OBSERVATION> <OBR> <OBR.1>1</OBR.1> <OBR.18>0</OBR.18> <OBR.29> <EIP.2> <EI.3>1437</EI.3> </EIP.2> </OBR.29> </OBR> <ORU_R01.OBSERVATION> <OBX> <OBX.1>0</OBX.1> <OBX.2>CE</OBX.2> <OBX.3> <CE.1>72179-5</CE.1> <CE.2>Given Sulfadoxin Pyrimethamine</CE.2> <CE.3>LOINC</CE.3> </OBX.3> <OBX.5> <CE.1>1065</CE.1> <CE.2>YES</CE.2> <CE.3>RWCS</CE.3> </OBX.5> <OBX.14> <TS.1>20120918160235</TS.1> </OBX.14> </OBX> </ORU_R01.OBSERVATION> <ORU_R01.OBSERVATION> <OBX> <OBX.1>1</OBX.1> <OBX.2>CE</OBX.2> <OBX.3> <CE.1>8406</CE.1> <CE.2>Given Mebendazole</CE.2> <CE.3>RWCS</CE.3> </OBX.3> <OBX.5> <CE.1>1065</CE.1> <CE.2>YES</CE.2> <CE.3>RWCS</CE.3> </OBX.5> <OBX.14> <TS.1>20120918160235</TS.1> </OBX.14> </OBX> </ORU_R01.OBSERVATION> <ORU_R01.OBSERVATION> <OBX> <OBX.1>2</OBX.1> <OBX.2>CE</OBX.2> <OBX.3> <CE.1>72187-8</CE.1> <CE.2>Given tetanus vaccine</CE.2> <CE.3>LOINC</CE.3> </OBX.3> <OBX.5> <CE.1>1065</CE.1> <CE.2>YES</CE.2> <CE.3>RWCS</CE.3> </OBX.5> <OBX.14> <TS.1>20120918160235</TS.1> </OBX.14> </OBX> </ORU_R01.OBSERVATION> <ORU_R01.OBSERVATION> <OBX> <OBX.1>3</OBX.1> <OBX.2>CE</OBX.2> <OBX.3> <CE.1>72180-3</CE.1> <CE.2>Was the woman given iron and folic acid?</CE.2> <CE.3>LOINC</CE.3> </OBX.3> <OBX.5> <CE.1>1065</CE.1> <CE.2>YES</CE.2> <CE.3>RWCS</CE.3> </OBX.5> <OBX.14> <TS.1>20120918160235</TS.1> </OBX.14> </OBX> </ORU_R01.OBSERVATION> <ORU_R01.OBSERVATION> <OBX> <OBX.1>4</OBX.1> <OBX.2>CE</OBX.2> <OBX.3> <CE.1>72178-7</CE.1> <CE.2>Given Mosquito Nets</CE.2> <CE.3>LOINC</CE.3> </OBX.3> <OBX.5> <CE.1>1065</CE.1> <CE.2>YES</CE.2> <CE.3>RWCS</CE.3> </OBX.5> <OBX.14> <TS.1>20120918160235</TS.1> </OBX.14> </OBX> </ORU_R01.OBSERVATION> </ORU_R01.ORDER_OBSERVATION> </ORU_R01.PATIENT_RESULT> </ORU_R01>
HL7 v3
Overview
HL7v3 attempts to solve the semantic interoperability problem by employing the use of a generic reference information model (the RIM) that all HL7v3 message must conform to. This, however, led to the message size growing very large and made HL7v3 difficult to understand and implement due to the generality of the data model. HL7v3 requires that one restricts the base standard down to a usable subset that is to be used. For low resource setting this becomes difficult due to the limited number of informatics experts available to do this and the time required to do so. HL7v3 messages take the form of large structured XML messages.
How could this standard be used in the SHR
Unknown. Would we have to restrict and profile HL7v3 messages for our own use?
Pros/Cons
Pros:
- All messages map to the RIM
Cons
- Very large message size
- HL& v3 needs extensive work by informatics specialists to be usable for a domain
- Not a large amount of tooling support
- Difficult to understand and use
Sample messages
<PRPA_IN403001 xmlns="urn:hl7-org:v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:hl7-org:v3 PRPA_IN403001.xsd"> <id root="1.1.2.3.4.5" extension="5929" assigningAuthorityName="Litware Inc."/> <creationTime value="20050303180027"/> <versionCode code="V3PR1"/> <interactionId root="1.1.6.7.8" extension="PRPA_IN403001" assigningAuthorityName="HL7"/> <processingCode code="D"/> <processingModeCode code="T"/> <acceptAckCode code="AL"/> <receiver typeCode="RCV"> <device classCode="DEV" determinerCode="INSTANCE"> <id root="1.4.7.8.3"/> </device> </receiver> <sender typeCode="SND"> <device classCode="DEV" determinerCode="INSTANCE"> <id root="1.45.6.7.98"/> </device> </sender> <controlActProcess classCode="CACT" moodCode="EVN"> <subject typeCode="SUBJ" contextConductionInd="false"> <encounterEvent classCode="ENC" moodCode="EVN"> <id root="1.56.3.4.7.5" extension="122345" assigningAuthorityName="Maple Hospital Emergency"/> <code code="EMER" codeSystem="2.16.840.1.113883.5.4"/> <statusCode code="active"/> <subject contextControlCode="OP"> <patient classCode="PAT"> <id root="1.56.3.4.7.9" extension="55321" assigningAuthorityName="Maple Hospital Patients"/> <patientPerson classCode="PSN" determinerCode="INSTANCE"> <name> <given>Rob</given> <given>P</given> <family>Young</family> </name> <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1"/> <birthTime value="19800309"/> </patientPerson> </patient> </subject> </encounterEvent> </subject> </controlActProcess> </PRPA_IN403001>
Resources
- HL7 needs a fresh look because V3 has failed: http://www.healthintersections.com.au/?p=476
- HL7 can have a fresh look because v3 succeeded: http://www.healthintersections.com.au/?p=482
IHE Profiles
Overview
Integrating the Healthcare Enterprise (IHE) is an initiative that attempts to improve the way in which health information systems share information. IHE produce technical specifications for health information systems interoperability. Specifications that relate to a particular problem are grouped in an IHE profile. Standardised IHE profiles such as XDS or PIX describe and restrict the use of other standards in order to achieve full system, syntactic and semantic interoperability. IHE profiles are pragmatic as they attempt to make use of existing standard that already have wide adoption so that integration of the IHE profile into existing systems can be simplified. IHE profiles are also very use case specific. This has the benefit of allowing them to clearly specify exactly how semantic interoperability can be achieved, however, it also means that different IHE profiles are needed for each different use case. IHE covers many of the priority use cases, however, it is difficult to cover all use cases due to the many different uses of health system information exchange world-wide.
How could this standard be used in the SHR
We could identify certain profiles that could achieve the goals needed for a SHR (transmitting structured and unstructured clinical information). For example, we could make use of the XDS profile to convey documents and make use of defined CDA document types to ensure semantic interoperability.
We could make use of the IHE Patient Care Coordination technical framework to provide specifications for the specific CDA document types that we support: http://wiki.ihe.net/index.php?title=Patient_Care_Coordination_Technical_Framework
Pros/Cons
Pros:
- Standards are tested in the field
- Highly specified transaction and message formats
Cons
- IHE profiles concentrate on specific use cases and are not by definition general use, you have to implement a profile for each use cases you would like to support
- Each profile could make use of a variety of different standards.
Sample messages
POST /tf6/services/xdsrepositoryb HTTP/1.1 Content-Type: multipart/related; boundary=MIMEBoundaryurn_uuid_566EAD10FEBB55C5A61257193478449; type="application/xop+xml"; start="<0.urn:uuid:566EAD10FEBB55C5A61257193478450@apache.org>"; start-info="application/soap+xml"; action="urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b" User-Agent: Axis2 Host: localhost:5000 --MIMEBoundaryurn_uuid_566EAD10FEBB55C5A61257193478449 Content-Type: application/xop+xml; charset=UTF-8; type="application/soap+xml" Content-Transfer-Encoding: binary Content-ID: <0.urn:uuid:566EAD10FEBB55C5A61257193478450@apache.org> <?xml version='1.0' encoding='UTF-8'?> <soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" xmlns:wsa="http://www.w3.org/2005/08/addressing"> <soapenv:Header> <wsa:To>http://localhost:5000/tf6/services/xdsrepositoryb</wsa:To> <wsa:MessageID soapenv:mustUnderstand="true">urn:uuid:566EAD10FEBB55C5A61257193478400</wsa:MessageID> <wsa:Action>urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b</wsa:Action> </soapenv:Header> <soapenv:Body> <xdsb:ProvideAndRegisterDocumentSetRequest xmlns:xdsb="urn:ihe:iti:xds-b:2007"> <lcm:SubmitObjectsRequest xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:3.0"> <rim:RegistryObjectList xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"> <rim:ExtrinsicObject id="Document01" mimeType="text/plain" objectType="urn:uuid:7edca82f-054d-47f2-a032-9b2a5b5186c1"> <rim:Slot name="creationTime"> <rim:ValueList> <rim:Value>20051224</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="languageCode"> <rim:ValueList> <rim:Value>en-us</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="serviceStartTime"> <rim:ValueList> <rim:Value>200412230800</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="serviceStopTime"> <rim:ValueList> <rim:Value>200412230801</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="sourcePatientId"> <rim:ValueList> <rim:Value>89765a87b^^^&3.4.5&ISO</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="sourcePatientInfo"> <rim:ValueList> <rim:Value>PID-3|pid1^^^&1.2.3&ISO</rim:Value> <rim:Value>PID-5|Doe^John^^^</rim:Value> <rim:Value>PID-7|19560527</rim:Value> <rim:Value>PID-8|M</rim:Value> <rim:Value>PID-11|100 Main St^^Metropolis^Il^44130^USA</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="Physical"/> </rim:Name> <rim:Description/> <rim:Classification classificationScheme="urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d" classifiedObject="Document01" nodeRepresentation="" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_1"> <rim:Slot name="authorPerson"> <rim:ValueList> <rim:Value>^Smitty^Gerald^^^</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorInstitution"> <rim:ValueList> <rim:Value>Cleveland Clinic</rim:Value> <rim:Value>Parma Community</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorRole"> <rim:ValueList> <rim:Value>Attending</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorSpecialty"> <rim:ValueList> <rim:Value>Orthopedic</rim:Value> </rim:ValueList> </rim:Slot> </rim:Classification> <rim:Classification classificationScheme="urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d" classifiedObject="Document01" nodeRepresentation="" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_2"> <rim:Slot name="authorPerson"> <rim:ValueList> <rim:Value>^Dopplemeyer^Sherry^^^</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorInstitution"> <rim:ValueList> <rim:Value>Cleveland Clinic</rim:Value> <rim:Value>Berea Community</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorRole"> <rim:ValueList> <rim:Value>Primary Surgon</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorSpecialty"> <rim:ValueList> <rim:Value>Orthopedic</rim:Value> </rim:ValueList> </rim:Slot> </rim:Classification> <rim:Classification classificationScheme="urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a" classifiedObject="Document01" nodeRepresentation="History and Physical" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_3"> <rim:Slot name="codingScheme"> <rim:ValueList> <rim:Value>Connect-a-thon classCodes</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="History and Physical"/> </rim:Name> </rim:Classification> <rim:Classification classificationScheme="urn:uuid:f4f85eac-e6cb-4883-b524-f2705394840f" classifiedObject="Document01" nodeRepresentation="1.3.6.1.4.1.21367.2006.7.101" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_4"> <rim:Slot name="codingScheme"> <rim:ValueList> <rim:Value>Connect-a-thon confidentialityCodes</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="Clinical-Staff"/> </rim:Name> </rim:Classification> <rim:Classification classificationScheme="urn:uuid:a09d5840-386c-46f2-b5ad-9c3699a4309d" classifiedObject="Document01" nodeRepresentation="CDAR2/IHE 1.0" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_5"> <rim:Slot name="codingScheme"> <rim:ValueList> <rim:Value>Connect-a-thon formatCodes</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="CDAR2/IHE 1.0"/> </rim:Name> </rim:Classification> <rim:Classification classificationScheme="urn:uuid:f33fb8ac-18af-42cc-ae0e-ed0b0bdb91e1" classifiedObject="Document01" nodeRepresentation="Outpatient" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_6"> <rim:Slot name="codingScheme"> <rim:ValueList> <rim:Value>Connect-a-thon healthcareFacilityTypeCodes</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="Outpatient"/> </rim:Name> </rim:Classification> <rim:Classification classificationScheme="urn:uuid:cccf5598-8b07-4b77-a05e-ae952c785ead" classifiedObject="Document01" nodeRepresentation="General Medicine" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_7"> <rim:Slot name="codingScheme"> <rim:ValueList> <rim:Value>Connect-a-thon practiceSettingCodes</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="General Medicine"/> </rim:Name> </rim:Classification> <rim:Classification classificationScheme="urn:uuid:f0306f51-975f-434e-a61c-c59651d33983" classifiedObject="Document01" nodeRepresentation="34108-1" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_8"> <rim:Slot name="codingScheme"> <rim:ValueList> <rim:Value>LOINC</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="Outpatient Evaluation And Management"/> </rim:Name> </rim:Classification> <rim:ExternalIdentifier identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427" value="76cc765a442f410^^^&1.3.6.1.4.1.21367.2005.3.7&ISO" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:ExternalIdentifier" id="id_9" registryObject="Document01"> <rim:Name> <rim:LocalizedString value="XDSDocumentEntry.patientId"/> </rim:Name> </rim:ExternalIdentifier> <rim:ExternalIdentifier identificationScheme="urn:uuid:2e82c1f6-a085-4c72-9da3-8640a32e42ab" value="2009.9.1.2455" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:ExternalIdentifier" id="id_10" registryObject="Document01"> <rim:Name> <rim:LocalizedString value="XDSDocumentEntry.uniqueId"/> </rim:Name> </rim:ExternalIdentifier> </rim:ExtrinsicObject> <rim:RegistryPackage id="SubmissionSet01" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:RegistryPackage"> <rim:Slot name="submissionTime"> <rim:ValueList> <rim:Value>20041225235050</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="Physical"/> </rim:Name> <rim:Description> <rim:LocalizedString value="Annual physical"/> </rim:Description> <rim:Classification classificationScheme="urn:uuid:a7058bb9-b4e4-4307-ba5b-e3f0ab85e12d" classifiedObject="SubmissionSet01" nodeRepresentation="" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_11"> <rim:Slot name="authorPerson"> <rim:ValueList> <rim:Value>^Dopplemeyer^Sherry^^^</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorInstitution"> <rim:ValueList> <rim:Value>Cleveland Clinic</rim:Value> <rim:Value>Berea Community</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorRole"> <rim:ValueList> <rim:Value>Primary Surgon</rim:Value> </rim:ValueList> </rim:Slot> <rim:Slot name="authorSpecialty"> <rim:ValueList> <rim:Value>Orthopedic</rim:Value> </rim:ValueList> </rim:Slot> </rim:Classification> <rim:Classification classificationScheme="urn:uuid:aa543740-bdda-424e-8c96-df4873be8500" classifiedObject="SubmissionSet01" nodeRepresentation="History and Physical" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification" id="id_12"> <rim:Slot name="codingScheme"> <rim:ValueList> <rim:Value>Connect-a-thon contentTypeCodes</rim:Value> </rim:ValueList> </rim:Slot> <rim:Name> <rim:LocalizedString value="History and Physical"/> </rim:Name> </rim:Classification> <rim:ExternalIdentifier identificationScheme="urn:uuid:96fdda7c-d067-4183-912e-bf5ee74998a8" value="2009.9.1.2456" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:ExternalIdentifier" id="id_13" registryObject="SubmissionSet01"> <rim:Name> <rim:LocalizedString value="XDSSubmissionSet.uniqueId"/> </rim:Name> </rim:ExternalIdentifier> <rim:ExternalIdentifier identificationScheme="urn:uuid:554ac39e-e3fe-47fe-b233-965d2a147832" value="1.3.6.1.4.1.21367.2009.1.2.1" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:ExternalIdentifier" id="id_14" registryObject="SubmissionSet01"> <rim:Name> <rim:LocalizedString value="XDSSubmissionSet.sourceId"/> </rim:Name> </rim:ExternalIdentifier> <rim:ExternalIdentifier identificationScheme="urn:uuid:6b5aea1a-874d-4603-a4bc-96a0a7b38446" value="76cc765a442f410^^^&1.3.6.1.4.1.21367.2005.3.7&ISO" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:ExternalIdentifier" id="id_15" registryObject="SubmissionSet01"> <rim:Name> <rim:LocalizedString value="XDSSubmissionSet.patientId"/> </rim:Name> </rim:ExternalIdentifier> </rim:RegistryPackage> <rim:Classification classifiedObject="SubmissionSet01" classificationNode="urn:uuid:a54d6aa5-d40d-43f9-88c5-b4633d873bdd" id="ID_1216346_1" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Classification"/> <rim:Association associationType="urn:oasis:names:tc:ebxml-regrep:AssociationType:HasMember" sourceObject="SubmissionSet01" targetObject="Document01" id="ID_1216346_2" objectType="urn:oasis:names:tc:ebxml-regrep:ObjectType:RegistryObject:Association"> <rim:Slot name="SubmissionSetStatus"> <rim:ValueList> <rim:Value>Original</rim:Value> </rim:ValueList> </rim:Slot> </rim:Association> </rim:RegistryObjectList> </lcm:SubmitObjectsRequest> <xdsb:Document id="Document01"> <xop:Include href="cid:1.urn:uuid:566EAD10FEBB55C5A61257193478499@apache.org" xmlns:xop="http://www.w3.org/2004/08/xop/include"/> </xdsb:Document> </xdsb:ProvideAndRegisterDocumentSetRequest> </soapenv:Body> </soapenv:Envelope> --MIMEBoundaryurn_uuid_566EAD10FEBB55C5A61257193478449 Content-Type: text/plain Content-Transfer-Encoding: binary Content-ID: <1.urn:uuid:566EAD10FEBB55C5A61257193478499@apache.org> This is my document. It is great! --MIMEBoundaryurn_uuid_566EAD10FEBB55C5A61257193478449--
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="../xsl/cda.xsl"?> <ClinicalDocument xmlns="urn:hl7-org:v3" xmlns:voc="urn:hl7-org:v3/voc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:hl7-org:v3 ../schemas/CDA.xsd"> <!-- ******************************************************** CDA Header ******************************************************** --> <typeId root="2.16.840.1.113883.1.3" extension="POCD_HD000040"/> <templateId root="2.16.840.1.113883.3.27.1776"/> <id extension="c266" root="2.16.840.1.113883.19.4"/> <code code="11488-4" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC" displayName="Consultation note"/> <title>Sun Health Hospital care summary for Gregory Thumbstone</title> <effectiveTime value="20060407"/> <confidentialityCode code="N" codeSystem="2.16.840.1.113883.5.25"/> <languageCode code="en-US"/> <setId extension="BB35" root="2.16.840.1.113883.19.7"/> <versionNumber value="2"/> <recordTarget> <patientRole> <id extension="12345" root="2.16.840.1.113883.19.5"/> <telecom use="HP" value="tel:+981 555 3472"/> <telecom use="WP" value="tel:+981 538 9766"/> <patient> <name> <given>Gregory</given> <family>Thumbstone</family> </name> <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1"/> <birthTime value="19390924"/> </patient> <providerOrganization> <id root="2.16.840.1.113883.19.5"/> </providerOrganization> </patientRole> </recordTarget> <author> <time value="2006040714"/> <assignedAuthor> <id extension="600355" root="2.16.840.1.113883.19.5"/> <assignedPerson> <name> <given>William</given> <family>Robertson</family> <suffix>MD</suffix> </name> </assignedPerson> <representedOrganization> <id root="2.16.840.1.113883.19.5"/> </representedOrganization> </assignedAuthor> </author> <custodian> <assignedCustodian> <representedCustodianOrganization> <id root="2.16.840.1.113883.19.5"/> <name>Sun Health Hospital</name> </representedCustodianOrganization> </assignedCustodian> </custodian> <legalAuthenticator> <time value="20060408"/> <signatureCode code="S"/> <assignedEntity> <id extension="600355" root="2.16.840.1.113883.19.5"/> <assignedPerson> <name> <given>William</given> <family>Robertson</family> <suffix>MD</suffix> </name> </assignedPerson> <representedOrganization> <id root="2.16.840.1.113883.19.5"/> </representedOrganization> </assignedEntity> </legalAuthenticator> <relatedDocument typeCode="RPLC"> <parentDocument> <id extension="a123" root="2.16.840.1.113883.19.4"/> <setId extension="BB35" root="2.16.840.1.113883.19.7"/> <versionNumber value="1"/> </parentDocument> </relatedDocument> <componentOf> <encompassingEncounter> <id extension="KPENC1332" root="2.16.840.1.113883.19.6"/> <effectiveTime value="20060407"/> <encounterParticipant typeCode="CON"> <time value="20060407"/> <assignedEntity> <id extension="600355" root="2.16.840.1.113883.19.5"/> <assignedPerson> <name> <given>William</given> <family>Robertson</family> <suffix>MD</suffix> </name> </assignedPerson> <representedOrganization> <id root="2.16.840.1.113883.19.5"/> </representedOrganization> </assignedEntity> </encounterParticipant> <location> <healthCareFacility classCode="DSDLOC"> <code code="GIM" codeSystem="2.16.840.1.113883.5.10588" displayName="General internal medicine clinic"/> </healthCareFacility> </location> </encompassingEncounter> </componentOf> <!-- ******************************************************** CDA Body ******************************************************** --> <component> <structuredBody> <!-- ******************************************************** History of Present Illness section ******************************************************** --> <component> <section> <code code="10164-2" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>History of Present Illness</title> <text> <content styleCode="Bold">Gregory Thumbstone </content> is a 67 year old male referred for further asthma management. Onset of asthma in his <content revised="delete">twenties</content> <content revised="insert">teens</content>. He was hospitalized twice last year, and already twice this year. He has not been able to be weaned off steroids for the past several months. </text> </section> </component> <!-- ******************************************************** Past Medical History section ******************************************************** --> <component> <section> <code code="10153-2" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Past Medical History</title> <text> <list> <item> <content ID="a1">Asthma</content> </item> <item> <content ID="a2">Hypertension</content> </item> <item> <content ID="a3">Osteoarthritis, <content ID="a4">right knee</content> </content> </item> </list> </text> <entry typeCode="DRIV"> <observation classCode="COND" moodCode="EVN"> <code code="195967001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Asthma"> <originalText> <reference value="#a1"/> </originalText> </code> <statusCode code="completed"/> <effectiveTime value="1950"/> <reference typeCode="XCRPT"> <externalObservation> <id root="2.16.840.1.113883.19.1.2765"/> </externalObservation> </reference> </observation> </entry> <entry typeCode="DRIV"> <observation classCode="COND" moodCode="EVN"> <code code="59621000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="HTN"> <originalText> <reference value="#a2"/> </originalText> </code> <statusCode code="completed"/> <reference typeCode="SPRT"> <seperatableInd value="false"/> <externalDocument> <id root="2.16.840.1.113883.19.4.789"/> <text mediaType="multipart/related"> <reference value="HTN.cda"/> </text> <setId root="2.16.840.1.113883.19.7.2465"/> <versionNumber value="1"/> </externalDocument> </reference> <reference typeCode="XCRPT"> <externalObservation> <id root="2.16.840.1.113883.19.1.2005"/> </externalObservation> </reference> </observation> </entry> <entry typeCode="DRIV"> <observation classCode="COND" moodCode="EVN"> <code xsi:type="CD" code="396275006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Osteoarthritis"> <originalText> <reference value="#a3"/> </originalText> </code> <statusCode code="completed"/> <targetSiteCode code="49076000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Knee joint"> <originalText> <reference value="#a4"/> </originalText> <qualifier> <name code="78615007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="with laterality"/> <value code="24028007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="right"/> </qualifier> </targetSiteCode> <reference typeCode="XCRPT"> <externalObservation> <id root="2.16.840.1.113883.19.1.1805"/> </externalObservation> </reference> </observation> </entry> </section> </component> <!-- ******************************************************** Medications section ******************************************************** --> <component> <section> <code code="10160-0" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Medications</title> <text> <list> <item>Theodur 200mg BID</item> <item>Proventil inhaler 2puffs QID PRN</item> <item>Prednisone 20mg qd</item> <item>HCTZ 25mg qd</item> </list> </text> <entry> <substanceAdministration classCode="SBADM" moodCode="EVN"> <text>Theodur 200mg BID</text> <effectiveTime xsi:type="PIVL_TS" institutionSpecified="true"> <period value="12" unit="h"/> </effectiveTime> <routeCode code="PO" codeSystem="2.16.840.1.113883.5.112" codeSystemName="RouteOfAdministration"/> <doseQuantity value="200" unit="mg"/> <consumable> <manufacturedProduct> <manufacturedLabeledDrug> <code code="66493003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Theophylline"/> </manufacturedLabeledDrug> </manufacturedProduct> </consumable> </substanceAdministration> </entry> <entry> <substanceAdministration classCode="SBADM" moodCode="EVN"> <text>Proventil inhaler 2puffs QID PRN</text> <effectiveTime xsi:type="PIVL_TS" institutionSpecified="true"> <period value="6" unit="h"/> </effectiveTime> <priorityCode code="PRN"/> <routeCode code="IPINHL" codeSystem="2.16.840.1.113883.5.112" codeSystemName="RouteOfAdministration" displayName="Inhalation, oral"/> <doseQuantity value="2"/> <consumable> <manufacturedProduct> <manufacturedLabeledDrug> <code code="91143003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Albuterol"/> </manufacturedLabeledDrug> </manufacturedProduct> </consumable> </substanceAdministration> </entry> <entry> <substanceAdministration classCode="SBADM" moodCode="EVN"> <id root="2.16.840.1.113883.19.8.1"/> <text>Prednisone 20mg qd</text> <effectiveTime xsi:type="PIVL_TS" institutionSpecified="true"> <period value="24" unit="h"/> </effectiveTime> <routeCode code="PO" codeSystem="2.16.840.1.113883.5.112" codeSystemName="RouteOfAdministration"/> <doseQuantity value="20" unit="mg"/> <consumable> <manufacturedProduct> <manufacturedLabeledDrug> <code code="10312003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Prednisone preparation"/> </manufacturedLabeledDrug> </manufacturedProduct> </consumable> </substanceAdministration> </entry> <entry> <substanceAdministration classCode="SBADM" moodCode="EVN"> <text>HCTZ 25mg qd</text> <effectiveTime xsi:type="PIVL_TS" institutionSpecified="true"> <period value="24" unit="h"/> </effectiveTime> <routeCode code="PO" codeSystem="2.16.840.1.113883.5.112" codeSystemName="RouteOfAdministration"/> <consumable> <manufacturedProduct> <manufacturedLabeledDrug> <code code="376209006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Hydrochlorothiazide 25mg tablet"/> </manufacturedLabeledDrug> </manufacturedProduct> </consumable> </substanceAdministration> </entry> </section> </component> <!-- ******************************************************** Allergies & Adverse Reactions section ******************************************************** --> <component> <section> <code code="10155-0" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Allergies and Adverse Reactions</title> <text> <list> <item>Penicillin - Hives</item> <item>Aspirin - Wheezing</item> <item>Codeine - Itching and nausea</item> </list> </text> <entry> <observation classCode="OBS" moodCode="EVN"> <code xsi:type="CD" code="247472004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Hives"/> <statusCode code="completed"/> <entryRelationship typeCode="MFST"> <observation classCode="OBS" moodCode="EVN"> <code xsi:type="CD" code="91936005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Allergy to penicillin"/> <statusCode code="completed"/> </observation> </entryRelationship> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="56018004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Wheezing"/> <statusCode code="completed"/> <entryRelationship typeCode="MFST"> <observation classCode="OBS" moodCode="EVN"> <code code="293586001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Allergy to aspirin"/> <statusCode code="completed"/> </observation> </entryRelationship> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="32738000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Pruritis"/> <statusCode code="completed"/> <entryRelationship typeCode="MFST"> <observation classCode="OBS" moodCode="EVN"> <id root="2.16.840.1.113883.19.1.2010"/> <code code="62014003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Adverse reaction to drug"> <qualifier> <name code="246075003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="causative agent"/> <value code="1476002" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="codeine"/> </qualifier> </code> <statusCode code="completed"/> </observation> </entryRelationship> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="73879007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Nausea"/> <statusCode code="completed"/> <entryRelationship typeCode="MFST"> <observation classCode="OBS" moodCode="EVN"> <id root="2.16.840.1.113883.19.1.2010"/> <code code="84100007" codeSystem="2.16.840.1.113883.6.96"/> </observation> </entryRelationship> </observation> </entry> </section> </component> <!-- ******************************************************** Family History section ******************************************************** --> <component> <section> <code code="10157-2" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Family history</title> <text> <list> <item>Father had fatal MI in his early 50's.</item> <item>No cancer or diabetes.</item> </list> </text> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="22298006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="MI"/> <statusCode code="completed"/> <effectiveTime value="1970"/> <subject> <relatedSubject classCode="PRS"> <code code="FTH" codeSystem="2.16.840.1.113883.5.111"/> </relatedSubject> </subject> <entryRelationship typeCode="CAUS"> <observation classCode="OBS" moodCode="EVN"> <code code="399347008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="death"/> <statusCode code="completed"/> <effectiveTime value="1970"/> </observation> </entryRelationship> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN" negationInd="true"> <code code="275937001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Family history of cancer"/> <statusCode code="completed"/> <effectiveTime> <high value="20060407" inclusive="true"/> </effectiveTime> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="160274005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="No family history of diabetes"/> <statusCode code="completed"/> <effectiveTime> <high value="20060407" inclusive="true"/> </effectiveTime> </observation> </entry> </section> </component> <!-- ******************************************************** Social History section ******************************************************** --> <component> <section> <code code="29762-2" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Social History</title> <text> <list> <item>Smoking :: 1 PPD between the ages of 20 and 55, and then he quit.</item> <item>Alcohol :: rare</item> </list> </text> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="266924008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="ex-heavy cigarette smoker (20-39/day)"/> <statusCode code="completed"/> <effectiveTime> <low value="1955"/> <high value="1990"/> </effectiveTime> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="160625004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Date ceased smoking"/> <statusCode code="completed"/> <value xsi:type="TS" value="1990"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="266917007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Trivial drinker - less than 1/day"/> <statusCode code="completed"/> </observation> </entry> </section> </component> <!-- ******************************************************** Physical Exam section ******************************************************** --> <component> <section> <code code="11384-5" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Physical Examination</title> <!-- ******************************************************** Physical Exam - Vital Signs ******************************************************** --> <component> <section> <code code="8716-3" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Vital Signs</title> <text> <table> <tbody> <tr> <th>Date / Time</th> <th>April 7, 2006 14:30</th> <th>April 7, 2006 15:30</th> </tr> <tr> <th>Height</th> <td>177 cm (69.7 in)</td> </tr> <tr> <th>Weight</th> <td>88.0 kg (194.0 lbs)</td> </tr> <tr> <th>BMI</th> <td>28.1 kg/m2</td> </tr> <tr> <th>BSA</th> <td>2.05 m2</td> </tr> <tr> <th>Temperature</th> <td>36.9 C (98.5 F)</td> <td>36.9 C (98.5 F)</td> </tr> <tr> <th>Pulse</th> <td>86 / minute</td> <td>84 / minute</td> </tr> <tr> <th>Rhythm</th> <td>Regular</td> <td>Regular</td> </tr> <tr> <th>Respirations</th> <td>16 / minute, unlabored</td> <td>14 / minute</td> </tr> <tr> <th>Systolic</th> <td>132 mmHg</td> <td>135 mmHg</td> </tr> <tr> <th>Diastolic</th> <td>86 mmHg</td> <td>88 mmHg</td> </tr> <tr> <th>Position / Cuff</th> <td>Left Arm</td> <td>Left Arm</td> </tr> </tbody> </table> </text> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="50373000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Body height measure"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <value xsi:type="PQ" value="1.77" unit="m"> <translation value="69.7" code="[in_I]" codeSystem="2.16.840.1.113883.6.8" codeSystemName="UCUM" /> </value> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="363808001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Body weight measure"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <value xsi:type="PQ" value="88.0" unit="kg"> <translation value="194.0" code="[lb_ap]" codeSystem="2.16.840.1.113883.6.8" codeSystemName="UCUM" /> </value> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="60621009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Body mass index"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <value xsi:type="RTO_PQ_PQ"> <numerator value="28.1" unit="kg"/> <denominator value="1" unit="ar"/> </value> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="301898006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Body surface area"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <value xsi:type="PQ" value="2.05" unit="ar"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="386725007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Body temperature"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <value xsi:type="PQ" value="36.9" unit="Cel"> <translation value="98.5" code="[degF]" codeSystem="2.16.840.1.113883.6.8" codeSystemName="UCUM" /> </value> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="364075005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Heart rate"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <value xsi:type="RTO_PQ_PQ"> <numerator value="86"/> <denominator value="1" unit="min"/> </value> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="364075005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Heart rate"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="RTO_PQ_PQ"> <numerator value="84"/> <denominator value="1" unit="min"/> </value> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="364074009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Regularity of heart rhythm"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <value xsi:type="CD" code="248649006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Heart regular"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="364074009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Regularity of heart rhythm"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="CD" code="248649006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Heart regular"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="86290005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Respiratory rate"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <value xsi:type="RTO_PQ_PQ"> <numerator value="16"/> <denominator value="1" unit="min"/> </value> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="276362002" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Breathing easily"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="86290005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Respiratory rate"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="RTO_PQ_PQ"> <numerator value="14"/> <denominator value="1" unit="min"/> </value> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="251076008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Cuff blood pressure"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <targetSiteCode code="368208006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Left arm"/> <entryRelationship typeCode="COMP"> <observation classCode="OBS" moodCode="EVN"> <code code="271649006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Systolic BP"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="PQ" value="132" unit="mm[Hg]"/> </observation> </entryRelationship> <entryRelationship typeCode="COMP"> <observation classCode="OBS" moodCode="EVN"> <code code="271650006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Diastolic BP"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="PQ" value="86" unit="mm[Hg]"/> </observation> </entryRelationship> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="251076008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Cuff blood pressure"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <targetSiteCode code="368208006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Left arm"/> <entryRelationship typeCode="COMP"> <observation classCode="OBS" moodCode="EVN"> <code code="271649006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Systolic BP"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="PQ" value="135" unit="mm[Hg]"/> </observation> </entryRelationship> <entryRelationship typeCode="COMP"> <observation classCode="OBS" moodCode="EVN"> <code code="271650006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Diastolic BP"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="PQ" value="88" unit="mm[Hg]"/> </observation> </entryRelationship> </observation> </entry> </section> </component> <!-- ******************************************************** Physical Exam - Skin ******************************************************** --> <component> <section> <code code="8709-8" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Skin Exam</title> <text>Erythematous rash, palmar surface, left index finger. <renderMultiMedia referencedObject="MM1"/> </text> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="271807003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Rash"/> <statusCode code="completed"/> <methodCode code="32750006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Inspection"/> <targetSiteCode code="48856004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Skin of palmer surface of index finger"> <qualifier> <name code="78615007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="with laterality"/> <value code="7771000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="left"/> </qualifier> </targetSiteCode> <entryRelationship typeCode="SPRT"> <regionOfInterest classCode="ROIOVL" moodCode="EVN" ID="MM1"> <id root="2.16.840.1.113883.19.3.1"/> <code code="ELLIPSE"/> <value value="3"/> <value value="1"/> <value value="3"/> <value value="7"/> <value value="2"/> <value value="4"/> <value value="4"/> <value value="4"/> <entryRelationship typeCode="SUBJ"> <observationMedia classCode="OBS" moodCode="EVN"> <id root="2.16.840.1.113883.19.2.1"/> <value mediaType="image/gif"> <reference value="lefthand.gif"/> </value> </observationMedia> </entryRelationship> </regionOfInterest> </entryRelationship> </observation> </entry> </section> </component> <!-- ******************************************************** Physical Exam - Lungs ******************************************************** --> <component> <section> <code code="8710-6" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Lungs</title> <text>Clear with no wheeze. Good air flow.</text> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="48348007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Chest clear"/> <statusCode code="completed"/> <methodCode code="37931006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Auscultation"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN" negationInd="true"> <code code="56018004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Wheezing"/> <statusCode code="completed"/> <methodCode code="37931006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Auscultation"/> </observation> </entry> </section> </component> <!-- ******************************************************** Physical Exam - Cardiac ******************************************************** --> <component> <section> <code code="10223-2" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Cardiac</title> <text>RRR with no murmur, no S3, no S4.</text> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="76863003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Normal heart rate"/> <statusCode code="completed"/> <methodCode code="37931006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Auscultation"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN" negationInd="true"> <code code="88610006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="heart murmur"/> <statusCode code="completed"/> <methodCode code="37931006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Auscultation"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN" negationInd="true"> <code code="277455002" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Third heart sound"/> <statusCode code="completed"/> <methodCode code="37931006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Auscultation"/> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="60721002" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Fourth heart sound inaudible"/> <statusCode code="completed"/> <methodCode code="37931006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Auscultation"/> </observation> </entry> </section> </component> </section> </component> <!-- ******************************************************** Labs section ******************************************************** --> <component> <section> <code code="11502-2" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Labs</title> <text> <list> <item>CXR 02/03/1999: Hyperinflated. Normal cardiac silhouette, clear lungs.</item> <item>Peak Flow today: 260 l/m</item> </list> </text> <entry> <observation classCode="OBS" moodCode="EVN"> <code code="282290005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Imaging interpretation"/> <statusCode code="completed"/> <entryRelationship typeCode="COMP"> <observation classCode="OBS" moodCode="EVN"> <id root="2.16.840.1.113883.19.1.3005"/> <code code="249674001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Chest hyperinflated" /> </observation> </entryRelationship> <entryRelationship typeCode="COMP"> <observation classCode="OBS" moodCode="EVN"> <id root="2.16.840.1.113883.19.1.5505"/> <code codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" nullFlavor="OTH"> <originalText>normal cardiac silhouette</originalText> </code> </observation> </entryRelationship> <entryRelationship typeCode="COMP"> <observation classCode="OBS" moodCode="EVN" negationInd="true"> <id root="2.16.840.1.113883.19.1.6675"/> <code codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" nullFlavor="OTH"> <originalText>radiopacities</originalText> </code> </observation> </entryRelationship> <reference typeCode="SPRT"> <externalObservation classCode="DGIMG"> <id root="2.16.840.1.113883.19.1.14"/> <code code="56350004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Chest-X-ray"/> </externalObservation> </reference> </observation> </entry> <entry> <observation classCode="OBS" moodCode="EVN"> <id root="2.16.840.1.113883.19.1.7005"/> <code code="313193002" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Peak flow"/> <statusCode code="completed"/> <effectiveTime value="20060407"/> <value xsi:type="RTO_PQ_PQ"> <numerator value="260" unit="l"/> <denominator value="1" unit="min"/> </value> </observation> </entry> </section> </component> <!-- ******************************************************** In-office Procedure section ******************************************************** --> <component> <section> <code code="29554-3" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>In-office Procedures</title> <text> <list> <item>Suture removal, left forearm.</item> </list> </text> <entry> <procedure classCode="PROC" moodCode="EVN"> <code code="30549001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Suture removal"/> <statusCode code="completed"/> <effectiveTime value="200604071430"/> <targetSiteCode code="66480008" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Left forearm"/> </procedure> </entry> </section> </component> <!-- ******************************************************** Assessment section ******************************************************** --> <component> <section> <code code="11496-7" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Assessment</title> <text> <list> <item>Asthma, with prior smoking history. Difficulty weaning off steroids. Will try gradual taper.</item> <item>Hypertension, well-controlled.</item> <item>Contact dermatitis on finger.</item> </list> </text> <entry> <observation classCode="COND" moodCode="EVN"> <code code="14657009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Established diagnosis"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="CD" code="195967001" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Asthma"> <translation code="49390" codeSystem="2.16.840.1.113883.6.2" codeSystemName="ICD9CM" displayName="ASTHMA W/O STATUS ASTHMATICUS"/> </value> <reference typeCode="ELNK"> <externalObservation classCode="COND"> <id root="2.16.840.1.113883.19.1.35"/> </externalObservation> </reference> </observation> </entry> <entry> <observation classCode="COND" moodCode="EVN"> <code code="14657009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Established diagnosis"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="CD" code="59621000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Essential hypertension"> <translation code="4019" codeSystem="2.16.840.1.113883.6.2" codeSystemName="ICD9CM" displayName="HYPERTENSION NOS"/> </value> <reference typeCode="ELNK"> <externalObservation classCode="COND"> <id root="2.16.840.1.113883.19.1.37"/> </externalObservation> </reference> </observation> </entry> <entry> <observation classCode="COND" moodCode="EVN"> <code code="14657009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Established diagnosis"/> <statusCode code="completed"/> <effectiveTime value="200604071530"/> <value xsi:type="CD" code="40275004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Contact dermatitis"> <translation code="692.9" codeSystem="2.16.840.1.113883.6.2" codeSystemName="ICD9CM" displayName="Contact Dermatitis, NOS"/> </value> <targetSiteCode code="48856004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Skin of palmer surface of index finger"> <qualifier> <name code="78615007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="with laterality"/> <value code="7771000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="left"/> </qualifier> </targetSiteCode> </observation> </entry> </section> </component> <!-- ******************************************************** Plan section ******************************************************** --> <component> <section> <templateId root="2.16.840.1.113883.3.27.354"/> <code code="18776-5" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"/> <title>Plan</title> <text> <list> <item>Complete PFTs with lung volumes.</item> <item>Chem-7 tomorrow.</item> <item>Teach peak flow rate measurement.</item> <item>Decrease prednisone to 20qOD alternating with 18qOD.</item> <item>Hydrocortisone cream to finger BID.</item> <item>RTC 1 week.</item> </list> </text> <entry> <act classCode="ACT" moodCode="INT"> <id/> <code code="23426006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Pulmonary function test"/> <text>Complete PFTs with lung volumes.</text> <entryRelationship typeCode="COMP"> <act classCode="ACT" moodCode="INT"> <code code="252472004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Lung volume test"/> </act> </entryRelationship> </act> </entry> <entry> <observation classCode="OBS" moodCode="INT"> <code code="24320-4" codeSystem="2.16.840.1.113883.6.1" codeSystemName="LOINC"> <originalText>Chem-7</originalText> <translation code="aYU7t6" codeSystem="2.16.840.1.113883.19.278.47" codeSystemName="MyLocalCodeSystem" displayName="Chem7"/> </code> <text>Chem-7 tomorrow</text> <effectiveTime value="20060408"/> </observation> </entry> <entry> <act classCode="ACT" moodCode="INT"> <id/> <code code="223468009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Teaching of skills"> <qualifier> <name code="363702006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="has focus"/> <value code="29893006" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Peak flow rate measurement"/> </qualifier> </code> </act> </entry> <entry> <substanceAdministration classCode="SBADM" moodCode="RQO"> <text>prednisone 20qOD alternating with 18qOD.</text> <routeCode code="PO" codeSystem="2.16.840.1.113883.5.112" codeSystemName="RouteOfAdministration"/> <consumable> <manufacturedProduct> <manufacturedLabeledDrug> <code code="10312003" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Prednisone preparation"/> </manufacturedLabeledDrug> </manufacturedProduct> </consumable> </substanceAdministration> </entry> <entry> <substanceAdministration classCode="SBADM" moodCode="RQO"> <text>Hydrocortisone cream to finger BID.</text> <effectiveTime xsi:type="PIVL_TS" institutionSpecified="true"> <period value="12" unit="h"/> </effectiveTime> <routeCode code="SKIN" codeSystem="2.16.840.1.113883.5.112" codeSystemName="RouteOfAdministration" displayName="Topical application, skin"/> <approachSiteCode code="48856004" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Skin of palmer surface of index finger"> <qualifier> <name code="78615007" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="with laterality"/> <value code="7771000" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="left"/> </qualifier> </approachSiteCode> <consumable> <manufacturedProduct> <manufacturedLabeledDrug> <code code="331646005" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Hydrocortisone cream"/> </manufacturedLabeledDrug> </manufacturedProduct> </consumable> </substanceAdministration> </entry> <entry> <encounter classCode="ENC" moodCode="RQO"> <code code="185389009" codeSystem="2.16.840.1.113883.6.96" codeSystemName="SNOMED CT" displayName="Follow-up visit"/> <effectiveTime> <low value="20060412"/> <high value="20060417"/> </effectiveTime> </encounter> </entry> </section> </component> </structuredBody> </component> </ClinicalDocument>
FHIR
Overview
Fast Healthcare Interoperability Resources (FHIR™) defines a set of 'resources' to represent health and healthcare administration-related information. These resources express granular clinical and administrative concepts that can be electronically exchanged in order to quickly and effectively solve system interoperability problems in healthcare and related processes. The resources cover the basic elements of healthcare - patients, admissions, diagnostic reports, medications and problem lists - with their typical data elements and also support a range of richer and more complex clinical models. The simple direct definitions of the resources are based on thorough requirements gathering, formal analysis and extensive cross-mapping to other relevant standards.
How could this standard be used in the SHR
We could implement a subset of the FHIR standard that would be suitable for our needs. For example, the Document, Observation, AllergyIntolerence, CarePlan etc. resources.
Pros/Cons
Pros:
- Maps to the HL7v3 RIM
- Easy to implement and understand as it REST-based
- Makes use of current best practice techniques
- Learnt from the mistakes of v3
Cons
- The standard is new and is not balloted as of yet
Sample messages
<?xml version="1.0" encoding="UTF-8"?><Observation xmlns="http://hl7.org/fhir"> <text> <status value="generated"/> <div xmlns="http://www.w3.org/1999/xhtml">Sept 17, 2012: Blood pressure 107/65 (normal)</div> </text> <name> <coding> <system value="http://loinc.org"/> <code value="55284-4"/> <display value="Blood pressure systolic and diastolic"/> </coding> </name> <interpretation> <coding> <system value="http://hl7.org/fhir/v2/0078"/> <code value="N"/> <display value="Normal (applies to non-numeric results)"/> </coding> </interpretation> <appliesDateTime value="2012-09-17"/> <status value="final"/> <reliability value="ok"/> <identifier> <system value="urn:ietf:rfc:3986"/> <key value="187e0c12-8dd2-67e2-99b2-bf273c878281"/> </identifier> <subject> <type value="Patient"/> <reference value="patient/@example"/> </subject> <performer> <type value="Practitioner"/> <reference value="practitioner/@example"/> </performer> <component> <name> <coding> <system value="http://loinc.org"/> <code value="8480-6"/> <display value="Systolic blood pressure"/> </coding> </name> <valueQuantity> <value value="107"/> <units value="mm[Hg]"/> </valueQuantity> </component> <component> <name> <coding> <system value="http://loinc.org"/> <code value="8462-4"/> <display value="Diastolic blood pressure"/> </coding> </name> <valueQuantity> <value value="65"/> <units value="mm[Hg]"/> </valueQuantity> </component> </Observation>
Resources
- High level summary: http://hl7.org/implement/standards/fhir/fhir-summary.pdf
Our current reasoning about the choice of standards
It seems from our reading that the use of HL7 v3 in its base form is too difficult and takes a lot of health informatics experts to specify the messages that are needed. So base HL7 v3 does not seem like the way to go for our use case. FHIR looks like a good option for the future but it is currently too new, the tooling support is poor and fact that it is only now entering its trial use period makes it a poor first choice. This leaves us with profiles HL7 v2 which many people are familiar with and have used with success and IHE profiles (perhaps using HL7 v3 CDA for clinical content). With HL7v2 we will have to profile our own messages to gain semantic interoperability and this can be time consuming and would require end users to know how we profile our HL7v2 but the process is known and building and modifying HL7 v2 message is simple due to the age of the standard. IHE profiles have the benefit of being highly specified so that systems can easily interoperate 'out-of-the-box' however, only specific use cases are profiled and if the data we want to collect falls outside of these profiles then this would not work or would require custom specification.
The SHR community believes that we should support IHE profiled CDA documents as the primary mechanism for transmitting clinical content due to OpenHIEs involvement with IHE and due to the wide spread use of CDA at the moment. We also believe that HL7 v2 messages should be supported at a base level to allow legacy systems to communicate in this simpler format until such time as they can be upgraded to support CDA documents.
- No labels