Structured Data Capture, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 3.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/sdc/ and changes regularly. See the Directory of published versions
Page standards status: Trial-use | Maturity Level: 3 |
<StructureMap xmlns="http://hl7.org/fhir">
<id value="SDOHCC-StructureMapHungerVitalSign"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><pre class="fml">
<b>map</b><span style="color: navy"> "</span>http://hl7.org/fhir/uv/sdc/StructureMap/SDOHCC-StructureMapHungerVitalSign<span style="color: navy">" = "</span>SDOHCCStructureMapHungerVitalSign<span style="color: navy">"
</span><span style="color: navy">// </span><span style="color: green">A map that converts an SDOCC hunger vital sign questionnaire to a Bundle of Conditions and Observations</span>
<b>uses</b><span style="color: navy"> "</span><a href="http://hl7.org/fhir/R4/questionnaireresponse.html" title="QuestionnaireResponse">http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse</a><span style="color: navy">" </span><b>alias </b>questionnaireResponse <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> "</span><a href="http://hl7.org/fhir/R4/bundle.html" title="Bundle">http://hl7.org/fhir/StructureDefinition/Bundle</a><span style="color: navy">" </span><b>alias </b>bundle <b>as </b><b>target</b>
<b>uses</b><span style="color: navy"> "</span><a href="http://hl7.org/fhir/R4/observation.html" title="Observation">http://hl7.org/fhir/StructureDefinition/Observation</a><span style="color: navy">" </span><b>alias </b>observation <b>as </b><b>target</b>
<b>uses</b><span style="color: navy"> "</span><a href="http://hl7.org/fhir/R4/condition.html" title="Condition">http://hl7.org/fhir/StructureDefinition/Condition</a><span style="color: navy">" </span><b>alias </b>sdohccCondition <b>as </b><b>target</b>
<b>uses</b><span style="color: navy"> "</span><a href="http://hl7.org/fhir/R4/observation.html" title="Observation">http://hl7.org/fhir/StructureDefinition/Observation</a><span style="color: navy">" </span><b>alias </b>sdohccObservation <b>as </b><b>target</b>
<b>group </b>sdohMapping<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>questionnaireResponse, <b>target</b> <span style="color: maroon">bundle</span><span style="color: navy"> : </span>Bundle<span style="color: navy">)</span><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>bundle.id = <span style="color: blue">'SDOHCC-BundleHungerVitalSignExample'</span> <i>"bundleId"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>bundle.type = <span style="color: blue">'transaction'</span> <i>"bundleType"</i><span style="color: navy">;</span>
src.item<b> as </b><span style="color: maroon">answerItem3</span><b> where </b>linkId = '/88124-3'<span style="color: navy"><b> -> </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.resource = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Observation'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">observation3</span><b> then </b>TransformObservation<span style="color: navy">(</span><span style="color: maroon">src</span><span style="color: navy">, </span><span style="color: maroon">answerItem3</span><span style="color: navy">, </span><span style="color: maroon">observation3</span><span style="color: navy">, </span><span style="color: maroon">entry</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.item<b> where </b>(linkId = '/88124-3') and (answer.value.code = 'LA19952-3')<span style="color: navy"><b> -> </b></span> bundle.entry<b> as </b><span style="color: maroon">entry</span><span style="color: navy">, </span> entry.resource = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Condition'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">condition</span><b> then </b>TransformCondition<span style="color: navy">(</span><span style="color: maroon">src</span><span style="color: navy">, </span><span style="color: maroon">bundle</span><span style="color: navy">, </span><span style="color: maroon">condition</span><span style="color: navy">, </span><span style="color: maroon">entry</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>TransformObservation<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>questionnaireResponse, <b>source</b> <span style="color: maroon">answerItem</span>, <b>target</b> <span style="color: maroon">observation</span><span style="color: navy"> : </span>Observation, <b>target</b> <span style="color: maroon">entry</span><span style="color: navy">)</span><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>entry.request<b> as </b><span style="color: maroon">request</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>request.method = <span style="color: blue">'POST'</span> <i>"obsnRequestMethod"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>request.url = <span style="color: blue">'Observation'</span> <i>"obsnRequestUrl"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"obsnEntryRequest"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>observation.id = <span style="color: blue">'SDOHCC-ObservationResponseHungerVitalSignQuestion3Example'</span><b> then </b>SetObservationFullUrl<span style="color: navy">(</span><span style="color: maroon">observation</span><span style="color: navy">, </span><span style="color: maroon">entry</span><span style="color: navy">)</span> <i>"obsn3Id"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>observation.meta = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Meta'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newMeta</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>newMeta.profile = <span style="color: blue">'http://hl7.org/fhir/us/sdoh-clinicalcare/StructureDefinition/SDOHCC-ObservationScreeningResponse'</span> <i>"obsnMetaProfile"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"obsnMeta"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>observation.status = <span style="color: blue">'final'</span> <i>"obsnStatus"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>observation.category = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style="color: navy">, </span><span style="color: blue">'social-history'</span><span style="color: navy">, </span><span style="color: blue">'Social History'</span><span style="color: navy">)</span> <i>"obsnCatSocialHist"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>observation.category = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'http://terminology.hl7.org/CodeSystem/observation-category'</span><span style="color: navy">, </span><span style="color: blue">'survey'</span><span style="color: navy">, </span><span style="color: blue">'Survey'</span><span style="color: navy">)</span> <i>"obsnCatSurvey"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>observation.category = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes'</span><span style="color: navy">, </span><span style="color: blue">'food-insecurity'</span><span style="color: navy">, </span><span style="color: blue">'Food Insecurity'</span><span style="color: navy">)</span> <i>"obsnCatFoodInsecurity"</i><span style="color: navy">;</span>
answerItem<b> as </b><span style="color: maroon">i</span><span style="color: navy"><b> -> </b></span>observation.code = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'http://loinc.org'</span><span style="color: navy">, </span><span style="color: blue">'88124-3'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">code</span> <i>"obsn3Code"</i><span style="color: navy">;</span>
src.subject<b> as </b><span style="color: maroon">qSubject</span><span style="color: navy"><b> -> </b></span>observation.subject = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Reference'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newReference</span><b> then</b><span style="color: navy"> {
</span> qSubject.reference<b> as </b><span style="color: maroon">qReference</span><span style="color: navy"><b> -> </b></span>newReference.reference = <span style="color: maroon">qReference</span><span style="color: navy">;</span>
qSubject.display<b> as </b><span style="color: maroon">qDisplay</span><span style="color: navy"><b> -> </b></span>newReference.display = <span style="color: maroon">qDisplay</span><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
src.authored<b> as </b><span style="color: maroon">authored</span><span style="color: navy"><b> -> </b></span> observation.effective = <span style="color: maroon">authored</span><span style="color: navy">, </span> observation.issued = <span style="color: maroon">authored</span><span style="color: navy">;</span>
answerItem.answer<b> as </b><span style="color: maroon">answer</span><span style="color: navy"><b> -> </b></span>observation.value = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newCC</span><b> then</b><span style="color: navy"> {
</span> answer.value<b> as </b><span style="color: maroon">coding</span><span style="color: navy"><b> -> </b></span>newCC.coding = <span style="color: maroon">coding</span><b> as </b><span style="color: maroon">newCoding</span><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>observation.derivedFrom = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Reference'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newReference</span><b> then</b><span style="color: navy"> {
</span> src.id<b> as </b><span style="color: maroon">id</span><span style="color: navy"><b> -> </b></span>newReference.reference = <b>append</b><span style="color: navy">(</span><span style="color: blue">'QuestionnaireResponse/'</span><span style="color: navy">, </span><span style="color: maroon">id</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"obsnDerivation"</i><span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>SetObservationFullUrl<span style="color: navy">(</span><b>source</b> <span style="color: maroon">observation</span><span style="color: navy"> : </span>Observation, <b>target</b> <span style="color: maroon">entry</span><span style="color: navy">)</span><span style="color: navy"> {
</span> observation.id<b> as </b><span style="color: maroon">id</span><span style="color: navy"><b> -> </b></span>entry.fullUrl = <b>append</b><span style="color: navy">(</span><span style="color: blue">'http://hl7.org/fhir/us/sdoh-clinicalcare/Observation/'</span><span style="color: navy">, </span><span style="color: maroon">id</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>TransformCondition<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>QuestionnaireResponse, <b>source</b> <span style="color: maroon">bundle</span><span style="color: navy"> : </span>Bundle, <b>target</b> <span style="color: maroon">condition</span><span style="color: navy"> : </span>Condition, <b>target</b> <span style="color: maroon">entry</span><span style="color: navy">)</span><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>condition.id = <span style="color: blue">'SDOHCC-ConditionFoodInsecurityExample'</span><b> then </b>SetConditionFullUrl<span style="color: navy">(</span><span style="color: maroon">condition</span><span style="color: navy">, </span><span style="color: maroon">entry</span><span style="color: navy">)</span> <i>"conditionId"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>condition.meta = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Meta'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newMeta</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>newMeta.profile = <span style="color: blue">'http://hl7.org/fhir/us/sdoh-clinicalcare/StructureDefinition/SDOHCC-Condition'</span> <i>"conditionMetaProfile"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"conditionMeta"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>condition.clinicalStatus = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'http://terminology.hl7.org/CodeSystem/condition-clinical'</span><span style="color: navy">, </span><span style="color: blue">'active'</span><span style="color: navy">, </span><span style="color: blue">'Active'</span><span style="color: navy">)</span> <i>"conditionClinicalStatus"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>condition.verificationStatus = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'http://terminology.hl7.org/CodeSystem/condition-ver-status'</span><span style="color: navy">, </span><span style="color: blue">'unconfirmed'</span><span style="color: navy">, </span><span style="color: blue">'Unconfirmed'</span><span style="color: navy">)</span> <i>"conditionVeriStatus"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>condition.category = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newCC</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>newCC.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newCoding</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>newCoding.system = <span style="color: blue">'http://hl7.org/fhir/us/core/CodeSystem/condition-category'</span> <i>"conditionCatCodingSystemHealthConcern"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>newCoding.code = <span style="color: blue">'health-concern'</span> <i>"conditionCatCodingCodeHealthConcern"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>newCoding.display = <span style="color: blue">'Health Concern'</span> <i>"conditionCatCodingDisplayHealthConcern"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"conditionCatCodingHealthConcern"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"conditionCatHealthConcern"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>condition.category = <b>cc</b><span style="color: navy">(</span><span style="color: blue">'http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes'</span><span style="color: navy">, </span><span style="color: blue">'food-insecurity'</span><span style="color: navy">, </span><span style="color: blue">'Food Insecurity'</span><span style="color: navy">)</span> <i>"conditionCatFoodInsecurity"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>condition.code = <b>create</b><span style="color: navy">(</span><span style="color: blue">'CodeableConcept'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newCodeCC</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>newCodeCC.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newCoding</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>newCoding.system = <span style="color: blue">'http://snomed.info/sct'</span> <i>"conditionCodeCodingSystemFoodInsecurity"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>newCoding.code = <span style="color: blue">'733423003'</span> <i>"conditionCodeCodingCodeFoodInsecurity"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>newCoding.display = <span style="color: blue">'Food insecurity'</span> <i>"conditionCodeCodingDisplayFoodInsecurity"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"conditionCodeCodingFoodInsecurity"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>newCodeCC.coding = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Coding'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newCoding2</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>newCoding2.system = <span style="color: blue">'http://hl7.org/fhir/sid/icd-10-cm'</span> <i>"conditionCodeCodingSystemLackOfFood"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>newCoding2.code = <span style="color: blue">'Z59.4'</span> <i>"conditionCodeCodingCodeLackOfFood"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>newCoding2.display = <span style="color: blue">'Lack of adequate food and safe drinking water'</span> <i>"conditionCodeCodingDisplayLackOfFood"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"conditionCodeCodingLackOfFood"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"conditionCode"</i><span style="color: navy">;</span>
src.authored<b> as </b><span style="color: maroon">authored</span><span style="color: navy"><b> -> </b></span> condition.onset = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Period'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">period</span><span style="color: navy">, </span> period.start = <span style="color: maroon">authored</span><span style="color: navy">;</span>
bundle.entry<b> as </b><span style="color: maroon">entries</span><span style="color: navy"><b> -> </b></span> condition.evidence<b> as </b><span style="color: maroon">evidence</span><span style="color: navy">, </span> evidence.detail = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Reference'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">detailReference</span><b> then</b><span style="color: navy"> {
</span> entries.resource<b> as </b><span style="color: maroon">obs3</span><b> where </b>code.coding.code = '88124-3'<span style="color: navy"><b> -> </b></span>detailReference.reference = <b>reference</b><span style="color: navy">(</span><span style="color: maroon">obs3</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
src.subject<b> as </b><span style="color: maroon">qSubject</span><span style="color: navy"><b> -> </b></span>condition.subject = <b>create</b><span style="color: navy">(</span><span style="color: blue">'Reference'</span><span style="color: navy">)</span><b> as </b><span style="color: maroon">newReference</span><b> then</b><span style="color: navy"> {
</span> qSubject.reference<b> as </b><span style="color: maroon">qReference</span><span style="color: navy"><b> -> </b></span>newReference.reference = <span style="color: maroon">qReference</span><span style="color: navy">;</span>
qSubject.display<b> as </b><span style="color: maroon">qDisplay</span><span style="color: navy"><b> -> </b></span>newReference.display = <span style="color: maroon">qDisplay</span><span style="color: navy">;</span>
<span style="color: navy">}</span><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>entry.request<b> as </b><span style="color: maroon">request</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>request.method = <span style="color: blue">'POST'</span> <i>"conditionRequestMethod"</i><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>request.url = <span style="color: blue">'Condition'</span> <i>"conditionRequestUrl"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"conditionEntryRequest"</i><span style="color: navy">;</span>
<span style="color: navy">}
</span><b>group </b>SetConditionFullUrl<span style="color: navy">(</span><b>source</b> <span style="color: maroon">condition</span><span style="color: navy"> : </span>Condition, <b>target</b> <span style="color: maroon">entry</span><span style="color: navy">)</span><span style="color: navy"> {
</span> condition.id<b> as </b><span style="color: maroon">id</span><span style="color: navy"><b> -> </b></span>entry.fullUrl = <b>append</b><span style="color: navy">(</span><span style="color: blue">'http://hl7.org/fhir/us/sdoh-clinicalcare/Condition/'</span><span style="color: navy">, </span><span style="color: maroon">id</span><span style="color: navy">)</span><span style="color: navy">;</span>
<span style="color: navy">}
</span></pre></div>
</text>
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-wg">
<valueCode value="fhir"/>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm">
<valueInteger value="3">
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom">
<valueCanonical
value="http://hl7.org/fhir/uv/sdc/ImplementationGuide/hl7.fhir.uv.sdc"/>
</extension>
</valueInteger>
</extension>
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
<valueCode value="trial-use">
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom">
<valueCanonical
value="http://hl7.org/fhir/uv/sdc/ImplementationGuide/hl7.fhir.uv.sdc"/>
</extension>
</valueCode>
</extension>
<url
value="http://hl7.org/fhir/uv/sdc/StructureMap/SDOHCC-StructureMapHungerVitalSign"/>
<version value="3.0.0"/>
<name value="SDOHCCStructureMapHungerVitalSign"/>
<title value="SDOHCC StructureMap Hunger Vital Sign"/>
<status value="draft"/>
<experimental value="false"/>
<date value="2023-12-07T23:07:45+00:00"/>
<publisher value="HL7 International / FHIR Infrastructure"/>
<contact>
<name value="HL7 International / FHIR Infrastructure"/>
<telecom>
<system value="url"/>
<value value="http://www.hl7.org/Special/committees/fiwg"/>
</telecom>
</contact>
<contact>
<telecom>
<system value="url"/>
<value value="http://www.hl7.org/Special/committees/fiwg"/>
</telecom>
</contact>
<description
value="A map that converts an SDOCC hunger vital sign questionnaire to a Bundle of Conditions and Observations"/>
<jurisdiction>
<coding>
<system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
<code value="001"/>
<display value="World"/>
</coding>
</jurisdiction>
<structure>
<url
value="http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse"/>
<mode value="source"/>
<alias value="questionnaireResponse"/>
</structure>
<structure>
<url value="http://hl7.org/fhir/StructureDefinition/Bundle"/>
<mode value="target"/>
<alias value="bundle"/>
</structure>
<structure>
<url value="http://hl7.org/fhir/StructureDefinition/Observation"/>
<mode value="target"/>
<alias value="observation"/>
</structure>
<structure>
<url value="http://hl7.org/fhir/StructureDefinition/Condition"/>
<mode value="target"/>
<alias value="sdohccCondition"/>
</structure>
<structure>
<url value="http://hl7.org/fhir/StructureDefinition/Observation"/>
<mode value="target"/>
<alias value="sdohccObservation"/>
</structure>
<group>
<name value="sdohMapping"/>
<typeMode value="none"/>
<input>
<name value="src"/>
<type value="questionnaireResponse"/>
<mode value="source"/>
</input>
<input>
<name value="bundle"/>
<type value="Bundle"/>
<mode value="target"/>
</input>
<rule>
<name value="bundleId"/>
<source>
<context value="src"/>
</source>
<target>
<context value="bundle"/>
<contextType value="variable"/>
<element value="id"/>
<transform value="copy"/>
<parameter>
<valueString value="SDOHCC-BundleHungerVitalSignExample"/>
</parameter>
</target>
</rule>
<rule>
<name value="bundleType"/>
<source>
<context value="src"/>
</source>
<target>
<context value="bundle"/>
<contextType value="variable"/>
<element value="type"/>
<transform value="copy"/>
<parameter>
<valueString value="transaction"/>
</parameter>
</target>
</rule>
<rule>
<name value="item"/>
<source>
<context value="src"/>
<element value="item"/>
<variable value="answerItem3"/>
<condition value="linkId = '/88124-3'"/>
</source>
<target>
<context value="bundle"/>
<contextType value="variable"/>
<element value="entry"/>
<variable value="entry"/>
</target>
<target>
<context value="entry"/>
<contextType value="variable"/>
<element value="resource"/>
<variable value="observation3"/>
<transform value="create"/>
<parameter>
<valueString value="Observation"/>
</parameter>
</target>
<dependent>
<name value="TransformObservation"/>
<variable value="src"/>
<variable value="answerItem3"/>
<variable value="observation3"/>
<variable value="entry"/>
</dependent>
</rule>
<rule>
<name value="item"/>
<source>
<context value="src"/>
<element value="item"/>
<condition
value="(linkId = '/88124-3') and (answer.value.code = 'LA19952-3')"/>
</source>
<target>
<context value="bundle"/>
<contextType value="variable"/>
<element value="entry"/>
<variable value="entry"/>
</target>
<target>
<context value="entry"/>
<contextType value="variable"/>
<element value="resource"/>
<variable value="condition"/>
<transform value="create"/>
<parameter>
<valueString value="Condition"/>
</parameter>
</target>
<dependent>
<name value="TransformCondition"/>
<variable value="src"/>
<variable value="bundle"/>
<variable value="condition"/>
<variable value="entry"/>
</dependent>
</rule>
</group>
<group>
<name value="TransformObservation"/>
<typeMode value="none"/>
<input>
<name value="src"/>
<type value="questionnaireResponse"/>
<mode value="source"/>
</input>
<input>
<name value="answerItem"/>
<mode value="source"/>
</input>
<input>
<name value="observation"/>
<type value="Observation"/>
<mode value="target"/>
</input>
<input>
<name value="entry"/>
<mode value="target"/>
</input>
<rule>
<name value="obsnEntryRequest"/>
<source>
<context value="src"/>
</source>
<target>
<context value="entry"/>
<contextType value="variable"/>
<element value="request"/>
<variable value="request"/>
</target>
<rule>
<name value="obsnRequestMethod"/>
<source>
<context value="src"/>
</source>
<target>
<context value="request"/>
<contextType value="variable"/>
<element value="method"/>
<transform value="copy"/>
<parameter>
<valueString value="POST"/>
</parameter>
</target>
</rule>
<rule>
<name value="obsnRequestUrl"/>
<source>
<context value="src"/>
</source>
<target>
<context value="request"/>
<contextType value="variable"/>
<element value="url"/>
<transform value="copy"/>
<parameter>
<valueString value="Observation"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="obsn3Id"/>
<source>
<context value="src"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="id"/>
<transform value="copy"/>
<parameter>
<valueString
value="SDOHCC-ObservationResponseHungerVitalSignQuestion3Example"/>
</parameter>
</target>
<dependent>
<name value="SetObservationFullUrl"/>
<variable value="observation"/>
<variable value="entry"/>
</dependent>
</rule>
<rule>
<name value="obsnMeta"/>
<source>
<context value="src"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="meta"/>
<variable value="newMeta"/>
<transform value="create"/>
<parameter>
<valueString value="Meta"/>
</parameter>
</target>
<rule>
<name value="obsnMetaProfile"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newMeta"/>
<contextType value="variable"/>
<element value="profile"/>
<transform value="copy"/>
<parameter>
<valueString
value="http://hl7.org/fhir/us/sdoh-clinicalcare/StructureDefinition/SDOHCC-ObservationScreeningResponse"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="obsnStatus"/>
<source>
<context value="src"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="status"/>
<transform value="copy"/>
<parameter>
<valueString value="final"/>
</parameter>
</target>
</rule>
<rule>
<name value="obsnCatSocialHist"/>
<source>
<context value="src"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="category"/>
<transform value="cc"/>
<parameter>
<valueString
value="http://terminology.hl7.org/CodeSystem/observation-category"/>
</parameter>
<parameter>
<valueString value="social-history"/>
</parameter>
<parameter>
<valueString value="Social History"/>
</parameter>
</target>
</rule>
<rule>
<name value="obsnCatSurvey"/>
<source>
<context value="src"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="category"/>
<transform value="cc"/>
<parameter>
<valueString
value="http://terminology.hl7.org/CodeSystem/observation-category"/>
</parameter>
<parameter>
<valueString value="survey"/>
</parameter>
<parameter>
<valueString value="Survey"/>
</parameter>
</target>
</rule>
<rule>
<name value="obsnCatFoodInsecurity"/>
<source>
<context value="src"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="category"/>
<transform value="cc"/>
<parameter>
<valueString
value="http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes"/>
</parameter>
<parameter>
<valueString value="food-insecurity"/>
</parameter>
<parameter>
<valueString value="Food Insecurity"/>
</parameter>
</target>
</rule>
<rule>
<name value="obsn3Code"/>
<source>
<context value="answerItem"/>
<variable value="i"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="code"/>
<variable value="code"/>
<transform value="cc"/>
<parameter>
<valueString value="http://loinc.org"/>
</parameter>
<parameter>
<valueString value="88124-3"/>
</parameter>
</target>
</rule>
<rule>
<name value="subject"/>
<source>
<context value="src"/>
<element value="subject"/>
<variable value="qSubject"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="subject"/>
<variable value="newReference"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<rule>
<name value="reference"/>
<source>
<context value="qSubject"/>
<element value="reference"/>
<variable value="qReference"/>
</source>
<target>
<context value="newReference"/>
<contextType value="variable"/>
<element value="reference"/>
<transform value="copy"/>
<parameter>
<valueId value="qReference"/>
</parameter>
</target>
</rule>
<rule>
<name value="display"/>
<source>
<context value="qSubject"/>
<element value="display"/>
<variable value="qDisplay"/>
</source>
<target>
<context value="newReference"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueId value="qDisplay"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="authored"/>
<source>
<context value="src"/>
<element value="authored"/>
<variable value="authored"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="effective"/>
<transform value="copy"/>
<parameter>
<valueId value="authored"/>
</parameter>
</target>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="issued"/>
<transform value="copy"/>
<parameter>
<valueId value="authored"/>
</parameter>
</target>
</rule>
<rule>
<name value="answer"/>
<source>
<context value="answerItem"/>
<element value="answer"/>
<variable value="answer"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="value"/>
<variable value="newCC"/>
<transform value="create"/>
<parameter>
<valueString value="CodeableConcept"/>
</parameter>
</target>
<rule>
<name value="value"/>
<source>
<context value="answer"/>
<element value="value"/>
<variable value="coding"/>
</source>
<target>
<context value="newCC"/>
<contextType value="variable"/>
<element value="coding"/>
<variable value="newCoding"/>
<transform value="copy"/>
<parameter>
<valueId value="coding"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="obsnDerivation"/>
<source>
<context value="src"/>
</source>
<target>
<context value="observation"/>
<contextType value="variable"/>
<element value="derivedFrom"/>
<variable value="newReference"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<rule>
<name value="id"/>
<source>
<context value="src"/>
<element value="id"/>
<variable value="id"/>
</source>
<target>
<context value="newReference"/>
<contextType value="variable"/>
<element value="reference"/>
<transform value="append"/>
<parameter>
<valueString value="QuestionnaireResponse/"/>
</parameter>
<parameter>
<valueId value="id"/>
</parameter>
</target>
</rule>
</rule>
</group>
<group>
<name value="SetObservationFullUrl"/>
<typeMode value="none"/>
<input>
<name value="observation"/>
<type value="Observation"/>
<mode value="source"/>
</input>
<input>
<name value="entry"/>
<mode value="target"/>
</input>
<rule>
<name value="id"/>
<source>
<context value="observation"/>
<element value="id"/>
<variable value="id"/>
</source>
<target>
<context value="entry"/>
<contextType value="variable"/>
<element value="fullUrl"/>
<transform value="append"/>
<parameter>
<valueString
value="http://hl7.org/fhir/us/sdoh-clinicalcare/Observation/"/>
</parameter>
<parameter>
<valueId value="id"/>
</parameter>
</target>
</rule>
</group>
<group>
<name value="TransformCondition"/>
<typeMode value="none"/>
<input>
<name value="src"/>
<type value="QuestionnaireResponse"/>
<mode value="source"/>
</input>
<input>
<name value="bundle"/>
<type value="Bundle"/>
<mode value="source"/>
</input>
<input>
<name value="condition"/>
<type value="Condition"/>
<mode value="target"/>
</input>
<input>
<name value="entry"/>
<mode value="target"/>
</input>
<rule>
<name value="conditionId"/>
<source>
<context value="src"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="id"/>
<transform value="copy"/>
<parameter>
<valueString value="SDOHCC-ConditionFoodInsecurityExample"/>
</parameter>
</target>
<dependent>
<name value="SetConditionFullUrl"/>
<variable value="condition"/>
<variable value="entry"/>
</dependent>
</rule>
<rule>
<name value="conditionMeta"/>
<source>
<context value="src"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="meta"/>
<variable value="newMeta"/>
<transform value="create"/>
<parameter>
<valueString value="Meta"/>
</parameter>
</target>
<rule>
<name value="conditionMetaProfile"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newMeta"/>
<contextType value="variable"/>
<element value="profile"/>
<transform value="copy"/>
<parameter>
<valueString
value="http://hl7.org/fhir/us/sdoh-clinicalcare/StructureDefinition/SDOHCC-Condition"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="conditionClinicalStatus"/>
<source>
<context value="src"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="clinicalStatus"/>
<transform value="cc"/>
<parameter>
<valueString
value="http://terminology.hl7.org/CodeSystem/condition-clinical"/>
</parameter>
<parameter>
<valueString value="active"/>
</parameter>
<parameter>
<valueString value="Active"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionVeriStatus"/>
<source>
<context value="src"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="verificationStatus"/>
<transform value="cc"/>
<parameter>
<valueString
value="http://terminology.hl7.org/CodeSystem/condition-ver-status"/>
</parameter>
<parameter>
<valueString value="unconfirmed"/>
</parameter>
<parameter>
<valueString value="Unconfirmed"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionCatHealthConcern"/>
<source>
<context value="src"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="category"/>
<variable value="newCC"/>
<transform value="create"/>
<parameter>
<valueString value="CodeableConcept"/>
</parameter>
</target>
<rule>
<name value="conditionCatCodingHealthConcern"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCC"/>
<contextType value="variable"/>
<element value="coding"/>
<variable value="newCoding"/>
<transform value="create"/>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
<rule>
<name value="conditionCatCodingSystemHealthConcern"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString
value="http://hl7.org/fhir/us/core/CodeSystem/condition-category"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionCatCodingCodeHealthConcern"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="health-concern"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionCatCodingDisplayHealthConcern"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Health Concern"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="conditionCatFoodInsecurity"/>
<source>
<context value="src"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="category"/>
<transform value="cc"/>
<parameter>
<valueString
value="http://hl7.org/fhir/us/sdoh-clinicalcare/CodeSystem/SDOHCC-CodeSystemTemporaryCodes"/>
</parameter>
<parameter>
<valueString value="food-insecurity"/>
</parameter>
<parameter>
<valueString value="Food Insecurity"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionCode"/>
<source>
<context value="src"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="code"/>
<variable value="newCodeCC"/>
<transform value="create"/>
<parameter>
<valueString value="CodeableConcept"/>
</parameter>
</target>
<rule>
<name value="conditionCodeCodingFoodInsecurity"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCodeCC"/>
<contextType value="variable"/>
<element value="coding"/>
<variable value="newCoding"/>
<transform value="create"/>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
<rule>
<name value="conditionCodeCodingSystemFoodInsecurity"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://snomed.info/sct"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionCodeCodingCodeFoodInsecurity"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="733423003"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionCodeCodingDisplayFoodInsecurity"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Food insecurity"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="conditionCodeCodingLackOfFood"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCodeCC"/>
<contextType value="variable"/>
<element value="coding"/>
<variable value="newCoding2"/>
<transform value="create"/>
<parameter>
<valueString value="Coding"/>
</parameter>
</target>
<rule>
<name value="conditionCodeCodingSystemLackOfFood"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding2"/>
<contextType value="variable"/>
<element value="system"/>
<transform value="copy"/>
<parameter>
<valueString value="http://hl7.org/fhir/sid/icd-10-cm"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionCodeCodingCodeLackOfFood"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding2"/>
<contextType value="variable"/>
<element value="code"/>
<transform value="copy"/>
<parameter>
<valueString value="Z59.4"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionCodeCodingDisplayLackOfFood"/>
<source>
<context value="src"/>
</source>
<target>
<context value="newCoding2"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString
value="Lack of adequate food and safe drinking water"/>
</parameter>
</target>
</rule>
</rule>
</rule>
<rule>
<name value="authored"/>
<source>
<context value="src"/>
<element value="authored"/>
<variable value="authored"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="onset"/>
<variable value="period"/>
<transform value="create"/>
<parameter>
<valueString value="Period"/>
</parameter>
</target>
<target>
<context value="period"/>
<contextType value="variable"/>
<element value="start"/>
<transform value="copy"/>
<parameter>
<valueId value="authored"/>
</parameter>
</target>
</rule>
<rule>
<name value="entry"/>
<source>
<context value="bundle"/>
<element value="entry"/>
<variable value="entries"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="evidence"/>
<variable value="evidence"/>
</target>
<target>
<context value="evidence"/>
<contextType value="variable"/>
<element value="detail"/>
<variable value="detailReference"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<rule>
<name value="resource"/>
<source>
<context value="entries"/>
<element value="resource"/>
<variable value="obs3"/>
<condition value="code.coding.code = '88124-3'"/>
</source>
<target>
<context value="detailReference"/>
<contextType value="variable"/>
<element value="reference"/>
<transform value="reference"/>
<parameter>
<valueId value="obs3"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="subject"/>
<source>
<context value="src"/>
<element value="subject"/>
<variable value="qSubject"/>
</source>
<target>
<context value="condition"/>
<contextType value="variable"/>
<element value="subject"/>
<variable value="newReference"/>
<transform value="create"/>
<parameter>
<valueString value="Reference"/>
</parameter>
</target>
<rule>
<name value="reference"/>
<source>
<context value="qSubject"/>
<element value="reference"/>
<variable value="qReference"/>
</source>
<target>
<context value="newReference"/>
<contextType value="variable"/>
<element value="reference"/>
<transform value="copy"/>
<parameter>
<valueId value="qReference"/>
</parameter>
</target>
</rule>
<rule>
<name value="display"/>
<source>
<context value="qSubject"/>
<element value="display"/>
<variable value="qDisplay"/>
</source>
<target>
<context value="newReference"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueId value="qDisplay"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="conditionEntryRequest"/>
<source>
<context value="src"/>
</source>
<target>
<context value="entry"/>
<contextType value="variable"/>
<element value="request"/>
<variable value="request"/>
</target>
<rule>
<name value="conditionRequestMethod"/>
<source>
<context value="src"/>
</source>
<target>
<context value="request"/>
<contextType value="variable"/>
<element value="method"/>
<transform value="copy"/>
<parameter>
<valueString value="POST"/>
</parameter>
</target>
</rule>
<rule>
<name value="conditionRequestUrl"/>
<source>
<context value="src"/>
</source>
<target>
<context value="request"/>
<contextType value="variable"/>
<element value="url"/>
<transform value="copy"/>
<parameter>
<valueString value="Condition"/>
</parameter>
</target>
</rule>
</rule>
</group>
<group>
<name value="SetConditionFullUrl"/>
<typeMode value="none"/>
<input>
<name value="condition"/>
<type value="Condition"/>
<mode value="source"/>
</input>
<input>
<name value="entry"/>
<mode value="target"/>
</input>
<rule>
<name value="id"/>
<source>
<context value="condition"/>
<element value="id"/>
<variable value="id"/>
</source>
<target>
<context value="entry"/>
<contextType value="variable"/>
<element value="fullUrl"/>
<transform value="append"/>
<parameter>
<valueString
value="http://hl7.org/fhir/us/sdoh-clinicalcare/Condition/"/>
</parameter>
<parameter>
<valueId value="id"/>
</parameter>
</target>
</rule>
</group>
</StructureMap>
IG © 2022+ HL7 International / FHIR Infrastructure. Package hl7.fhir.uv.sdc#3.0.0 based on FHIR 4.0.1. Generated 2023-12-07
Links: Table of Contents |
QA Report
| Version History |
|
Propose a change