Data reconciliation between ccd and Healthvault types
- Hi to all,
I am able to import CCD objects in Healthvault. Some of the data types were automatically flagged and was "transfered" to the correct HV data types. For instance, problems, medications and procedures were correctly mapped. But some other wasn't, like family history (which, oddly enough, is a list of problems...)
Is it because of semantic incompabilities or only that some types are supported and some aren't.
Is there some documentation regarding this topic.
Thank you.
Answers
- We are currently able to extract and transform the following CCD data types into HealthVault types:
Payers
Advance Directives
Family History
Medications
Immunizations
Vital Signs
Lab Results
Procedures
Problems
Encounters
Allergies
I'm not sure why you're family history isn't being imported. You will need to post a snippet of the family history section so that we can take a look and see if there is a bug in our transform, or if there is something unique that is causing it not to be picked up.- Marked As Answer byalimnemonic Tuesday, July 21, 2009 5:41 PM
All Replies
My understanding is that we only support a subset of all types right now. I'll track down somebody to give you a better answer.
- We are currently able to extract and transform the following CCD data types into HealthVault types:
Payers
Advance Directives
Family History
Medications
Immunizations
Vital Signs
Lab Results
Procedures
Problems
Encounters
Allergies
I'm not sure why you're family history isn't being imported. You will need to post a snippet of the family history section so that we can take a look and see if there is a bug in our transform, or if there is something unique that is causing it not to be picked up.- Marked As Answer byalimnemonic Tuesday, July 21, 2009 5:41 PM
- Thank you guys, I'm impressed by your devotion
We are currently not mapping our value to a coding system, so values for code are fictional. This might be the issue. Also we are not exporting the age at onset, nor the birthdate of the relative
Here is the Family History section. Some info is omitted, but still (I think) follows the CCD standard:
<section> <templateId root="2.16.840.1.113883.10.20.1.4"/> <code codeSystem="2.16.840.1.113883.6.1" code="10157-6"/> <title>Family history</title> <text> <paragraph>Mother (Living)</paragraph> <table border="1" width="100%"> <thead> <tr> <th>Diagnosis</th> </tr> </thead> <tbody> <tr> <td>Asthma, unspec.</td> </tr> </tbody> </table> <paragraph>Father (Living)</paragraph> <table border="1" width="100%"> <thead> <tr> <th>Diagnosis</th> </tr> </thead> <tbody> <tr> <td>Hypertension.</td> </tr> </tbody> </table> <paragraph>Grandfather (Deceased)</paragraph> <table border="1" width="100%"> <thead> <tr> <th>Diagnosis</th> </tr> </thead> <tbody> <tr> <td>Colon Cancer</td> </tr> </tbody> </table> </text> <entry typeCode="DRIV"> <organizer moodCode="EVN" classCode="CLUSTER"> <id root="2.16.840.1.113883.10.20.1.23"/> <statusCode code="completed"/> <subject> <relatedSubject classCode="PRS"> <code codeSystem="2.16.840.1.113883.6.96" code="394857004"/> </relatedSubject> </subject> <component> <observation moodCode="EVN" classCode="OBS"> <templateId root="2.16.840.1.113883.10.20.1.22"/> <id extension="100" root="2.16.840.1.113883.19.5"/> <code codeSystem="2.16.840.1.113883.5.4" code="ASSERTION"/> <statusCode code="completed"/> <value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CD" displayName="Asthma, unspec." codeSystem="2.16.840.1.113883.6.96" code="c47"> <originalText>Asthma, unspec.</originalText> </value> </observation> </component> </organizer> </entry> <entry typeCode="DRIV"> <organizer moodCode="EVN" classCode="CLUSTER"> <id root="2.16.840.1.113883.10.20.1.23"/> <statusCode code="completed"/> <subject> <relatedSubject classCode="PRS"> <code codeSystem="2.16.840.1.113883.6.96" code="394857004"/> </relatedSubject> </subject> <component> <observation moodCode="EVN" classCode="OBS"> <templateId root="2.16.840.1.113883.10.20.1.22"/> <id extension="101" root="2.16.840.1.113883.19.5"/> <code codeSystem="2.16.840.1.113883.5.4" code="ASSERTION"/> <statusCode code="completed"/> <value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CD"/> </observation> </component> </organizer> </entry> <entry typeCode="DRIV"> <organizer moodCode="EVN" classCode="CLUSTER"> <id root="2.16.840.1.113883.10.20.1.23"/> <statusCode code="completed"/> <subject> <relatedSubject classCode="PRS"> <code codeSystem="2.16.840.1.113883.6.96"/> </relatedSubject> </subject> <component> <observation moodCode="EVN" classCode="OBS"> <templateId root="2.16.840.1.113883.10.20.1.22"/> <id extension="102" root="2.16.840.1.113883.19.5"/> <code codeSystem="2.16.840.1.113883.5.4" code="ASSERTION"/> <statusCode code="completed"/> <value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CD"/> </observation> </component> </organizer> </entry> </section>
Thanks for the sample - I'll take a look at this today and update you with my findings.
- I've located the problem. For your family history organizer, you have the templateId specified using the <id> element, but our transforms are expecting this to be a <templateId> element per the CCD Implementaiton Guide (CONF-200):
"CONF-200: A family history organizer (templateId 2.16.840.1.113883.10.20.1.23) SHALL be represented with Organizer"
For the family history to be picked up by HealthVault, you'll need to change this:
<id root="2.16.840.1.113883.10.20.1.23"/>
To be this:
<templateId root="2.16.840.1.113883.10.20.1.23"/>
Let me know if this does not solve your problem.
-Matt W.- Proposed As Answer byMatt Wagner _MSFT_ Tuesday, July 21, 2009 9:40 PM
- Hi Matt,
Yes this was the reason. (And I'm quite ashamed of myself I must say...) Thanks again for your time.
I did some test using the sample files for the CCD schema from HITSP C32. From what I see, you use the display Name for to map to the condition. Is there going to be, in a near future, semantic integration between coding systems ie. By specifing SNOMED CT as a coding system and a given code, "correct" problem will be chosen. In this example, display name was MI, not Myocardial Infarction...
Other issue, Hypertension was not picked up by Healthvault Add items feature. MI and Asthma was
here is the CCD section from the HITSP sample:
<section> <templateId root="2.16.840.1.113883.10.20.1.4" assigningAuthorityName="CCD"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.3.14" assigningAuthorityName="IHE PCC"/> <!-- Family history section template --> <code code="10157-6" codeSystem="2.16.840.1.113883.6.1"/> <title>Family history</title> <text> <paragraph>Father (deceased)</paragraph> <table border="1" width="100%"> <thead> <tr> <th>Diagnosis</th> <th>Age At Onset</th> </tr> </thead> <tbody> <tr> <td>Myocardial Infarction (cause of death)</td> <td>57</td> </tr> <tr> <td>Hypertension</td> <td>40</td> </tr> </tbody> </table> <paragraph>Mother (alive)</paragraph> <table border="1" width="100%"> <thead> <tr> <th>Diagnosis</th> <th>Age At Onset</th> </tr> </thead> <tbody> <tr> <td>Asthma</td> <td>30</td> </tr> </tbody> </table> </text> <entry typeCode="DRIV"> <organizer moodCode="EVN" classCode="CLUSTER"> <templateId root="2.16.840.1.113883.3.88.11.83.18" assigningAuthorityName="HITSP C83"/> <templateId root="2.16.840.1.113883.10.20.1.23" assigningAuthorityName="CCD"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.15" assigningAuthorityName="IHE PCC"/> <!-- Family history organizer template --> <statusCode code="completed"/> <subject> <relatedSubject classCode="PRS"> <code code="FTH" displayName="Father" codeSystemName="HL7 FamilyMember" codeSystem="2.16.840.1.113883.5.111"> <translation code="9947008" displayName="Biological father" codeSystemName="SNOMED" codeSystem="2.16.840.1.113883.6.96"/> </code> <addr/> <telecom/> <subject> <name/> <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1" displayName="Male"/> <birthTime value="1912"/> </subject> </relatedSubject> </subject> <component> <observation classCode="OBS" moodCode="EVN"> <templateId root="2.16.840.1.113883.10.20.1.22"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13" assigningAuthorityName="IHE PCC"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13.3" assigningAuthorityName="IHE PCC"/> <!-- Family history cause of death observation template --> <id root="d42ebf70-5c89-11db-b0de-0800200c9a66"/> <code displayName="Finding reported by subject" code="418799008" codeSystemName="SNOMED" codeSystem="2.16.840.1.113883.6.96"/> <text> <reference value="PtrToValueInsectionText"/> </text> <statusCode code="completed"/> <effectiveTime nullFlavor="UNK"/> <value xsi:type="CD" code="22298006" codeSystem="2.16.840.1.113883.6.96" displayName="MI"/> <entryRelationship typeCode="CAUS"> <observation classCode="OBS" moodCode="EVN"> <id root="6898fae0-5c8a-11db-b0de-0800200c9a66"/> <code code="ASSERTION" codeSystem="2.16.840.1.113883.5.4"/> <statusCode code="completed"/> <value xsi:type="CD" code="419099009" codeSystem="2.16.840.1.113883.6.96" displayName="Dead"/> </observation> </entryRelationship> <entryRelationship typeCode="SUBJ" inversionInd="true"> <observation classCode="OBS" moodCode="EVN"> <templateId root="2.16.840.1.113883.10.20.1.38"/> <!-- Age observation template --> <code code="397659008" codeSystem="2.16.840.1.113883.6.96" displayName="Age"/> <statusCode code="completed"/> <value xsi:type="INT" value="57"/> </observation> </entryRelationship> </observation> </component> <component> <observation classCode="OBS" moodCode="EVN"> <templateId root="2.16.840.1.113883.10.20.1.22"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13" assigningAuthorityName="IHE PCC"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13.3" assigningAuthorityName="IHE PCC"/> <!-- Family history observation template --> <id root="5bfe3ec0-5c8b-11db-b0de-0800200c9a66"/> <code displayName="Finding reported by subject" code="418799008" codeSystemName="SNOMED" codeSystem="2.16.840.1.113883.6.96"/> <text> <reference value="PtrToValueInsectionText"/> </text> <statusCode code="completed"/> <effectiveTime value="19940615"/> <value xsi:type="CD" code="59621000" codeSystem="2.16.840.1.113883.6.96" displayName="HTN"/> <entryRelationship typeCode="SUBJ" inversionInd="true"> <observation classCode="OBS" moodCode="EVN"> <templateId root="2.16.840.1.113883.10.20.1.38"/> <!-- Age observation template --> <code code="397659008" codeSystem="2.16.840.1.113883.6.96" displayName="Age"/> <statusCode code="completed"/> <value xsi:type="INT" value="40"/> </observation> </entryRelationship> </observation> </component> </organizer> </entry> <entry typeCode="DRIV"> <organizer moodCode="EVN" classCode="CLUSTER"> <templateId root="2.16.840.1.113883.3.88.11.83.18" assigningAuthorityName="HITSP C83"/> <templateId root="2.16.840.1.113883.10.20.1.23" assigningAuthorityName="CCD"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.15" assigningAuthorityName="IHE PCC"/> <!-- Family history organizer template --> <statusCode code="completed"/> <subject> <relatedSubject classCode="PRS"> <code code="MTH" displayName="Mother" codeSystemName="HL7 FamilyMember" codeSystem="2.16.840.1.113883.5.111"> <translation code="65656005" displayName="Biological mother" codeSystemName="SNOMED" codeSystem="2.16.840.1.113883.6.96"/> </code> <addr/> <telecom/> <subject> <name/> <administrativeGenderCode code="F" codeSystem="2.16.840.1.113883.5.1" displayName="Female"/> <birthTime value="1912"/> </subject> </relatedSubject> </subject> <component> <observation classCode="OBS" moodCode="EVN"> <templateId root="2.16.840.1.113883.10.20.1.22"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13" assigningAuthorityName="IHE PCC"/> <templateId root="1.3.6.1.4.1.19376.1.5.3.1.4.13.3" assigningAuthorityName="IHE PCC"/> <!-- Family history observation template --> <id root="a13c6160-5c8b-11db-b0de-0800200c9a66"/> <code displayName="Finding reported by subject" code="418799008" codeSystemName="SNOMED" codeSystem="2.16.840.1.113883.6.96"/> <text> <reference value="PtrToValueInsectionText"/> </text> <statusCode code="completed"/> <effectiveTime value="19420615"> <low value="19420615"/> </effectiveTime> <value xsi:type="CD" code="195967001" codeSystem="2.16.840.1.113883.6.96" displayName="Asthma"/> </observation> </component> </organizer> </entry> </section>
Nothing to be ashamed of - CCD can be very difficult to get correct. :-)
In the near future, we do not have plans for the type of code lookup that you described and will just use what is passed in the CCD.
Regarding your question about HTN not being picked up - this looks like a bug on our side. We are only importing a single condition per family member, however, there can definitely be multiple conditions per subject. So in this example, the father's MI was picked up - because it was the first condition listed - but not his HTN. Thanks for reporting this - we've logged this as bug.
-Matt W.

