Social Care Interoperability Platform FHIR Implementation Guide
Version: 0.1.0, Status: draft
Social Care Interoperability Platform FHIR Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
| Official URL: https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/Observation-SocialCircumstance-SocialCircumstance | Version: 0.1.0 | |||
| Draft as of 2026-06-10 | Computable Name: ObservationSocialCircumstanceToSocialCircumstance | |||
map "https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureMap/Observation-SocialCircumstance-SocialCircumstance" = "ObservationSocialCircumstanceToSocialCircumstance" uses "https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SocialCircumstanceObservation" alias SocialCircumstanceObservation as source uses "https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/MODS-SocialCircumstance" alias SocialCircumstance as target group SocialCircumstance(source src : SocialCircumstanceObservation, target tgt : SocialCircumstance) { src -> tgt.id = evaluate(src, id) "09d41aae-3584-44a9-b77e-791736e63e95"; src -> tgt.meta as meta, meta.dataClass as dataClass then { src -> dataClass.name = 'Social Circumstance' "70f21289-333c-4700-ab8f-491fee15c2b0"; } "setDataClassName"; src.subject as subject then { src -> tgt.subjectOfCare as subjectOfCare then { src -> subjectOfCare.id = evaluate(subject, reference.replace('Patient/','')) "8664b664-19eb-4528-95fe-6e06fc27a45a"; src -> subjectOfCare.type = 'SubjectOfCare' "1f5a5319-cae8-4f4d-a7c5-7a77b4a51451"; src -> subjectOfCare.display = evaluate(subject, display) "0b830021-0257-4da6-bd6f-c031751af399"; } "94bf0da3-2853-49eb-b026-939ce3874c92"; } "setSocialCircumstanceSubject"; src.extension as participantsExt where $this.url='https://metadata.phase2.scip.synanetics.cloud/fhir/r4/StructureDefinition/Extension-MODS-ParticipantCareActor' -> tgt.careWorker as careWorker then { participantsExt.extension as careWorkers where $this.url='participantRole'and$this.valueCode='performer' then { participantsExt.extension as careWorkerParticipantReferences where $this.url='participantReference' then { careWorkerParticipantReferences.valueReference as careWorkerParticipantRef then { src -> careWorker.id = evaluate(careWorkerParticipantRef, reference.replace('Practitioner/','')) "7a6730e2-e602-4bd4-b439-5ef25525ffcd"; src -> careWorker.type = 'CareWorker' "cfaf4f02-9bb2-4285-8efe-1005ff332299"; src -> careWorker.display = evaluate(careWorkerParticipantRef, display) "9ecb2a09-736d-438a-9b5a-42d596d2dd6d"; }; }; }; } "setSocialCircumstanceCareWorker"; src -> tgt.datetime = evaluate(src, effectiveDateTime) "setSocialCircumstanceDateTime"; src.component as component where $this.code.coding.code='text' then { src -> tgt.text = evaluate(component, valueString) "91cfb2f8-7e39-4369-9c31-6218368770fd"; } "setSocialCircumstanceText"; }