This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">


From HL7Wiki
Revision as of 14:14, 10 February 2012 by Beuchelt (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Return to Main SOA WG/HSSP Page


hData is a set of specifications that have been developed with ease-of-implementation in mind. hData was first presented to a wider audience within HL7 as the September 2009 meeting in Atlanta, GA. Since then, hData has first been evalauted as a HL7 research project within the ITS working group. The research project culminated in a "For Comment" ballot in January 2011. After a carefull analysis, HL7 decided to standardize hData under the leadership of the SOA working group with ITS and MnM as interested parties.


Standardization Status

hData currently consists of two specifications which have both past the initial peer review:

  • The HL7 hData Record Format V1 specifies how multiple documents (XML and non-XML media types) containing medical data can be hierarchically organized. It allows metadata management per individual document, signature over files, linking of related documents, and defines the items needed to define a complete hData Content Profile (HCP). The current project scope statement is here. The September 2011 DSTU Ballot reconciliation document can be found here.


HData Specification Suite.png

hData requires strong separation of the technical representation and transport technology on the one side, and the clinical content of an electronic health record on the other side. To this end, hData has the concept of hData Content Profiles (HCP), which define what kind of content is represented and transport through hData. It should be note that conceptually CDA and hData are similar in their approach to representing data points in a hierarchical way.

It should be noted that the two specification are not an ITS in the traditional sense, since they do not determine how a logical model is implemented and rendered on the wire. Instead, the HRF organizes existing “exchangeable goods” such as HL7 artifacts, other XML documents, and other media types (including images and other binary data) in a hierarchical structure and provides data pedigree meta data.

hData records may adhere to the content required by an hData Content Profile (HCP): a content profile prescribes the required and optional content a record must provide, and allocates the place for the Section Documents within the hierarchical structure. Note that a single hData record can be compliant with multiple HCPs.

HCP Example

  • HCP1 requires that a given hData record provides all available CCDs for a patient at /ccd within the hData record.
  • HCP2 requires that a given hData record provide simplified allergies and current medication at /simple/allergies and /simple/meds within the hData record.
  • HCP3 requires that available x-ray images in DICOM format are provided at /imaging/x-rays within the hData record.

The following record would be compliant with all three HCPs:

/ -	
  + /ccd
  + /imaging/x-rays
  - /simple  - 
             + /allergies
             - /meds

Other combinations are possible as well.

Relationship with HL7 Framework

The illustration below was created by the ArB and annotated by hData to illustrate how hData fits into the HL7 SAIF:

Relationships among groups and artifacts - hData additions-v3.png

Supporting Documentation

Metadata Mapping

This section is meant to establish a mapping between the IHE XDS Metadata, the CDA R2 Headers, and the hData Metadata model.
IHE XDS Metadata CDA R2 Metadata hData Metadata
availabilityStatus ClinicalDocument.statusCode n/a
authorInstitution /hrf-md:PedigreeInfo/hrf-md:Organization ?
authorPerson /hrf-md:PedigreeInfo/hrf-md:Author 
authorRole /hrf-md:PedigreeInfo/hrf-md:Author/@role
authorSpecialty n/a
classCode ClinicalDocument.code.code (duplicate of XDS/typeCode) n/a
classCodeDisplayName ClinicalDocument.code.displayName (duplicate of XDS/typeCode) n/a
confidentialityCode ClinicalDocument.confidentialityCode being added?
confidentialityCodeDisplayName ClinicalDocument.confidentialityCode n/a
creationTime ClinicalDocument.effectiveTime /hrf-md:DocumentMetaData/hrf-md:RecordDate/hrf-md:CreatedDateTime 
entryUUID n/a n/a
eventCodeList ClinicalDocument.documentationOf(type:ServiceEvent).code.code n/a
eventCodeDisplayNameList ClinicalDocument.documentationOf(type:ServiceEvent).code.displayName n/a
formatCode ClinicalDocument.text.mediaType.code n/a
formatCodeDisplayName ClinicalDocument.text.mediaType.displayName n/a
hash n/a n/a
healthcareFacilityTypeCode ClinicalDocument.componentOf(type:encompassingEncounter).location(type:HealthCareFacility).code.code n/a
healthcareFacilityTypeCodeDisplayName ClinicalDocument.componentOf(type:encompassingEncounter).location(type:HealthCareFacility).code.displayName n/a
legalAuthenticator ClinicalDocument.legalAuthenticator n/a
languageCode ClinicalDocument.languageCode n/a
mimeType ClinicalDocument.text.mediaType.code n/a
parentDocumentRelationship ClinicalDocument.relatedDocument(ParentDocument).code n/a
parentDocumentId ClinicalDocument.relatedDocument(type:ParentDocument).id /hrf-md:DocumentMetaData/hrf-md:LinkedDocuments/hrf-md:Target (no relationship type)
patientId n/a (there is a sourcePatientId, but this isn't the same as the affinity-domain-specific patientId field) n/a
practiceSettingCode ClinicalDocument.componentOf(type:encompassingEncounter).location(type:HealthCareFacility).code.code (duplicate of XDS/practiceSettingCode) n/a
practiceSettingCode DisplayName ClinicalDocument.componentOf(type:encompassingEncounter).location(type:HealthCareFacility).code.displayName (duplicate of XDS/practiceSettingCode) n/a
serviceStartTime ClinicalDocument.documentationOf(type:ServiceEvent).efffectiveTime.low n/a
serviceStopTime ClinicalDocument.documentationOf(type:ServiceEvent).efffectiveTime.high n/a
size   n/a
sourcePatientId ClinicalDocument.recordTarget(type:R_patient).id n/a
sourcePatientInfo ClinicalDocument.recordTarget(type:R_patient) n/a
title ClinicalDocument.title in atom:title
typeCode ClinicalDocument.code.code (duplicate of XDS/classCode) n/a
typeCodeDisplayName ClinicalDocument.code.displayName (duplicate of XDS/classCode) n/a
uniqueId /hrf-md:DocumentMetaData/hrf-md:DocumentId AND atom:id
URI ClinicalDocument.text.reference (ED.reference can be document filename and/or URL) in atom:link

Structured Document Template Design Pilot

hData is part of the Structured Document Template Design Pilot, progress can be tracked on the HData Template Sub Project page. Within this pilot it is demonstrated that hData can be made conceptually equivalent to a CDA based approach: the content of an CDA document and an hData record following the rules of the HRF specification are isomorphic, as long as an hData Content Profile is used that supports all features used in the CDA instance.

Example Schemas for Simplified C32/C83 content

Project hData initially produced a set of simplified schemas as wireformat for content (see here for more information). These schemas were derived from the content of the HITSP C83 profile of the HL7 CCD. It was not created with a rigorously defined algorithm (like greenCDA), since it was only intended to illustrate the potential benefit of simplified wireformats for a number of non-traditional applications, such as low-powered devices, rich internet applications, and other agile projects.

The current hData specification do not require the simplified schemas. Instead, hData offers the HCP methods to define content profiles for domain specific use. The content profiles will use standard HL7 v3 artifacts, but may also use simplified wireformats once they become available (e.g. through greenCDA or neutral mapping).



The hData Content Profile Documentation Template can be found here: File:HData Content Profile Definition Template-20120210.docx

Presentation Material

This presentation was used to illustrate the general security concept for hData.

Overview Videos

The MITRE Corporation has created a set of overview videos here.


Project hData was started by MITRE and is currently hosted on

Historical material from the project is available here.