CH ORF (R4)
0.10.0 - STU 1 Ballot
This page is part of the CH ORF (R4) (v0.10.0: STU 1) based on FHIR R4. . For a full list of available versions, see the Directory of published versions
{
"resourceType" : "StructureMap",
"id" : "OrfBundleToQr",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n <pre>map "http://fhir.ch/ig/ch-orf/StructureMap/OrfBundleToQr" = "OrfBundleToQr"\n\n// ORF Bundle To QuestionnaireResonse\n// Bundle: http://build.fhir.org/ig/hl7ch/ch-orf/StructureDefinition-ch-orf-document.html\n// QRF Questionnaire Response: http://build.fhir.org/ig/hl7ch/ch-orf/QuestionnaireResponse-referral-min.xml.html\n\nuses "http://hl7.org/fhir/StructureDefinition/Bundle" alias Bundle as source\nuses "http://hl7.org/fhir/StructureDefinition/Composition" alias Composition as source\nuses "http://hl7.org/fhir/StructureDefinition/Patient" alias Patient as source\nuses "http://hl7.org/fhir/StructureDefinition/Organization" alias Organization as source\nuses "http://hl7.org/fhir/StructureDefinition/Practitioner" alias Practitioner as source\nuses "http://hl7.org/fhir/StructureDefinition/PractitionerRole" alias PractitionerRole as source\nuses "http://hl7.org/fhir/StructureDefinition/ServiceRequest" alias ServiceRequest as source\nuses "http://hl7.org/fhir/StructureDefinition/BackboneElement" alias BackboneElement as source\nuses "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse" alias QuestionnaireResponse as target\n\ngroup OrfBundleToQr(source bundle : Bundle, target qr : QuestionnaireResponse) {\n bundle -> qr.questionnaire = 'http://fhir.ch/ig/ch-orf/Questionnaire/order-referral-form' "questionnaire";\n bundle -> qr.status = 'completed' "status";\n bundle.entry first as entry then {\n entry.resource as composition then {\n composition.section as section then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %section.entry.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : ServiceRequest as serviceRequest then CompositionToQr(bundle, composition, serviceRequest, qr) "servicerequest";\n } "fullUrlAsUuid";\n entry.resource : ServiceRequest as serviceRequest where ('ServiceRequest' + '/' + $this.id) in %section.entry.reference then CompositionToQr(bundle, composition, serviceRequest, qr) "servicerequest";\n };\n };\n };\n };\n}\n\ngroup CompositionToQr(source bundle : Bundle, source composition : Composition, source serviceRequest : ServiceRequest, target qr : QuestionnaireResponse) {\n composition -> qr.item as item, item.linkId = 'order' then OrderToQr(bundle, composition, serviceRequest, item) "order";\n composition.extension as ext where url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-receiver' -> qr.item as item, item.linkId = 'receiver' then ReceiverToQr(bundle, serviceRequest, ext, item) "receiver";\n composition.subject -> qr.item as item, item.linkId = 'patient' then PatientToQr(bundle, composition, serviceRequest, item) "patient";\n serviceRequest.extension as ext where url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-requestedencounterdetails' -> qr.item as item, item.linkId = 'requestedEncounter' then RequestedEncounterDetailsToQr(bundle, ext, item) "requestedEncounter";\n serviceRequest.insurance first as insurance -> qr.item as item, item.linkId = 'coverage' then CoverageToQr(bundle, composition, serviceRequest, item) "requestedEncounter";\n composition.author -> qr.item as item, item.linkId = 'sender' then SenderToQr(bundle, composition, serviceRequest, item) "sender";\n composition.extension first as extension where (url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-copyreceiver') -> qr.item as item, item.linkId = 'receiverCopies' then ReceiverCopyToQr(bundle, composition, serviceRequest, item) "receiverCopies";\n serviceRequest.extension as ext where url = 'ch-orf-locationandtime' -> qr.item as item, item.linkId = 'appointment' then AppointmentDetailsToQr(bundle, ext, item) "apopintments";\n serviceRequest.note first as note -> qr.item as item, item.linkId = 'note' then NoteToQr(serviceRequest, item);\n}\n\ngroup OrderToQr(source bundle : Bundle, source composition : Composition, source serviceRequest : ServiceRequest, target item : BackboneElement) {\n // <linkId value="order.title" />\n composition.title as title -> item.item as itemfirst, itemfirst.linkId = 'order.title', itemfirst.answer as answer, answer.value = title;\n // <linkId value="order.type" />\n composition.type as comptype then {\n comptype.coding as coding -> item.item as itemfirst, itemfirst.linkId = 'order.type', itemfirst.answer as answer, answer.value = coding "type";\n } "CodeableConceptType";\n // <linkId value="order.category" />\n composition.category as compcat then {\n compcat.coding as coding -> item.item as itemfirst, itemfirst.linkId = 'order.category', itemfirst.answer as answer, answer.value = coding "category";\n } "CodeableConceptType";\n // <linkId value="order.placerOrderIdentifierDomain" />\n serviceRequest.identifier as identifier where (type.coding.where((system.value = 'http://terminology.hl7.org/CodeSystem/v2-0203') and (code.value = 'PLAC'))) -> item.item as itemfirst, itemfirst.linkId = 'order.placerOrderIdentifier', itemfirst.answer as answer, answer.value = (identifier.value) then {\n identifier.system as system -> item.item as itemsecond, itemsecond.linkId = 'order.placerOrderIdentifierDomain', itemsecond.answer as answer, answer.value = cast(system, 'string') "placerOrderIdentifierDomain";\n } "placerOrderIdentifierDomain";\n // <linkId value="order.fillerOrderIdentifier" />\n serviceRequest.identifier as identifier where (type.coding.where((system.value = 'http://terminology.hl7.org/CodeSystem/v2-0203') and (code.value = 'FILL'))) -> item.item as itemfirst, itemfirst.linkId = 'order.fillerOrderIdentifier', itemfirst.answer as answer, answer.value = (identifier.value) then {\n identifier.system as system -> item.item as itemsecond, itemsecond.linkId = 'order.fillerOrderIdentifierDomain', itemsecond.answer as answer, answer.value = cast(system, 'string') "fillerOrderIdentifier";\n } "fillerOrderIdentifierDomain";\n // <linkId value="order.precedentDocumentIdentifier" />\n composition.extension as extension where url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-precedentdocument' then {\n extension.value as value where value.startsWith('urn:uuid:') -> item.item as item, item.linkId = 'order.precedentDocumentIdentifier', item.answer as answer, answer.value = (value.value.substring(9)) "precedentDocumentIdentifier";\n } "composition";\n // 'order.dateTime'- currently not mapped in qr response\n composition.extension as extension where url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-urgentnoficationcontactforthisdocument' then {\n extension.value as value then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %value.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : PractitionerRole as practitionerRole then UrgentNotificationToQr(bundle, composition, practitionerRole, item) "practitionerRole";\n } "fullUrlAsUuid";\n entry.resource : PractitionerRole as practitionerRole where ('PractitionerRole' + '/' + $this.id) in %value.reference then UrgentNotificationToQr(bundle, composition, practitionerRole, item) "practitionerRole";\n };\n };\n } "composition";\n // Urgent Notification Contact for the Response to this document\n composition.extension as extension where url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-urgentnoficationcontactfortheresponsetothisdocument' then {\n extension.value as value then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %value.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : PractitionerRole as practitionerRole then UrgentNotificationResponseToQr(bundle, composition, practitionerRole, item) "practitionerRole";\n } "fullUrlAsUuid";\n entry.resource : PractitionerRole as practitionerRole where ('PractitionerRole' + '/' + $this.id) in %value.reference then UrgentNotificationResponseToQr(bundle, composition, practitionerRole, item) "practitionerRole";\n };\n };\n } "composition";\n // order.priority\n serviceRequest.priority as priority -> item.item as item, item.linkId = 'order.priority', item.answer as answer, answer.value = create('Coding') as coding, coding.system = 'http://hl7.org/fhir/request-priority', coding.code = priority;\n}\n\ngroup UrgentNotificationToQr(source bundle : Bundle, source composition : Composition, source practitionerRole : PractitionerRole, target item : BackboneElement) {\n composition -> item.item as itemgroup, itemgroup.linkId = 'order.notificationContactDocument', itemgroup.item as item, item.linkId = 'order.notificationContactDocument.practitioner' then {\n practitionerRole.practitioner as practitioner then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %practitioner.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Practitioner as practitioner then UrgentNotificationPractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n } "fullUrlAsUuid";\n entry.resource : Practitioner as practitioner where ('Practitioner' + '/' + $this.id) in %practitioner.reference then UrgentNotificationPractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n };\n };\n } "urgentnotification";\n}\n\ngroup UrgentNotificationPractitionerToQr(source bundle : Bundle, source composition : Composition, source practitioner : Practitioner, target item : BackboneElement) {\n practitioner.name as name then {\n // order.notificationContactDocument.practitioner.title\n name.prefix as prefix where (extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC'))) -> item.item as item, item.linkId = 'order.notificationContactDocument.practitioner.title', item.answer as answer, answer.value = prefix;\n // order.notificationContactDocument.practitioner.familyName\n name.family as family -> item.item as item, item.linkId = 'order.notificationContactDocument.practitioner.familyName', item.answer as answer, answer.value = family;\n // order.notificationContactDocument.practitioner.givenName\n name.given as given -> item.item as item, item.linkId = 'order.notificationContactDocument.practitioner.givenName', item.answer as answer, answer.value = given;\n };\n // order.notificationContactDocument.practitioner.phone\n practitioner.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'order.notificationContactDocument.practitioner.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // order.notificationContactDocument.practitioner.memaol\n practitioner.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'order.notificationContactDocument.practitioner.email', item.answer as answer, answer.value = (telecom.value) "email";\n}\n\ngroup UrgentNotificationResponseToQr(source bundle : Bundle, source composition : Composition, source practitionerRole : PractitionerRole, target item : BackboneElement) {\n // order.notificationContactDocumentResponse\n composition -> item.item as itemgroup, itemgroup.linkId = 'order.notificationContactDocumentResponse', itemgroup.item as item, item.linkId = 'order.notificationContactDocumentResponse.practitioner' then {\n practitionerRole.practitioner as practitioner then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %practitioner.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Practitioner as practitioner then UrgentNotificationResponsePractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n } "fullUrlAsUuid";\n entry.resource : Practitioner as practitioner where ('Practitioner' + '/' + $this.id) in %practitioner.reference then UrgentNotificationResponsePractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n };\n };\n } "urgentnotification";\n}\n\ngroup UrgentNotificationResponsePractitionerToQr(source bundle : Bundle, source composition : Composition, source practitioner : Practitioner, target item : BackboneElement) {\n practitioner.name as name then {\n // order.notificationContactDocumentResponse.practitioner.title\n name.prefix as prefix where (extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC'))) -> item.item as item, item.linkId = 'order.notificationContactDocumentResponse.practitioner.title', item.answer as answer, answer.value = prefix;\n // order.notificationContactDocumentResponse.practitioner.familyName\n name.family as family -> item.item as item, item.linkId = 'order.notificationContactDocumentResponse.practitioner.familyName', item.answer as answer, answer.value = family;\n // order.notificationContactDocumentResponse.practitioner.givenName\n name.given as given -> item.item as item, item.linkId = 'order.notificationContactDocumentResponse.practitioner.givenName', item.answer as answer, answer.value = given;\n };\n // order.notificationContactDocumentResponse.practitioner.phone\n practitioner.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'order.notificationContactDocumentResponse.practitioner.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // order.notificationContactDocumentResponse.practitioner.memaol\n practitioner.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'order.notificationContactDocumentResponse.practitioner.email', item.answer as answer, answer.value = (telecom.value) "email";\n}\n\ngroup ReceiverToQr(source bundle : Bundle, source composition : Composition, source ext : Extension, target item : BackboneElement) {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %ext.valueReference.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : PractitionerRole as practitionerRole then ReceiverPractitionerRoleToQr(bundle, composition, practitionerRole, item) "practitioner";\n } "fullUrlAsUuid";\n entry.resource : PractitionerRoler as practitionerRole where ('PractitionerRole' + '/' + $this.id) in %ext.valueReference.reference then ReceiverPractitionerRoleToQr(bundle, composition, practitionerRole, item) "practitioner";\n };\n}\n\ngroup ReceiverPractitionerRoleToQr(source bundle : Bundle, source composition : Composition, source practitionerRole : PractitionerRole, target itemgroup : BackboneElement) {\n practitionerRole.practitioner as practitioner -> itemgroup.item as item, item.linkId = 'receiver.practitioner' then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %practitioner.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Practitioner as practitioner then ReceiverPractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n } "fullUrlAsUuid";\n entry.resource : Practitioner as practitioner where ('Practitioner' + '/' + $this.id) in %practitioner.reference then ReceiverPractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n };\n };\n practitionerRole.organization as organization -> itemgroup.item as item, item.linkId = 'receiver.organization' then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %organization.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Organization as organization then ReceiverOrganizationToQr(bundle, composition, organization, item) "organization";\n } "fullUrlAsUuid";\n entry.resource : Organization as organization where ('Organization' + '/' + $this.id) in %organization.reference then ReceiverOrganizationToQr(bundle, composition, practitioner, item) "organization";\n };\n };\n}\n\ngroup ReceiverPractitionerToQr(source bundle : Bundle, source composition : Composition, source practitioner : Practitioner, target item : BackboneElement) {\n practitioner.name as name then {\n // receiver.practitioner.title\n name.prefix as prefix where (extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC'))) -> item.item as item, item.linkId = 'receiver.practitioner.title', item.answer as answer, answer.value = prefix;\n // receiver.practitioner.familyName\n name.family as family -> item.item as item, item.linkId = 'receiver.practitioner.familyName', item.answer as answer, answer.value = family;\n // receiver.practitioner.givenName\n name.given as given -> item.item as item, item.linkId = 'receiver.practitioner.givenName', item.answer as answer, answer.value = given;\n };\n // receiver.practitioner.gln\n practitioner.identifier as identifier where (system = 'urn:oid:2.51.1.3') then {\n identifier.value as value -> item.item as item, item.linkId = 'receiver.practitioner.gln', item.answer as answer, answer.value = cast(value, 'string') "gln";\n };\n // receiver.practitioner.phone\n practitioner.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'receiver.practitioner.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // receiver.practitioneremail\n practitioner.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'receiver.practitioner.email', item.answer as answer, answer.value = (telecom.value) "email";\n}\n\ngroup ReceiverOrganizationToQr(source bundle : Bundle, source composition : Composition, source organization : Organization, target item : BackboneElement) {\n // receiver.organization.name\n organization.name as name -> item.item as item, item.linkId = 'receiver.organization.name', item.answer as answer, answer.value = name;\n // receiver.organization.streetAddressLine\n organization.address as addr then {\n addr.line first as line1 -> item.item as item, item.linkId = 'receiver.organization.streetAddressLine' then {\n addr.line as line -> item.answer as answer, answer.value = line;\n } "addrlinefirst";\n // receiver.organization.postalCode\n addr.postalCode as postalCode -> item.item as item, item.linkId = 'receiver.organization.postalCode', item.answer as answer, answer.value = postalCode;\n // receiver.organization.city\n addr.city as city -> item.item as item, item.linkId = 'receiver.organization.city', item.answer as answer, answer.value = city;\n // receiver.organization.country\n addr.country as country -> item.item as item, item.linkId = 'receiver.organization.country', item.answer as answer, answer.value = country;\n } "addr";\n}\n\ngroup PatientToQr(source bundle : Bundle, source composition : Composition, source serviceRequest : ServiceRequest, target item : BackboneElement) {\n composition.subject as subject then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %subject.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Patient as patient then PatientDetailsToQr(bundle, composition, patient, item) "patient";\n } "fullUrlAsUuid";\n entry.resource : Patient as patient where ('Patient' + '/' + $this.id) in %subject.reference then PatientDetailsToQr(bundle, composition, patient, item) "patient";\n };\n } "practitioner";\n}\n\ngroup PatientDetailsToQr(source bundle : Bundle, source composition : Composition, source patient : Patient, target item : BackboneElement) {\n // patient.familyName\n patient.name as name where (use.empty() or (use = 'official')) then {\n name.family as family -> item.item as item, item.linkId = 'patient.familyName', item.answer as answer, answer.value = family;\n } "familyName";\n patient.name as name where use = 'maiden' then {\n name.family as family -> item.item as item, item.linkId = 'patient.maidenName', item.answer as answer, answer.value = family "maidenName";\n } "maidenName";\n patient.name as name where (use.empty() or (use = 'official')) then {\n // patient.givenName\n name.given as given -> item.item as item, item.linkId = 'patient.givenName', item.answer as answer, answer.value = given;\n } "givenName";\n // patient.localPid\n patient.identifier as identifier where (type.coding.where((system.value = 'http://terminology.hl7.org/CodeSystem/v2-0203') and (code.value = 'MR'))) -> item.item as item1, item1.linkId = 'patient.localPid', item1.answer as answer, answer.value = (identifier.value) then {\n identifier.system as system -> item.item as item2, item2.linkId = 'patient.localPidDomain', item2.answer as answer, answer.value = cast(system, 'string') "placerOrderIdentifierDomain";\n } "localPid";\n // patient.birthDate\n patient.birthDate as birthDate -> item.item as item, item.linkId = 'patient.birthDate', item.answer as answer, answer.value = birthDate;\n // patient.gender\n patient.gender as gender -> item.item as item, item.linkId = 'patient.gender', item.answer as answer, answer.value = create('Coding') as coding, coding.system = 'http://hl7.org/fhir/administrative-gender', coding.code = gender;\n // patient.phone\n patient.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'patient.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // patient.email\n patient.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'patient.email', item.answer as answer, answer.value = (telecom.value) "email";\n patient.address as addr then {\n addr.line first as line1 -> item.item as item, item.linkId = 'patient.streetAddressLine' then {\n addr.line as line -> item.answer as answer, answer.value = line;\n } "addrlinefirst";\n // patient.postalCode\n addr.postalCode as postalCode -> item.item as item, item.linkId = 'patient.postalCode', item.answer as answer, answer.value = postalCode;\n // patient.city\n addr.city as city -> item.item as item, item.linkId = 'patient.city', item.answer as answer, answer.value = city;\n // patient.country\n addr.country as country -> item.item as item, item.linkId = 'patient.country', item.answer as answer, answer.value = country;\n } "addr";\n // patient.contactperson\n patient.contact as contact -> item.item as item, item.linkId = 'patient.contactperson' then {\n // patient.contactperson.relationship\n contact.relationship as relationship then {\n relationship.text as text -> item.item as item, item.linkId = 'patient.contactperson.relationship', item.answer as answer, answer.value = text "relationship";\n };\n contact.name as name then {\n // patient.contactperson.familyName\n name.family as family -> item.item as item, item.linkId = 'patient.contactperson.familyName', item.answer as answer, answer.value = family "familyName";\n // patient.contactperson.givenName\n name.given as given -> item.item as item, item.linkId = 'patient.contactperson.givenName', item.answer as answer, answer.value = given "givenName";\n };\n // patient.contactperson.phone\n contact.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'patient.contactperson.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // patient.contactperson.email\n contact.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'patient.contactperson.email', item.answer as answer, answer.value = (telecom.value) "email";\n };\n}\n\ngroup RequestedEncounterDetailsToQr(source bundle : Bundle, source ext : Extension, target item : BackboneElement) {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %ext.valueReference.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Encounter as encounter then EncounterToQr(encounter, item) "encounter";\n } "fullUrlAsUuid";\n entry.resource : Encounter as encounter where ('Encounter' + '/' + $this.id) in %ext.valueReference.reference then EncounterToQr(encounter, item) "encounter";\n };\n}\n\ngroup EncounterToQr(source encounter : Encounter, target item : BackboneElement) {\n // requestedEncounter.class\n encounter.class as class -> item.item as item, item.linkId = 'requestedEncounter.class', item.answer as answer, answer.value = class;\n // requestedEncounter.desiredAccommodation\n encounter.extension as extension where url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-desiredaccommodation' then {\n extension.value as value -> item.item as item, item.linkId = 'requestedEncounter.desiredAccommodation', item.answer as answer, answer.value = value "desiredAccommodation";\n } "desiredAccommodation";\n}\n\ngroup AppointmentDetailsToQr(source bundle : Bundle, source ext : Extension, target item : BackboneElement) {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %ext.valueReference.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Appointment as appointment then AppointmentToQr(appointment, item) "appointment";\n } "fullUrlAsUuid";\n entry.resource : Appointment as appointment where ('Appointment' + '/' + $this.id) in %ext.valueReference.reference then AppointmentToQr(appointment, item) "encounter";\n };\n}\n\ngroup LocationToQr(source loc : Locaton, target item : BackboneElement) {\n loc -> item.item as item, item.linkId = 'appointment.location' then {\n // appointment.location.name\n location.name as name -> item.item as itemloc, itemloc.linkId = 'appointment.location.name', answer.value = name;\n // appointment.location.phone\n location.telecom as telecom where system = 'phone' -> item.item as itemloc, itemloc.linkId = 'appointment.location.phone', answer.value = (%telecom.value) "phone";\n // appointment.location.email\n location.telecom as telecom where system = 'email' -> item.item as itemloc, itemloc.linkId = 'appointment.location.email', answer.value = (%telecom.value) "email";\n location.addr as addr then {\n // appointment.location.streetAddressLine\n addr.streetAddressLine as line -> item.item as itemloc, itemloc.linkId = 'appointment.location.streetAddressLine', answer.value = line;\n // appointment.location.postalCode\n addr.postalCode as postalCode -> item.item as itemloc, itemloc.linkId = 'appointment.location.postalCode', answer.value = postalCode;\n // appointment.location.city\n addr.city as city -> item.item as itemloc, itemloc.linkId = 'appointment.location.city', answer.value = city;\n // appointment.location.country\n addr.country as country -> item.item as itemloc, itemloc.linkId = 'appointment.location.country', answer.value = country;\n };\n } "location";\n}\n\ngroup AppointmentToQr(source app : Appointment, target item : BackboneElement) {\n // appointment.location\n app.participant as particiapnt then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %participant.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Location as location then LocationToQr(location, item) "location";\n } "fullUrlAsUuid";\n entry.resource : Location as location where ('Location' + '/' + $this.id) in %participant.reference then LocationToQr(location, item) "location";\n };\n };\n // appointment.requestedPeriod\n app.requestedPeriod as requestedPeriod -> item.item as item, item.linkId = 'appointment.requestedPeriod' then {\n // appointment.requestedPeriod.start\n requestedPeriod.start as start -> item.item as itemloc, itemloc.linkId = 'appointment.requestedPeriod.start', answer.value = start;\n // appointment.requestedPeriod.end\n requestedPeriod.end as end -> item.item as itemloc, itemloc.linkId = 'appointment.requestedPeriod.end', answer.value = end;\n };\n // appointment.status\n app.status as status -> item.item as itemloc, itemloc.linkId = 'appointment.requestedPeriod.status', answer.value = status;\n // appointment.patientInstruction\n app.patientInstruction as patientInstruction -> item.item as itemloc, itemloc.linkId = 'appointment.patientInstruction', answer.value = patientInstruction;\n}\n\ngroup CoverageBeneficiary(source patient : Patient, target item : BackboneElement) {\n patient.identifier as identifier where system = 'urn:oid:2.16.756.5.32' -> item.item as itemkvg, itemkvg.linkId = 'coverage.beneficiary', itemkvg.item as itemname, itemname.linkId = 'coverage.beneficiary.ahvn13', itemname.answer as answer, answer.value = (%identifier.value) "ahvn13";\n}\n\ngroup CoverageKvg(source coverage : Coverage, target item : BackboneElement) {\n coverage -> item.item as itemkvg, itemkvg.linkId = 'coverage.kvg', itemkvg.item as itemname, itemname.linkId = 'coverage.kvg.name', itemname.answer as answer, answer.value = (%coverage.contained.name), itemkvg.item as itemno, itemno.linkId = 'coverage.kvg.insuranceCardNumber', itemno.answer as answer, answer.value = (%coverage.identifier.value) "kvg";\n}\n\ngroup CoverageUvg(source coverage : Coverage, target item : BackboneElement) {\n coverage -> item.item as itemkvg, itemkvg.linkId = 'coverage.uvg', itemkvg.item as itemname, itemname.linkId = 'coverage.uvg.name', itemname.answer as answer, answer.value = (%coverage.contained.name), itemkvg.item as itemno, itemno.linkId = 'coverage.uvg.claimNumber', itemno.answer as answer, answer.value = (%coverage.identifier.value) "uvg";\n}\n\ngroup CoverageVvg(source coverage : Coverage, target item : BackboneElement) {\n coverage -> item.item as itemkvg, itemkvg.linkId = 'coverage.vvg', itemkvg.item as itemname, itemname.linkId = 'coverage.vvg.name', itemname.answer as answer, answer.value = (%coverage.contained.name), itemkvg.item as itemno, itemno.linkId = 'coverage.vvg.insuranceCardNumber', itemno.answer as answer, answer.value = (%coverage.identifier.value) "vvg";\n}\n\ngroup CoverageIvg(source coverage : Coverage, target item : BackboneElement) {\n coverage -> item.item as itemkvg, itemkvg.linkId = 'coverage.iv', itemkvg.item as itemno, itemno.linkId = 'coverage.iv.verfuegungsnummer', itemno.answer as answer, answer.value = (%coverage.identifier.value) "iv";\n}\n\ngroup CoverageMvg(source coverage : Coverage, target item : BackboneElement) {\n coverage -> item.item as itemkvg, itemkvg.linkId = 'coverage.mv', itemkvg.item as itemno, itemno.linkId = 'coverage.mv.versichertennummer', itemno.answer as answer, answer.value = (%coverage.identifier.value) "mv";\n}\n\ngroup CoverageSelf(source coverage : Coverage, target item : BackboneElement) {\n coverage -> item.item as itemkvg, itemkvg.linkId = 'coverage.self', itemkvg.item as itemname, itemname.linkId = 'coverage.self.familyName', itemname.answer as answer, answer.value = (%coverage.contained.name.family), itemkvg.item as itemno, itemno.linkId = 'coverage.self.givenName', itemno.answer as answer, answer.value = (%coverage.contained.name.given) "uvg";\n}\n\ngroup CoverageOther(source coverage : Coverage, target item : BackboneElement) {\n coverage -> item.item as itemkvg, itemkvg.linkId = 'coverage.other', itemkvg.item as itemname, itemname.linkId = 'coverage.other.name', itemname.answer as answer, answer.value = (%coverage.contained.name), itemkvg.item as itemno, itemno.linkId = 'coverage.other.id', itemno.answer as answer, answer.value = (%coverage.identifier.value) "uvg";\n}\n\ngroup CoverageToQr(source bundle : Bundle, source composition : Composition, source serviceRequest : ServiceRequest, target item : BackboneElement) {\n composition.subject as subject then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %subject.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Patient as patient then CoverageBeneficiary(patient, item) "patient";\n } "fullUrlAsUuid";\n entry.resource : Patient as patient where ('Patient' + '/' + $this.id) in %subject.reference then CoverageBeneficiary(patient, item) "patient";\n };\n } "practitioner";\n bundle.entry as entry then {\n entry.fullUrl where ($this in %serviceRequest.insurance.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Coverage as coverage where (type.coding.code = 'KVG') then CoverageKvg(coverage, item) "coveragekvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'UVG') then CoverageUvg(coverage, item) "coverageuvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'VVG') then CoverageVvg(coverage, item) "coverageVvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'IVG') then CoverageIvg(coverage, item) "coverageVvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'MVG') then CoverageMvg(coverage, item) "coverageVvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'Self') then CoverageSelf(coverage, item) "coverageSelf";\n entry.resource : Coverage as coverage where (type.coding.code = 'Other') then CoverageOther(coverage, item) "coverageOth4r";\n } "fullUrlAsUuid";\n entry.resource : Coverage as coverage where (type.coding.code = 'KVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference) then CoverageKvg(coverage, item) "coveragekvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'UVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference) then CoverageUvg(coverage, item) "coverageuvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'VVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference) then CoverageVvg(coverage, item) "coverageuvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'IVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference) then CoverageIvg(coverage, item) "coverageivg";\n entry.resource : Coverage as coverage where (type.coding.code = 'MVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference) then CoverageMvg(coverage, item) "coveragemvg";\n entry.resource : Coverage as coverage where (type.coding.code = 'Self') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference) then CoverageSelf(coverage, item) "coverageself";\n entry.resource : Coverage as coverage where (type.coding.code = 'Other') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference) then CoverageOther(coverage, item) "coverageother";\n };\n}\n\ngroup SenderToQr(source bundle : Bundle, source composition : Composition, source serviceRequest : ServiceRequest, target item : BackboneElement) {\n composition.author as author then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %author.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : PractitionerRole as practitionerRole then SenderPractitionerRoleToQr(bundle, composition, practitionerRole, item) "practitioner";\n } "fullUrlAsUuid";\n entry.resource : PractitionerRoler as practitionerRole where ('PractitionerRole' + '/' + $this.id) in %author.reference then SenderPractitionerRoleToQr(bundle, composition, practitionerRole, item) "practitioner";\n };\n };\n composition.extension as ext where (url = 'http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-epr-dataenterer') then {\n ext.extension as extension where (url = 'enterer') then {\n extension.value as value then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %value.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : PractitionerRole as practitionerRole then DataEntererPractitionerRoleToQr(bundle, composition, practitionerRole, item) "practitionerRole";\n } "fullUrlAsUuid";\n entry.resource : PractitionerRole as practitionerRole where ('PractitionerRole' + '/' + $this.id) in %value.reference then DataEntererPractitionerRoleToQr(bundle, composition, practitionerRole, item) "practitionerRole";\n };\n };\n } "enterer";\n } "dataenterer";\n}\n\ngroup SenderPractitionerRoleToQr(source bundle : Bundle, source composition : Composition, source practitionerRole : PractitionerRole, target itemsender : BackboneElement) {\n composition -> itemsender.item as itemgroup, itemgroup.linkId = 'sender.author' then {\n practitionerRole.practitioner as practitioner -> itemgroup.item as item, item.linkId = 'sender.author.practitioner' then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %practitioner.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Practitioner as practitioner then SenderPractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n } "fullUrlAsUuid";\n entry.resource : Practitioner as practitioner where ('Practitioner' + '/' + $this.id) in %practitioner.reference then SenderPractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n };\n };\n practitionerRole.organization as organization -> itemgroup.item as item, item.linkId = 'sender.author.organization' then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %organization.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Organization as organization then SenderOrganizationToQr(bundle, composition, organization, item) "organization";\n } "fullUrlAsUuid";\n entry.resource : Organization as organization where ('Organization' + '/' + $this.id) in %organization.reference then SenderOrganizationToQr(bundle, composition, practitioner, item) "organization";\n };\n };\n } "author";\n}\n\ngroup SenderPractitionerToQr(source bundle : Bundle, source composition : Composition, source practitioner : Practitioner, target item : BackboneElement) {\n practitioner.name as name then {\n // sender.author.practitioner.title\n name.prefix as prefix where (extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC'))) -> item.item as item, item.linkId = 'sender.author.practitioner.title', item.answer as answer, answer.value = prefix;\n // sender.author.practitioner.familyName\n name.family as family -> item.item as item, item.linkId = 'sender.author.practitioner.familyName', item.answer as answer, answer.value = family;\n // sender.author.practitioner.givenName\n name.given as given -> item.item as item, item.linkId = 'sender.author.practitioner.givenName', item.answer as answer, answer.value = given;\n };\n // sender.author.practitioner.gln\n practitioner.identifier as identifier where (system = 'urn:oid:2.51.1.3') then {\n identifier.value as value -> item.item as item, item.linkId = 'sender.author.practitioner.gln', item.answer as answer, answer.value = cast(value, 'string') "gln";\n };\n // sender.author.practitioner.phone\n practitioner.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'sender.author.practitioner.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // sender.author.practitioneremila\n practitioner.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'sender.author.practitioner.email', item.answer as answer, answer.value = (telecom.value) "email";\n}\n\ngroup SenderOrganizationToQr(source bundle : Bundle, source composition : Composition, source organization : Organization, target item : BackboneElement) {\n // sender.author.organization.name\n organization.name as name -> item.item as item, item.linkId = 'sender.author.organization.name', item.answer as answer, answer.value = name;\n // sender.author.organization.streetAddressLine\n organization.address as addr then {\n addr.line first as line1 -> item.item as item, item.linkId = 'sender.author.organization.streetAddressLine' then {\n addr.line as line -> item.answer as answer, answer.value = line;\n } "addrlinefirst";\n // sender.author.organization.postalCode\n addr.postalCode as postalCode -> item.item as item, item.linkId = 'sender.author.organization.postalCode', item.answer as answer, answer.value = postalCode;\n // sender.author.organization.city\n addr.city as city -> item.item as item, item.linkId = 'sender.author.organization.city', item.answer as answer, answer.value = city;\n // sender.author.organization.country\n addr.country as country -> item.item as item, item.linkId = 'sender.author.organization.country', item.answer as answer, answer.value = country;\n } "addr";\n}\n\ngroup DataEntererPractitionerRoleToQr(source bundle : Bundle, source composition : Composition, source practitionerRole : PractitionerRole, target itemsender : BackboneElement) {\n composition -> itemsender.item as itemgroup, itemgroup.linkId = 'sender.dataenterer' then {\n practitionerRole.practitioner as practitioner -> itemgroup.item as item, item.linkId = 'sender.dataenterer.practitioner' then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %practitioner.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Practitioner as practitioner then DataEntererPractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n } "fullUrlAsUuid";\n entry.resource : Practitioner as practitioner where ('Practitioner' + '/' + $this.id) in %practitioner.reference then DataEntererPractitionerToQr(bundle, composition, practitioner, item) "practitioner";\n };\n };\n } "dataenterer";\n}\n\ngroup DataEntererPractitionerToQr(source bundle : Bundle, source composition : Composition, source practitioner : Practitioner, target item : BackboneElement) {\n // sender.dataenterer.practitioner.familyName\n practitioner.name as name then {\n name.family as family -> item.item as item, item.linkId = 'sender.dataenterer.practitioner.familyName', item.answer as answer, answer.value = family;\n // sender.dataenterer.practitioner.givenName\n name.given as given -> item.item as item, item.linkId = 'sender.dataenterer.practitioner.givenName', item.answer as answer, answer.value = given;\n };\n // sender.dataenterer.practitioner.phone\n practitioner.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'sender.dataenterer.practitioner.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // sender.dataenterer.practitioner.email\n practitioner.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'sender.dataenterer.practitioner.email', item.answer as answer, answer.value = (telecom.value) "email";\n}\n\ngroup ReceiverCopyToQr(source bundle : Bundle, source composition : Composition, source serviceRequest : ServiceRequest, target item : BackboneElement) {\n composition.extension as extension where (url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-copyreceiver') then {\n extension.value as value then {\n bundle.entry as entry then {\n entry.fullUrl where ($this in %value.reference) and $this.startsWith('urn:uuid') then {\n entry.resource : Organization as organization then ReceiverCopyOrganizationToQr(bundle, composition, organization, item) "organization";\n entry.resource : Patient as patient then ReceiverCopyPatientToQr(bundle, composition, patient, item) "patient";\n } "fullUrlAsUuid";\n entry.resource : Organization as organization where ('Organization' + '/' + $this.id) in %value.reference then ReceiverCopyOrganizationToQr(bundle, composition, organization, item) "organization";\n entry.resource : Patient as patient where ('Patient' + '/' + $this.id) in %value.reference then ReceiverCopyPatientToQr(bundle, composition, patient, item) "patient";\n };\n };\n };\n}\n\ngroup ReceiverCopyOrganizationToQr(source bundle : Bundle, source composition : Composition, source organization : Organization, target itemsender : BackboneElement) {\n organization -> itemsender.item as item, item.linkId = 'receiverCopy' then {\n // receiverCopy.organization.name\n organization.name as name -> item.item as item, item.linkId = 'receiverCopy.organization.name', item.answer as answer, answer.value = name;\n organization.contact as contact then {\n contact.name as name then {\n // receiverCopy.title\n name.prefix as prefix where (extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC'))) -> item.item as item, item.linkId = 'receiverCopy.title', item.answer as answer, answer.value = prefix;\n // receiverCopy.familyName\n name.family as family -> item.item as item, item.linkId = 'receiverCopy.familyName', item.answer as answer, answer.value = family;\n // receiverCopy.givenName\n name.given as given -> item.item as item, item.linkId = 'receiverCopy.givenName', item.answer as answer, answer.value = given;\n };\n };\n // receiverCopy.phone\n organization.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'receiverCopy.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // receiverCopy.email\n organization.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'receiverCopy.email', item.answer as answer, answer.value = (telecom.value) "email";\n // receiverCopy.organization.streetAddressLine\n organization.address as addr then {\n addr.line first as line1 -> item.item as item, item.linkId = 'receiverCopy.streetAddressLine' then {\n addr.line as line -> item.answer as answer, answer.value = line;\n } "addrlinefirst";\n // receiverCopy.postalCode\n addr.postalCode as postalCode -> item.item as item, item.linkId = 'receiverCopy.postalCode', item.answer as answer, answer.value = postalCode;\n // receiverCopy.city\n addr.city as city -> item.item as item, item.linkId = 'receiverCopy.city', item.answer as answer, answer.value = city;\n // receiverCopy.country\n addr.country as country -> item.item as item, item.linkId = 'receiverCopy.country', item.answer as answer, answer.value = country;\n } "addr";\n } "organization";\n}\n\ngroup ReceiverCopyPatientToQr(source bundle : Bundle, source composition : Composition, source patient : Patient, target itemsender : BackboneElement) {\n patient -> itemsender.item as item, item.linkId = 'receiverCopy' then {\n patient.name as name then {\n // receiverCopy.familyName\n name.family as family -> item.item as item, item.linkId = 'receiverCopy.familyName', item.answer as answer, answer.value = family;\n // receiverCopy.givenName\n name.given as given -> item.item as item, item.linkId = 'receiverCopy.givenName', item.answer as answer, answer.value = given;\n // receiverCopy.title\n name.prefix as prefix where (extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC'))) -> item.item as item, item.linkId = 'receiverCopy.title', item.answer as answer, answer.value = prefix;\n };\n // receiverCopy.phone\n patient.telecom as telecom where (system = 'phone') -> item.item as item, item.linkId = 'receiverCopy.phone', item.answer as answer, answer.value = (telecom.value) "phone";\n // receiverCopy.email\n patient.telecom as telecom where (system = 'email') -> item.item as item, item.linkId = 'receiverCopy.email', item.answer as answer, answer.value = (telecom.value) "email";\n // receiverCopy.organization.streetAddressLine\n patient.address as addr then {\n addr.line first as line1 -> item.item as item, item.linkId = 'receiverCopy.streetAddressLine' then {\n addr.line as line -> item.answer as answer, answer.value = line;\n } "addrlinefirst";\n // receiverCopy.postalCode\n addr.postalCode as postalCode -> item.item as item, item.linkId = 'receiverCopy.postalCode', item.answer as answer, answer.value = postalCode;\n // receiverCopy.city\n addr.city as city -> item.item as item, item.linkId = 'receiverCopy.city', item.answer as answer, answer.value = city;\n // receiverCopy.country\n addr.country as country -> item.item as item, item.linkId = 'receiverCopy.country', item.answer as answer, answer.value = country;\n } "addr";\n } "patient";\n}\n\ngroup NoteToQr(source serviceRequest : ServiceRequest, target item : BackboneElement) {\n serviceRequest.note as note then {\n note.text as text -> item.item as item, item.linkId = 'note.text', item.answer as answer, answer.value = cast(text, 'string');\n };\n}\n\n</pre>\n </div>"
},
"url" : "http://fhir.ch/ig/ch-orf/StructureMap/OrfBundleToQr",
"version" : "0.10.0",
"name" : "OrfBundleToQr",
"status" : "draft",
"date" : "2021-06-15T14:23:15+02:00",
"publisher" : "HL7 Switzerland",
"contact" : [
{
"name" : "HL7 Switzerland",
"telecom" : [
{
"system" : "url",
"value" : "https://www.hl7.ch/"
}
]
}
],
"description" : "ORF Bundle To QuestionnaireResonse Bundle: http://build.fhir.org/ig/hl7ch/ch-orf/StructureDefinition-ch-orf-document.html QRF Questionnaire Response: http://build.fhir.org/ig/hl7ch/ch-orf/QuestionnaireResponse-referral-min.xml.html",
"jurisdiction" : [
{
"coding" : [
{
"system" : "urn:iso:std:iso:3166",
"code" : "CH"
}
]
}
],
"copyright" : "CC-BY-SA-4.0",
"structure" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/Bundle",
"mode" : "source",
"alias" : "Bundle"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/Composition",
"mode" : "source",
"alias" : "Composition"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/Patient",
"mode" : "source",
"alias" : "Patient"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/Organization",
"mode" : "source",
"alias" : "Organization"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/Practitioner",
"mode" : "source",
"alias" : "Practitioner"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/PractitionerRole",
"mode" : "source",
"alias" : "PractitionerRole"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/ServiceRequest",
"mode" : "source",
"alias" : "ServiceRequest"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/BackboneElement",
"mode" : "source",
"alias" : "BackboneElement"
},
{
"url" : "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse",
"mode" : "target",
"alias" : "QuestionnaireResponse"
}
],
"group" : [
{
"name" : "OrfBundleToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "qr",
"type" : "QuestionnaireResponse",
"mode" : "target"
}
],
"rule" : [
{
"name" : "questionnaire",
"source" : [
{
"context" : "bundle"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "questionnaire",
"transform" : "copy",
"parameter" : [
{
"valueString" : "http://fhir.ch/ig/ch-orf/Questionnaire/order-referral-form"
}
]
}
]
},
{
"name" : "status",
"source" : [
{
"context" : "bundle"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "status",
"transform" : "copy",
"parameter" : [
{
"valueString" : "completed"
}
]
}
]
},
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"listMode" : "first",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "entry.resource",
"source" : [
{
"context" : "entry",
"element" : "resource",
"variable" : "composition"
}
],
"rule" : [
{
"name" : "composition.section",
"source" : [
{
"context" : "composition",
"element" : "section",
"variable" : "section"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %section.entry.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "servicerequest",
"source" : [
{
"context" : "entry",
"type" : "ServiceRequest",
"element" : "resource",
"variable" : "serviceRequest"
}
],
"dependent" : [
{
"name" : "CompositionToQr",
"variable" : [
"bundle",
"composition",
"serviceRequest",
"qr"
]
}
]
}
]
},
{
"name" : "servicerequest",
"source" : [
{
"context" : "entry",
"type" : "ServiceRequest",
"element" : "resource",
"variable" : "serviceRequest",
"condition" : "('ServiceRequest' + '/' + $this.id) in %section.entry.reference"
}
],
"dependent" : [
{
"name" : "CompositionToQr",
"variable" : [
"bundle",
"composition",
"serviceRequest",
"qr"
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "CompositionToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "serviceRequest",
"type" : "ServiceRequest",
"mode" : "source"
},
{
"name" : "qr",
"type" : "QuestionnaireResponse",
"mode" : "target"
}
],
"rule" : [
{
"name" : "order",
"source" : [
{
"context" : "composition"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order"
}
]
}
],
"dependent" : [
{
"name" : "OrderToQr",
"variable" : [
"bundle",
"composition",
"serviceRequest",
"item"
]
}
]
},
{
"name" : "receiver",
"source" : [
{
"context" : "composition",
"element" : "extension",
"variable" : "ext",
"condition" : "url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-receiver'"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver"
}
]
}
],
"dependent" : [
{
"name" : "ReceiverToQr",
"variable" : [
"bundle",
"serviceRequest",
"ext",
"item"
]
}
]
},
{
"name" : "patient",
"source" : [
{
"context" : "composition",
"element" : "subject"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient"
}
]
}
],
"dependent" : [
{
"name" : "PatientToQr",
"variable" : [
"bundle",
"composition",
"serviceRequest",
"item"
]
}
]
},
{
"name" : "requestedEncounter",
"source" : [
{
"context" : "serviceRequest",
"element" : "extension",
"variable" : "ext",
"condition" : "url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-requestedencounterdetails'"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "requestedEncounter"
}
]
}
],
"dependent" : [
{
"name" : "RequestedEncounterDetailsToQr",
"variable" : [
"bundle",
"ext",
"item"
]
}
]
},
{
"name" : "requestedEncounter",
"source" : [
{
"context" : "serviceRequest",
"element" : "insurance",
"listMode" : "first",
"variable" : "insurance"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage"
}
]
}
],
"dependent" : [
{
"name" : "CoverageToQr",
"variable" : [
"bundle",
"composition",
"serviceRequest",
"item"
]
}
]
},
{
"name" : "sender",
"source" : [
{
"context" : "composition",
"element" : "author"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender"
}
]
}
],
"dependent" : [
{
"name" : "SenderToQr",
"variable" : [
"bundle",
"composition",
"serviceRequest",
"item"
]
}
]
},
{
"name" : "receiverCopies",
"source" : [
{
"context" : "composition",
"element" : "extension",
"listMode" : "first",
"variable" : "extension",
"condition" : "(url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-copyreceiver')"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopies"
}
]
}
],
"dependent" : [
{
"name" : "ReceiverCopyToQr",
"variable" : [
"bundle",
"composition",
"serviceRequest",
"item"
]
}
]
},
{
"name" : "apopintments",
"source" : [
{
"context" : "serviceRequest",
"element" : "extension",
"variable" : "ext",
"condition" : "url = 'ch-orf-locationandtime'"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment"
}
]
}
],
"dependent" : [
{
"name" : "AppointmentDetailsToQr",
"variable" : [
"bundle",
"ext",
"item"
]
}
]
},
{
"name" : "note",
"source" : [
{
"context" : "serviceRequest",
"element" : "note",
"listMode" : "first",
"variable" : "note"
}
],
"target" : [
{
"context" : "qr",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "note"
}
]
}
],
"dependent" : [
{
"name" : "NoteToQr",
"variable" : [
"serviceRequest",
"item"
]
}
]
}
]
},
{
"name" : "OrderToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "serviceRequest",
"type" : "ServiceRequest",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "order.title",
"source" : [
{
"context" : "composition",
"element" : "title",
"variable" : "title"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemfirst"
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.title"
}
]
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "title"
}
]
}
],
"documentation" : "<linkId value=\"order.title\" />"
},
{
"name" : "CodeableConceptType",
"source" : [
{
"context" : "composition",
"element" : "type",
"variable" : "comptype"
}
],
"rule" : [
{
"name" : "order.type",
"source" : [
{
"context" : "comptype",
"element" : "coding",
"variable" : "coding"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemfirst"
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.type"
}
]
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "coding"
}
]
}
]
}
],
"documentation" : "<linkId value=\"order.type\" />"
},
{
"name" : "CodeableConceptType",
"source" : [
{
"context" : "composition",
"element" : "category",
"variable" : "compcat"
}
],
"rule" : [
{
"name" : "order.category",
"source" : [
{
"context" : "compcat",
"element" : "coding",
"variable" : "coding"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemfirst"
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.category"
}
]
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "coding"
}
]
}
]
}
],
"documentation" : "<linkId value=\"order.category\" />"
},
{
"name" : "order.placerOrderIdentifierDomain",
"source" : [
{
"context" : "serviceRequest",
"element" : "identifier",
"variable" : "identifier",
"condition" : "(type.coding.where((system.value = 'http://terminology.hl7.org/CodeSystem/v2-0203') and (code.value = 'PLAC')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemfirst"
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.placerOrderIdentifier"
}
]
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "identifier.value"
}
]
}
],
"rule" : [
{
"name" : "order.placerOrderIdentifierDomain",
"source" : [
{
"context" : "identifier",
"element" : "system",
"variable" : "system"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemsecond"
},
{
"context" : "itemsecond",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.placerOrderIdentifierDomain"
}
]
},
{
"context" : "itemsecond",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "cast",
"parameter" : [
{
"valueId" : "system"
},
{
"valueString" : "string"
}
]
}
]
}
],
"documentation" : "<linkId value=\"order.placerOrderIdentifierDomain\" />"
},
{
"name" : "order.fillerOrderIdentifierDomain",
"source" : [
{
"context" : "serviceRequest",
"element" : "identifier",
"variable" : "identifier",
"condition" : "(type.coding.where((system.value = 'http://terminology.hl7.org/CodeSystem/v2-0203') and (code.value = 'FILL')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemfirst"
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.fillerOrderIdentifier"
}
]
},
{
"context" : "itemfirst",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "identifier.value"
}
]
}
],
"rule" : [
{
"name" : "order.fillerOrderIdentifier",
"source" : [
{
"context" : "identifier",
"element" : "system",
"variable" : "system"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemsecond"
},
{
"context" : "itemsecond",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.fillerOrderIdentifierDomain"
}
]
},
{
"context" : "itemsecond",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "cast",
"parameter" : [
{
"valueId" : "system"
},
{
"valueString" : "string"
}
]
}
]
}
],
"documentation" : "<linkId value=\"order.fillerOrderIdentifier\" />"
},
{
"name" : "composition",
"source" : [
{
"context" : "composition",
"element" : "extension",
"variable" : "extension",
"condition" : "url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-precedentdocument'"
}
],
"rule" : [
{
"name" : "order.precedentDocumentIdentifier",
"source" : [
{
"context" : "extension",
"element" : "value",
"variable" : "value",
"condition" : "value.startsWith('urn:uuid:')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.precedentDocumentIdentifier"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "value.value.substring(9)"
}
]
}
]
}
],
"documentation" : "<linkId value=\"order.precedentDocumentIdentifier\" />"
},
{
"name" : "composition",
"source" : [
{
"context" : "composition",
"element" : "extension",
"variable" : "extension",
"condition" : "url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-urgentnoficationcontactforthisdocument'"
}
],
"rule" : [
{
"name" : "extension.value",
"source" : [
{
"context" : "extension",
"element" : "value",
"variable" : "value"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %value.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitionerRole",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRole",
"element" : "resource",
"variable" : "practitionerRole"
}
],
"dependent" : [
{
"name" : "UrgentNotificationToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
},
{
"name" : "practitionerRole",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRole",
"element" : "resource",
"variable" : "practitionerRole",
"condition" : "('PractitionerRole' + '/' + $this.id) in %value.reference"
}
],
"dependent" : [
{
"name" : "UrgentNotificationToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
}
]
}
],
"documentation" : "'order.dateTime'- currently not mapped in qr response"
},
{
"name" : "composition",
"source" : [
{
"context" : "composition",
"element" : "extension",
"variable" : "extension",
"condition" : "url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-urgentnoficationcontactfortheresponsetothisdocument'"
}
],
"rule" : [
{
"name" : "extension.value",
"source" : [
{
"context" : "extension",
"element" : "value",
"variable" : "value"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %value.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitionerRole",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRole",
"element" : "resource",
"variable" : "practitionerRole"
}
],
"dependent" : [
{
"name" : "UrgentNotificationResponseToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
},
{
"name" : "practitionerRole",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRole",
"element" : "resource",
"variable" : "practitionerRole",
"condition" : "('PractitionerRole' + '/' + $this.id) in %value.reference"
}
],
"dependent" : [
{
"name" : "UrgentNotificationResponseToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
}
]
}
],
"documentation" : "Urgent Notification Contact for the Response to this document"
},
{
"name" : "order.priority",
"source" : [
{
"context" : "serviceRequest",
"element" : "priority",
"variable" : "priority"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.priority"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"variable" : "coding",
"transform" : "create",
"parameter" : [
{
"valueString" : "Coding"
}
]
},
{
"context" : "coding",
"contextType" : "variable",
"element" : "system",
"transform" : "copy",
"parameter" : [
{
"valueString" : "http://hl7.org/fhir/request-priority"
}
]
},
{
"context" : "coding",
"contextType" : "variable",
"element" : "code",
"transform" : "copy",
"parameter" : [
{
"valueId" : "priority"
}
]
}
],
"documentation" : "order.priority"
}
]
},
{
"name" : "UrgentNotificationToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitionerRole",
"type" : "PractitionerRole",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "urgentnotification",
"source" : [
{
"context" : "composition"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemgroup"
},
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocument"
}
]
},
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocument.practitioner"
}
]
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "practitionerRole",
"element" : "practitioner",
"variable" : "practitioner"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %practitioner.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner"
}
],
"dependent" : [
{
"name" : "UrgentNotificationPractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
},
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner",
"condition" : "('Practitioner' + '/' + $this.id) in %practitioner.reference"
}
],
"dependent" : [
{
"name" : "UrgentNotificationPractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "UrgentNotificationPractitionerToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitioner",
"type" : "Practitioner",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "practitioner",
"element" : "name",
"variable" : "name"
}
],
"rule" : [
{
"name" : "prefix",
"source" : [
{
"context" : "name",
"element" : "prefix",
"variable" : "prefix",
"condition" : "(extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocument.practitioner.title"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "prefix"
}
]
}
],
"documentation" : "order.notificationContactDocument.practitioner.title"
},
{
"name" : "family",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocument.practitioner.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
],
"documentation" : "order.notificationContactDocument.practitioner.familyName"
},
{
"name" : "given",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocument.practitioner.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "order.notificationContactDocument.practitioner.givenName"
}
]
},
{
"name" : "phone",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocument.practitioner.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "order.notificationContactDocument.practitioner.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocument.practitioner.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "order.notificationContactDocument.practitioner.memaol"
}
]
},
{
"name" : "UrgentNotificationResponseToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitionerRole",
"type" : "PractitionerRole",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "urgentnotification",
"source" : [
{
"context" : "composition"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemgroup"
},
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocumentResponse"
}
]
},
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocumentResponse.practitioner"
}
]
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "practitionerRole",
"element" : "practitioner",
"variable" : "practitioner"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %practitioner.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner"
}
],
"dependent" : [
{
"name" : "UrgentNotificationResponsePractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
},
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner",
"condition" : "('Practitioner' + '/' + $this.id) in %practitioner.reference"
}
],
"dependent" : [
{
"name" : "UrgentNotificationResponsePractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
}
]
}
],
"documentation" : "order.notificationContactDocumentResponse"
}
]
},
{
"name" : "UrgentNotificationResponsePractitionerToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitioner",
"type" : "Practitioner",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "practitioner",
"element" : "name",
"variable" : "name"
}
],
"rule" : [
{
"name" : "prefix",
"source" : [
{
"context" : "name",
"element" : "prefix",
"variable" : "prefix",
"condition" : "(extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocumentResponse.practitioner.title"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "prefix"
}
]
}
],
"documentation" : "order.notificationContactDocumentResponse.practitioner.title"
},
{
"name" : "family",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocumentResponse.practitioner.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
],
"documentation" : "order.notificationContactDocumentResponse.practitioner.familyName"
},
{
"name" : "given",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocumentResponse.practitioner.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "order.notificationContactDocumentResponse.practitioner.givenName"
}
]
},
{
"name" : "phone",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocumentResponse.practitioner.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "order.notificationContactDocumentResponse.practitioner.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "order.notificationContactDocumentResponse.practitioner.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "order.notificationContactDocumentResponse.practitioner.memaol"
}
]
},
{
"name" : "ReceiverToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "ext",
"type" : "Extension",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %ext.valueReference.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRole",
"element" : "resource",
"variable" : "practitionerRole"
}
],
"dependent" : [
{
"name" : "ReceiverPractitionerRoleToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
},
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRoler",
"element" : "resource",
"variable" : "practitionerRole",
"condition" : "('PractitionerRole' + '/' + $this.id) in %ext.valueReference.reference"
}
],
"dependent" : [
{
"name" : "ReceiverPractitionerRoleToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
}
]
},
{
"name" : "ReceiverPractitionerRoleToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitionerRole",
"type" : "PractitionerRole",
"mode" : "source"
},
{
"name" : "itemgroup",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "practitionerRole",
"element" : "practitioner",
"variable" : "practitioner"
}
],
"target" : [
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.practitioner"
}
]
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %practitioner.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner"
}
],
"dependent" : [
{
"name" : "ReceiverPractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
},
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner",
"condition" : "('Practitioner' + '/' + $this.id) in %practitioner.reference"
}
],
"dependent" : [
{
"name" : "ReceiverPractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
}
]
},
{
"name" : "organization",
"source" : [
{
"context" : "practitionerRole",
"element" : "organization",
"variable" : "organization"
}
],
"target" : [
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.organization"
}
]
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %organization.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "organization",
"source" : [
{
"context" : "entry",
"type" : "Organization",
"element" : "resource",
"variable" : "organization"
}
],
"dependent" : [
{
"name" : "ReceiverOrganizationToQr",
"variable" : [
"bundle",
"composition",
"organization",
"item"
]
}
]
}
]
},
{
"name" : "organization",
"source" : [
{
"context" : "entry",
"type" : "Organization",
"element" : "resource",
"variable" : "organization",
"condition" : "('Organization' + '/' + $this.id) in %organization.reference"
}
],
"dependent" : [
{
"name" : "ReceiverOrganizationToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
}
]
}
]
},
{
"name" : "ReceiverPractitionerToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitioner",
"type" : "Practitioner",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "practitioner",
"element" : "name",
"variable" : "name"
}
],
"rule" : [
{
"name" : "prefix",
"source" : [
{
"context" : "name",
"element" : "prefix",
"variable" : "prefix",
"condition" : "(extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.practitioner.title"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "prefix"
}
]
}
],
"documentation" : "receiver.practitioner.title"
},
{
"name" : "family",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.practitioner.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
],
"documentation" : "receiver.practitioner.familyName"
},
{
"name" : "given",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.practitioner.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "receiver.practitioner.givenName"
}
]
},
{
"name" : "identifier",
"source" : [
{
"context" : "practitioner",
"element" : "identifier",
"variable" : "identifier",
"condition" : "(system = 'urn:oid:2.51.1.3')"
}
],
"rule" : [
{
"name" : "gln",
"source" : [
{
"context" : "identifier",
"element" : "value",
"variable" : "value"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.practitioner.gln"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "cast",
"parameter" : [
{
"valueId" : "value"
},
{
"valueString" : "string"
}
]
}
]
}
],
"documentation" : "receiver.practitioner.gln"
},
{
"name" : "phone",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.practitioner.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "receiver.practitioner.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.practitioner.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "receiver.practitioneremail"
}
]
},
{
"name" : "ReceiverOrganizationToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "organization",
"type" : "Organization",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "organization",
"element" : "name",
"variable" : "name"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.organization.name"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "name"
}
]
}
],
"documentation" : "receiver.organization.name"
},
{
"name" : "addr",
"source" : [
{
"context" : "organization",
"element" : "address",
"variable" : "addr"
}
],
"rule" : [
{
"name" : "addrlinefirst",
"source" : [
{
"context" : "addr",
"element" : "line",
"listMode" : "first",
"variable" : "line1"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.organization.streetAddressLine"
}
]
}
],
"rule" : [
{
"name" : "line",
"source" : [
{
"context" : "addr",
"element" : "line",
"variable" : "line"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "line"
}
]
}
]
}
]
},
{
"name" : "postalCode",
"source" : [
{
"context" : "addr",
"element" : "postalCode",
"variable" : "postalCode"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.organization.postalCode"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "postalCode"
}
]
}
],
"documentation" : "receiver.organization.postalCode"
},
{
"name" : "city",
"source" : [
{
"context" : "addr",
"element" : "city",
"variable" : "city"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.organization.city"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "city"
}
]
}
],
"documentation" : "receiver.organization.city"
},
{
"name" : "country",
"source" : [
{
"context" : "addr",
"element" : "country",
"variable" : "country"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiver.organization.country"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "country"
}
]
}
],
"documentation" : "receiver.organization.country"
}
],
"documentation" : "receiver.organization.streetAddressLine"
}
]
},
{
"name" : "PatientToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "serviceRequest",
"type" : "ServiceRequest",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "composition",
"element" : "subject",
"variable" : "subject"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %subject.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "patient",
"source" : [
{
"context" : "entry",
"type" : "Patient",
"element" : "resource",
"variable" : "patient"
}
],
"dependent" : [
{
"name" : "PatientDetailsToQr",
"variable" : [
"bundle",
"composition",
"patient",
"item"
]
}
]
}
]
},
{
"name" : "patient",
"source" : [
{
"context" : "entry",
"type" : "Patient",
"element" : "resource",
"variable" : "patient",
"condition" : "('Patient' + '/' + $this.id) in %subject.reference"
}
],
"dependent" : [
{
"name" : "PatientDetailsToQr",
"variable" : [
"bundle",
"composition",
"patient",
"item"
]
}
]
}
]
}
]
}
]
},
{
"name" : "PatientDetailsToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "patient",
"type" : "Patient",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "familyName",
"source" : [
{
"context" : "patient",
"element" : "name",
"variable" : "name",
"condition" : "(use.empty() or (use = 'official'))"
}
],
"rule" : [
{
"name" : "family",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
]
}
],
"documentation" : "patient.familyName"
},
{
"name" : "maidenName",
"source" : [
{
"context" : "patient",
"element" : "name",
"variable" : "name",
"condition" : "use = 'maiden'"
}
],
"rule" : [
{
"name" : "maidenName",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.maidenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
]
}
]
},
{
"name" : "givenName",
"source" : [
{
"context" : "patient",
"element" : "name",
"variable" : "name",
"condition" : "(use.empty() or (use = 'official'))"
}
],
"rule" : [
{
"name" : "given",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "patient.givenName"
}
]
},
{
"name" : "patient.localPid",
"source" : [
{
"context" : "patient",
"element" : "identifier",
"variable" : "identifier",
"condition" : "(type.coding.where((system.value = 'http://terminology.hl7.org/CodeSystem/v2-0203') and (code.value = 'MR')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item1"
},
{
"context" : "item1",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.localPid"
}
]
},
{
"context" : "item1",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "identifier.value"
}
]
}
],
"rule" : [
{
"name" : "order.placerOrderIdentifierDomain",
"source" : [
{
"context" : "identifier",
"element" : "system",
"variable" : "system"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item2"
},
{
"context" : "item2",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.localPidDomain"
}
]
},
{
"context" : "item2",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "cast",
"parameter" : [
{
"valueId" : "system"
},
{
"valueString" : "string"
}
]
}
]
}
],
"documentation" : "patient.localPid"
},
{
"name" : "patient.birthDate",
"source" : [
{
"context" : "patient",
"element" : "birthDate",
"variable" : "birthDate"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.birthDate"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "birthDate"
}
]
}
],
"documentation" : "patient.birthDate"
},
{
"name" : "patient.gender",
"source" : [
{
"context" : "patient",
"element" : "gender",
"variable" : "gender"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.gender"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"variable" : "coding",
"transform" : "create",
"parameter" : [
{
"valueString" : "Coding"
}
]
},
{
"context" : "coding",
"contextType" : "variable",
"element" : "system",
"transform" : "copy",
"parameter" : [
{
"valueString" : "http://hl7.org/fhir/administrative-gender"
}
]
},
{
"context" : "coding",
"contextType" : "variable",
"element" : "code",
"transform" : "copy",
"parameter" : [
{
"valueId" : "gender"
}
]
}
],
"documentation" : "patient.gender"
},
{
"name" : "phone",
"source" : [
{
"context" : "patient",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "patient.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "patient",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "patient.email"
},
{
"name" : "addr",
"source" : [
{
"context" : "patient",
"element" : "address",
"variable" : "addr"
}
],
"rule" : [
{
"name" : "addrlinefirst",
"source" : [
{
"context" : "addr",
"element" : "line",
"listMode" : "first",
"variable" : "line1"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.streetAddressLine"
}
]
}
],
"rule" : [
{
"name" : "line",
"source" : [
{
"context" : "addr",
"element" : "line",
"variable" : "line"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "line"
}
]
}
]
}
]
},
{
"name" : "postalCode",
"source" : [
{
"context" : "addr",
"element" : "postalCode",
"variable" : "postalCode"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.postalCode"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "postalCode"
}
]
}
],
"documentation" : "patient.postalCode"
},
{
"name" : "city",
"source" : [
{
"context" : "addr",
"element" : "city",
"variable" : "city"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.city"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "city"
}
]
}
],
"documentation" : "patient.city"
},
{
"name" : "country",
"source" : [
{
"context" : "addr",
"element" : "country",
"variable" : "country"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.country"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "country"
}
]
}
],
"documentation" : "patient.country"
}
]
},
{
"name" : "contact",
"source" : [
{
"context" : "patient",
"element" : "contact",
"variable" : "contact"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.contactperson"
}
]
}
],
"rule" : [
{
"name" : "relationship",
"source" : [
{
"context" : "contact",
"element" : "relationship",
"variable" : "relationship"
}
],
"rule" : [
{
"name" : "patient.contactperson.relationship",
"source" : [
{
"context" : "relationship",
"element" : "text",
"variable" : "text"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.contactperson.relationship"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "text"
}
]
}
]
}
],
"documentation" : "patient.contactperson.relationship"
},
{
"name" : "patient.contactperson.name",
"source" : [
{
"context" : "contact",
"element" : "name",
"variable" : "name"
}
],
"rule" : [
{
"name" : "patient.contactperson.familyName",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.contactperson.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
],
"documentation" : "patient.contactperson.familyName"
},
{
"name" : "patient.contactperson.givenName",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.contactperson.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "patient.contactperson.givenName"
}
]
},
{
"name" : "phone",
"source" : [
{
"context" : "contact",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.contactperson.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "patient.contactperson.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "contact",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "patient.contactperson.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "patient.contactperson.email"
}
],
"documentation" : "patient.contactperson"
}
]
},
{
"name" : "RequestedEncounterDetailsToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "ext",
"type" : "Extension",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %ext.valueReference.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "encounter",
"source" : [
{
"context" : "entry",
"type" : "Encounter",
"element" : "resource",
"variable" : "encounter"
}
],
"dependent" : [
{
"name" : "EncounterToQr",
"variable" : [
"encounter",
"item"
]
}
]
}
]
},
{
"name" : "encounter",
"source" : [
{
"context" : "entry",
"type" : "Encounter",
"element" : "resource",
"variable" : "encounter",
"condition" : "('Encounter' + '/' + $this.id) in %ext.valueReference.reference"
}
],
"dependent" : [
{
"name" : "EncounterToQr",
"variable" : [
"encounter",
"item"
]
}
]
}
]
}
]
},
{
"name" : "EncounterToQr",
"typeMode" : "none",
"input" : [
{
"name" : "encounter",
"type" : "Encounter",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "class",
"source" : [
{
"context" : "encounter",
"element" : "class",
"variable" : "class"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "requestedEncounter.class"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "class"
}
]
}
],
"documentation" : "requestedEncounter.class"
},
{
"name" : "requestedEncounter.desiredAccommodation",
"source" : [
{
"context" : "encounter",
"element" : "extension",
"variable" : "extension",
"condition" : "url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-desiredaccommodation'"
}
],
"rule" : [
{
"name" : "desiredAccommodation",
"source" : [
{
"context" : "extension",
"element" : "value",
"variable" : "value"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "requestedEncounter.desiredAccommodation"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "value"
}
]
}
]
}
],
"documentation" : "requestedEncounter.desiredAccommodation"
}
]
},
{
"name" : "AppointmentDetailsToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "ext",
"type" : "Extension",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %ext.valueReference.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "appointment",
"source" : [
{
"context" : "entry",
"type" : "Appointment",
"element" : "resource",
"variable" : "appointment"
}
],
"dependent" : [
{
"name" : "AppointmentToQr",
"variable" : [
"appointment",
"item"
]
}
]
}
]
},
{
"name" : "encounter",
"source" : [
{
"context" : "entry",
"type" : "Appointment",
"element" : "resource",
"variable" : "appointment",
"condition" : "('Appointment' + '/' + $this.id) in %ext.valueReference.reference"
}
],
"dependent" : [
{
"name" : "AppointmentToQr",
"variable" : [
"appointment",
"item"
]
}
]
}
]
}
]
},
{
"name" : "LocationToQr",
"typeMode" : "none",
"input" : [
{
"name" : "loc",
"type" : "Locaton",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "location",
"source" : [
{
"context" : "loc"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.location"
}
]
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "location",
"element" : "name",
"variable" : "name"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.location.name"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "name"
}
]
}
],
"documentation" : "appointment.location.name"
},
{
"name" : "phone",
"source" : [
{
"context" : "location",
"element" : "telecom",
"variable" : "telecom",
"condition" : "system = 'phone'"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.location.phone"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%telecom.value"
}
]
}
],
"documentation" : "appointment.location.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "location",
"element" : "telecom",
"variable" : "telecom",
"condition" : "system = 'email'"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.location.email"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%telecom.value"
}
]
}
],
"documentation" : "appointment.location.email"
},
{
"name" : "addr",
"source" : [
{
"context" : "location",
"element" : "addr",
"variable" : "addr"
}
],
"rule" : [
{
"name" : "streetAddressLine",
"source" : [
{
"context" : "addr",
"element" : "streetAddressLine",
"variable" : "line"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.location.streetAddressLine"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "line"
}
]
}
],
"documentation" : "appointment.location.streetAddressLine"
},
{
"name" : "postalCode",
"source" : [
{
"context" : "addr",
"element" : "postalCode",
"variable" : "postalCode"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.location.postalCode"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "postalCode"
}
]
}
],
"documentation" : "appointment.location.postalCode"
},
{
"name" : "city",
"source" : [
{
"context" : "addr",
"element" : "city",
"variable" : "city"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.location.city"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "city"
}
]
}
],
"documentation" : "appointment.location.city"
},
{
"name" : "country",
"source" : [
{
"context" : "addr",
"element" : "country",
"variable" : "country"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.location.country"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "country"
}
]
}
],
"documentation" : "appointment.location.country"
}
]
}
]
}
]
},
{
"name" : "AppointmentToQr",
"typeMode" : "none",
"input" : [
{
"name" : "app",
"type" : "Appointment",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "participant",
"source" : [
{
"context" : "app",
"element" : "participant",
"variable" : "particiapnt"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %participant.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "location",
"source" : [
{
"context" : "entry",
"type" : "Location",
"element" : "resource",
"variable" : "location"
}
],
"dependent" : [
{
"name" : "LocationToQr",
"variable" : [
"location",
"item"
]
}
]
}
]
},
{
"name" : "location",
"source" : [
{
"context" : "entry",
"type" : "Location",
"element" : "resource",
"variable" : "location",
"condition" : "('Location' + '/' + $this.id) in %participant.reference"
}
],
"dependent" : [
{
"name" : "LocationToQr",
"variable" : [
"location",
"item"
]
}
]
}
]
}
],
"documentation" : "appointment.location"
},
{
"name" : "requestedPeriod",
"source" : [
{
"context" : "app",
"element" : "requestedPeriod",
"variable" : "requestedPeriod"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.requestedPeriod"
}
]
}
],
"rule" : [
{
"name" : "start",
"source" : [
{
"context" : "requestedPeriod",
"element" : "start",
"variable" : "start"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.requestedPeriod.start"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "start"
}
]
}
],
"documentation" : "appointment.requestedPeriod.start"
},
{
"name" : "end",
"source" : [
{
"context" : "requestedPeriod",
"element" : "end",
"variable" : "end"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.requestedPeriod.end"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "end"
}
]
}
],
"documentation" : "appointment.requestedPeriod.end"
}
],
"documentation" : "appointment.requestedPeriod"
},
{
"name" : "status",
"source" : [
{
"context" : "app",
"element" : "status",
"variable" : "status"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.requestedPeriod.status"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "status"
}
]
}
],
"documentation" : "appointment.status"
},
{
"name" : "patientInstruction",
"source" : [
{
"context" : "app",
"element" : "patientInstruction",
"variable" : "patientInstruction"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemloc"
},
{
"context" : "itemloc",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "appointment.patientInstruction"
}
]
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "patientInstruction"
}
]
}
],
"documentation" : "appointment.patientInstruction"
}
]
},
{
"name" : "CoverageBeneficiary",
"typeMode" : "none",
"input" : [
{
"name" : "patient",
"type" : "Patient",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "coverage.beneficiary.ahvn13",
"source" : [
{
"context" : "patient",
"element" : "identifier",
"variable" : "identifier",
"condition" : "system = 'urn:oid:2.16.756.5.32'"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemkvg"
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.beneficiary"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemname"
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.beneficiary.ahvn13"
}
]
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%identifier.value"
}
]
}
]
}
]
},
{
"name" : "CoverageKvg",
"typeMode" : "none",
"input" : [
{
"name" : "coverage",
"type" : "Coverage",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "coverage.kvg",
"source" : [
{
"context" : "coverage"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemkvg"
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.kvg"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemname"
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.kvg.name"
}
]
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.contained.name"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemno"
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.kvg.insuranceCardNumber"
}
]
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.identifier.value"
}
]
}
]
}
]
},
{
"name" : "CoverageUvg",
"typeMode" : "none",
"input" : [
{
"name" : "coverage",
"type" : "Coverage",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "coverage.uvg",
"source" : [
{
"context" : "coverage"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemkvg"
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.uvg"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemname"
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.uvg.name"
}
]
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.contained.name"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemno"
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.uvg.claimNumber"
}
]
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.identifier.value"
}
]
}
]
}
]
},
{
"name" : "CoverageVvg",
"typeMode" : "none",
"input" : [
{
"name" : "coverage",
"type" : "Coverage",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "coverage.vvg",
"source" : [
{
"context" : "coverage"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemkvg"
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.vvg"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemname"
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.vvg.name"
}
]
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.contained.name"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemno"
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.vvg.insuranceCardNumber"
}
]
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.identifier.value"
}
]
}
]
}
]
},
{
"name" : "CoverageIvg",
"typeMode" : "none",
"input" : [
{
"name" : "coverage",
"type" : "Coverage",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "coverage.iv",
"source" : [
{
"context" : "coverage"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemkvg"
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.iv"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemno"
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.iv.verfuegungsnummer"
}
]
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.identifier.value"
}
]
}
]
}
]
},
{
"name" : "CoverageMvg",
"typeMode" : "none",
"input" : [
{
"name" : "coverage",
"type" : "Coverage",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "coverage.mv",
"source" : [
{
"context" : "coverage"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemkvg"
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.mv"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemno"
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.mv.versichertennummer"
}
]
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.identifier.value"
}
]
}
]
}
]
},
{
"name" : "CoverageSelf",
"typeMode" : "none",
"input" : [
{
"name" : "coverage",
"type" : "Coverage",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "coverage.uvg",
"source" : [
{
"context" : "coverage"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemkvg"
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.self"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemname"
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.self.familyName"
}
]
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.contained.name.family"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemno"
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.self.givenName"
}
]
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.contained.name.given"
}
]
}
]
}
]
},
{
"name" : "CoverageOther",
"typeMode" : "none",
"input" : [
{
"name" : "coverage",
"type" : "Coverage",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "coverage.uvg",
"source" : [
{
"context" : "coverage"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "itemkvg"
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.other"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemname"
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.other.name"
}
]
},
{
"context" : "itemname",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.contained.name"
}
]
},
{
"context" : "itemkvg",
"contextType" : "variable",
"element" : "item",
"variable" : "itemno"
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "coverage.other.id"
}
]
},
{
"context" : "itemno",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "%coverage.identifier.value"
}
]
}
]
}
]
},
{
"name" : "CoverageToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "serviceRequest",
"type" : "ServiceRequest",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "composition",
"element" : "subject",
"variable" : "subject"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %subject.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "patient",
"source" : [
{
"context" : "entry",
"type" : "Patient",
"element" : "resource",
"variable" : "patient"
}
],
"dependent" : [
{
"name" : "CoverageBeneficiary",
"variable" : [
"patient",
"item"
]
}
]
}
]
},
{
"name" : "patient",
"source" : [
{
"context" : "entry",
"type" : "Patient",
"element" : "resource",
"variable" : "patient",
"condition" : "('Patient' + '/' + $this.id) in %subject.reference"
}
],
"dependent" : [
{
"name" : "CoverageBeneficiary",
"variable" : [
"patient",
"item"
]
}
]
}
]
}
]
},
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %serviceRequest.insurance.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "coveragekvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'KVG')"
}
],
"dependent" : [
{
"name" : "CoverageKvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageuvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'UVG')"
}
],
"dependent" : [
{
"name" : "CoverageUvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageVvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'VVG')"
}
],
"dependent" : [
{
"name" : "CoverageVvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageVvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'IVG')"
}
],
"dependent" : [
{
"name" : "CoverageIvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageVvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'MVG')"
}
],
"dependent" : [
{
"name" : "CoverageMvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageSelf",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'Self')"
}
],
"dependent" : [
{
"name" : "CoverageSelf",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageOth4r",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'Other')"
}
],
"dependent" : [
{
"name" : "CoverageOther",
"variable" : [
"coverage",
"item"
]
}
]
}
]
},
{
"name" : "coveragekvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'KVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference)"
}
],
"dependent" : [
{
"name" : "CoverageKvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageuvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'UVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference)"
}
],
"dependent" : [
{
"name" : "CoverageUvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageuvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'VVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference)"
}
],
"dependent" : [
{
"name" : "CoverageVvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageivg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'IVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference)"
}
],
"dependent" : [
{
"name" : "CoverageIvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coveragemvg",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'MVG') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference)"
}
],
"dependent" : [
{
"name" : "CoverageMvg",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageself",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'Self') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference)"
}
],
"dependent" : [
{
"name" : "CoverageSelf",
"variable" : [
"coverage",
"item"
]
}
]
},
{
"name" : "coverageother",
"source" : [
{
"context" : "entry",
"type" : "Coverage",
"element" : "resource",
"variable" : "coverage",
"condition" : "(type.coding.code = 'Other') and (('Coverage' + '/' + $this.id) in %serviceRequest.insurance.reference)"
}
],
"dependent" : [
{
"name" : "CoverageOther",
"variable" : [
"coverage",
"item"
]
}
]
}
]
}
]
},
{
"name" : "SenderToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "serviceRequest",
"type" : "ServiceRequest",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "author",
"source" : [
{
"context" : "composition",
"element" : "author",
"variable" : "author"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %author.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRole",
"element" : "resource",
"variable" : "practitionerRole"
}
],
"dependent" : [
{
"name" : "SenderPractitionerRoleToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
},
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRoler",
"element" : "resource",
"variable" : "practitionerRole",
"condition" : "('PractitionerRole' + '/' + $this.id) in %author.reference"
}
],
"dependent" : [
{
"name" : "SenderPractitionerRoleToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
}
]
},
{
"name" : "dataenterer",
"source" : [
{
"context" : "composition",
"element" : "extension",
"variable" : "ext",
"condition" : "(url = 'http://fhir.ch/ig/ch-core/StructureDefinition/ch-ext-epr-dataenterer')"
}
],
"rule" : [
{
"name" : "enterer",
"source" : [
{
"context" : "ext",
"element" : "extension",
"variable" : "extension",
"condition" : "(url = 'enterer')"
}
],
"rule" : [
{
"name" : "extension.value",
"source" : [
{
"context" : "extension",
"element" : "value",
"variable" : "value"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %value.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitionerRole",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRole",
"element" : "resource",
"variable" : "practitionerRole"
}
],
"dependent" : [
{
"name" : "DataEntererPractitionerRoleToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
},
{
"name" : "practitionerRole",
"source" : [
{
"context" : "entry",
"type" : "PractitionerRole",
"element" : "resource",
"variable" : "practitionerRole",
"condition" : "('PractitionerRole' + '/' + $this.id) in %value.reference"
}
],
"dependent" : [
{
"name" : "DataEntererPractitionerRoleToQr",
"variable" : [
"bundle",
"composition",
"practitionerRole",
"item"
]
}
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "SenderPractitionerRoleToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitionerRole",
"type" : "PractitionerRole",
"mode" : "source"
},
{
"name" : "itemsender",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "sender.author",
"source" : [
{
"context" : "composition"
}
],
"target" : [
{
"context" : "itemsender",
"contextType" : "variable",
"element" : "item",
"variable" : "itemgroup"
},
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author"
}
]
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "practitionerRole",
"element" : "practitioner",
"variable" : "practitioner"
}
],
"target" : [
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.practitioner"
}
]
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %practitioner.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner"
}
],
"dependent" : [
{
"name" : "SenderPractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
},
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner",
"condition" : "('Practitioner' + '/' + $this.id) in %practitioner.reference"
}
],
"dependent" : [
{
"name" : "SenderPractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
}
]
},
{
"name" : "organization",
"source" : [
{
"context" : "practitionerRole",
"element" : "organization",
"variable" : "organization"
}
],
"target" : [
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.organization"
}
]
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %organization.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "organization",
"source" : [
{
"context" : "entry",
"type" : "Organization",
"element" : "resource",
"variable" : "organization"
}
],
"dependent" : [
{
"name" : "SenderOrganizationToQr",
"variable" : [
"bundle",
"composition",
"organization",
"item"
]
}
]
}
]
},
{
"name" : "organization",
"source" : [
{
"context" : "entry",
"type" : "Organization",
"element" : "resource",
"variable" : "organization",
"condition" : "('Organization' + '/' + $this.id) in %organization.reference"
}
],
"dependent" : [
{
"name" : "SenderOrganizationToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "SenderPractitionerToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitioner",
"type" : "Practitioner",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "practitioner",
"element" : "name",
"variable" : "name"
}
],
"rule" : [
{
"name" : "prefix",
"source" : [
{
"context" : "name",
"element" : "prefix",
"variable" : "prefix",
"condition" : "(extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.practitioner.title"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "prefix"
}
]
}
],
"documentation" : "sender.author.practitioner.title"
},
{
"name" : "family",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.practitioner.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
],
"documentation" : "sender.author.practitioner.familyName"
},
{
"name" : "given",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.practitioner.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "sender.author.practitioner.givenName"
}
]
},
{
"name" : "identifier",
"source" : [
{
"context" : "practitioner",
"element" : "identifier",
"variable" : "identifier",
"condition" : "(system = 'urn:oid:2.51.1.3')"
}
],
"rule" : [
{
"name" : "gln",
"source" : [
{
"context" : "identifier",
"element" : "value",
"variable" : "value"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.practitioner.gln"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "cast",
"parameter" : [
{
"valueId" : "value"
},
{
"valueString" : "string"
}
]
}
]
}
],
"documentation" : "sender.author.practitioner.gln"
},
{
"name" : "phone",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.practitioner.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "sender.author.practitioner.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.practitioner.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "sender.author.practitioneremila"
}
]
},
{
"name" : "SenderOrganizationToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "organization",
"type" : "Organization",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "organization",
"element" : "name",
"variable" : "name"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.organization.name"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "name"
}
]
}
],
"documentation" : "sender.author.organization.name"
},
{
"name" : "addr",
"source" : [
{
"context" : "organization",
"element" : "address",
"variable" : "addr"
}
],
"rule" : [
{
"name" : "addrlinefirst",
"source" : [
{
"context" : "addr",
"element" : "line",
"listMode" : "first",
"variable" : "line1"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.organization.streetAddressLine"
}
]
}
],
"rule" : [
{
"name" : "line",
"source" : [
{
"context" : "addr",
"element" : "line",
"variable" : "line"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "line"
}
]
}
]
}
]
},
{
"name" : "postalCode",
"source" : [
{
"context" : "addr",
"element" : "postalCode",
"variable" : "postalCode"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.organization.postalCode"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "postalCode"
}
]
}
],
"documentation" : "sender.author.organization.postalCode"
},
{
"name" : "city",
"source" : [
{
"context" : "addr",
"element" : "city",
"variable" : "city"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.organization.city"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "city"
}
]
}
],
"documentation" : "sender.author.organization.city"
},
{
"name" : "country",
"source" : [
{
"context" : "addr",
"element" : "country",
"variable" : "country"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.author.organization.country"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "country"
}
]
}
],
"documentation" : "sender.author.organization.country"
}
],
"documentation" : "sender.author.organization.streetAddressLine"
}
]
},
{
"name" : "DataEntererPractitionerRoleToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitionerRole",
"type" : "PractitionerRole",
"mode" : "source"
},
{
"name" : "itemsender",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "sender.dataenterer",
"source" : [
{
"context" : "composition"
}
],
"target" : [
{
"context" : "itemsender",
"contextType" : "variable",
"element" : "item",
"variable" : "itemgroup"
},
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.dataenterer"
}
]
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "practitionerRole",
"element" : "practitioner",
"variable" : "practitioner"
}
],
"target" : [
{
"context" : "itemgroup",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.dataenterer.practitioner"
}
]
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %practitioner.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner"
}
],
"dependent" : [
{
"name" : "DataEntererPractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
},
{
"name" : "practitioner",
"source" : [
{
"context" : "entry",
"type" : "Practitioner",
"element" : "resource",
"variable" : "practitioner",
"condition" : "('Practitioner' + '/' + $this.id) in %practitioner.reference"
}
],
"dependent" : [
{
"name" : "DataEntererPractitionerToQr",
"variable" : [
"bundle",
"composition",
"practitioner",
"item"
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "DataEntererPractitionerToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "practitioner",
"type" : "Practitioner",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "practitioner",
"element" : "name",
"variable" : "name"
}
],
"rule" : [
{
"name" : "family",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.dataenterer.practitioner.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
]
},
{
"name" : "given",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.dataenterer.practitioner.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "sender.dataenterer.practitioner.givenName"
}
],
"documentation" : "sender.dataenterer.practitioner.familyName"
},
{
"name" : "phone",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.dataenterer.practitioner.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "sender.dataenterer.practitioner.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "practitioner",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "sender.dataenterer.practitioner.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "sender.dataenterer.practitioner.email"
}
]
},
{
"name" : "ReceiverCopyToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "serviceRequest",
"type" : "ServiceRequest",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "extension",
"source" : [
{
"context" : "composition",
"element" : "extension",
"variable" : "extension",
"condition" : "(url = 'http://fhir.ch/ig/ch-orf/StructureDefinition/ch-orf-copyreceiver')"
}
],
"rule" : [
{
"name" : "extension.value",
"source" : [
{
"context" : "extension",
"element" : "value",
"variable" : "value"
}
],
"rule" : [
{
"name" : "bundle.entry",
"source" : [
{
"context" : "bundle",
"element" : "entry",
"variable" : "entry"
}
],
"rule" : [
{
"name" : "fullUrlAsUuid",
"source" : [
{
"context" : "entry",
"element" : "fullUrl",
"condition" : "($this in %value.reference) and $this.startsWith('urn:uuid')"
}
],
"rule" : [
{
"name" : "organization",
"source" : [
{
"context" : "entry",
"type" : "Organization",
"element" : "resource",
"variable" : "organization"
}
],
"dependent" : [
{
"name" : "ReceiverCopyOrganizationToQr",
"variable" : [
"bundle",
"composition",
"organization",
"item"
]
}
]
},
{
"name" : "patient",
"source" : [
{
"context" : "entry",
"type" : "Patient",
"element" : "resource",
"variable" : "patient"
}
],
"dependent" : [
{
"name" : "ReceiverCopyPatientToQr",
"variable" : [
"bundle",
"composition",
"patient",
"item"
]
}
]
}
]
},
{
"name" : "organization",
"source" : [
{
"context" : "entry",
"type" : "Organization",
"element" : "resource",
"variable" : "organization",
"condition" : "('Organization' + '/' + $this.id) in %value.reference"
}
],
"dependent" : [
{
"name" : "ReceiverCopyOrganizationToQr",
"variable" : [
"bundle",
"composition",
"organization",
"item"
]
}
]
},
{
"name" : "patient",
"source" : [
{
"context" : "entry",
"type" : "Patient",
"element" : "resource",
"variable" : "patient",
"condition" : "('Patient' + '/' + $this.id) in %value.reference"
}
],
"dependent" : [
{
"name" : "ReceiverCopyPatientToQr",
"variable" : [
"bundle",
"composition",
"patient",
"item"
]
}
]
}
]
}
]
}
]
}
]
},
{
"name" : "ReceiverCopyOrganizationToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "organization",
"type" : "Organization",
"mode" : "source"
},
{
"name" : "itemsender",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "organization",
"source" : [
{
"context" : "organization"
}
],
"target" : [
{
"context" : "itemsender",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy"
}
]
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "organization",
"element" : "name",
"variable" : "name"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.organization.name"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "name"
}
]
}
],
"documentation" : "receiverCopy.organization.name"
},
{
"name" : "contact",
"source" : [
{
"context" : "organization",
"element" : "contact",
"variable" : "contact"
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "contact",
"element" : "name",
"variable" : "name"
}
],
"rule" : [
{
"name" : "prefix",
"source" : [
{
"context" : "name",
"element" : "prefix",
"variable" : "prefix",
"condition" : "(extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.title"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "prefix"
}
]
}
],
"documentation" : "receiverCopy.title"
},
{
"name" : "family",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
],
"documentation" : "receiverCopy.familyName"
},
{
"name" : "given",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "receiverCopy.givenName"
}
]
}
]
},
{
"name" : "phone",
"source" : [
{
"context" : "organization",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "receiverCopy.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "organization",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "receiverCopy.email"
},
{
"name" : "addr",
"source" : [
{
"context" : "organization",
"element" : "address",
"variable" : "addr"
}
],
"rule" : [
{
"name" : "addrlinefirst",
"source" : [
{
"context" : "addr",
"element" : "line",
"listMode" : "first",
"variable" : "line1"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.streetAddressLine"
}
]
}
],
"rule" : [
{
"name" : "line",
"source" : [
{
"context" : "addr",
"element" : "line",
"variable" : "line"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "line"
}
]
}
]
}
]
},
{
"name" : "postalCode",
"source" : [
{
"context" : "addr",
"element" : "postalCode",
"variable" : "postalCode"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.postalCode"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "postalCode"
}
]
}
],
"documentation" : "receiverCopy.postalCode"
},
{
"name" : "city",
"source" : [
{
"context" : "addr",
"element" : "city",
"variable" : "city"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.city"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "city"
}
]
}
],
"documentation" : "receiverCopy.city"
},
{
"name" : "country",
"source" : [
{
"context" : "addr",
"element" : "country",
"variable" : "country"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.country"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "country"
}
]
}
],
"documentation" : "receiverCopy.country"
}
],
"documentation" : "receiverCopy.organization.streetAddressLine"
}
]
}
]
},
{
"name" : "ReceiverCopyPatientToQr",
"typeMode" : "none",
"input" : [
{
"name" : "bundle",
"type" : "Bundle",
"mode" : "source"
},
{
"name" : "composition",
"type" : "Composition",
"mode" : "source"
},
{
"name" : "patient",
"type" : "Patient",
"mode" : "source"
},
{
"name" : "itemsender",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "patient",
"source" : [
{
"context" : "patient"
}
],
"target" : [
{
"context" : "itemsender",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy"
}
]
}
],
"rule" : [
{
"name" : "name",
"source" : [
{
"context" : "patient",
"element" : "name",
"variable" : "name"
}
],
"rule" : [
{
"name" : "family",
"source" : [
{
"context" : "name",
"element" : "family",
"variable" : "family"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.familyName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "family"
}
]
}
],
"documentation" : "receiverCopy.familyName"
},
{
"name" : "given",
"source" : [
{
"context" : "name",
"element" : "given",
"variable" : "given"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.givenName"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "given"
}
]
}
],
"documentation" : "receiverCopy.givenName"
},
{
"name" : "prefix",
"source" : [
{
"context" : "name",
"element" : "prefix",
"variable" : "prefix",
"condition" : "(extension.where((url = 'http://hl7.org/fhir/StructureDefinition/iso21090-EN-qualifier') and (valueCode = 'AC')))"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.title"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "prefix"
}
]
}
],
"documentation" : "receiverCopy.title"
}
]
},
{
"name" : "phone",
"source" : [
{
"context" : "patient",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'phone')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.phone"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "receiverCopy.phone"
},
{
"name" : "email",
"source" : [
{
"context" : "patient",
"element" : "telecom",
"variable" : "telecom",
"condition" : "(system = 'email')"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.email"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "evaluate",
"parameter" : [
{
"valueString" : "telecom.value"
}
]
}
],
"documentation" : "receiverCopy.email"
},
{
"name" : "addr",
"source" : [
{
"context" : "patient",
"element" : "address",
"variable" : "addr"
}
],
"rule" : [
{
"name" : "addrlinefirst",
"source" : [
{
"context" : "addr",
"element" : "line",
"listMode" : "first",
"variable" : "line1"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.streetAddressLine"
}
]
}
],
"rule" : [
{
"name" : "line",
"source" : [
{
"context" : "addr",
"element" : "line",
"variable" : "line"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "line"
}
]
}
]
}
]
},
{
"name" : "postalCode",
"source" : [
{
"context" : "addr",
"element" : "postalCode",
"variable" : "postalCode"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.postalCode"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "postalCode"
}
]
}
],
"documentation" : "receiverCopy.postalCode"
},
{
"name" : "city",
"source" : [
{
"context" : "addr",
"element" : "city",
"variable" : "city"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.city"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "city"
}
]
}
],
"documentation" : "receiverCopy.city"
},
{
"name" : "country",
"source" : [
{
"context" : "addr",
"element" : "country",
"variable" : "country"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "receiverCopy.country"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "copy",
"parameter" : [
{
"valueId" : "country"
}
]
}
],
"documentation" : "receiverCopy.country"
}
],
"documentation" : "receiverCopy.organization.streetAddressLine"
}
]
}
]
},
{
"name" : "NoteToQr",
"typeMode" : "none",
"input" : [
{
"name" : "serviceRequest",
"type" : "ServiceRequest",
"mode" : "source"
},
{
"name" : "item",
"type" : "BackboneElement",
"mode" : "target"
}
],
"rule" : [
{
"name" : "note",
"source" : [
{
"context" : "serviceRequest",
"element" : "note",
"variable" : "note"
}
],
"rule" : [
{
"name" : "note.text",
"source" : [
{
"context" : "note",
"element" : "text",
"variable" : "text"
}
],
"target" : [
{
"context" : "item",
"contextType" : "variable",
"element" : "item",
"variable" : "item"
},
{
"context" : "item",
"contextType" : "variable",
"element" : "linkId",
"transform" : "copy",
"parameter" : [
{
"valueString" : "note.text"
}
]
},
{
"context" : "item",
"contextType" : "variable",
"element" : "answer",
"variable" : "answer"
},
{
"context" : "answer",
"contextType" : "variable",
"element" : "value",
"transform" : "cast",
"parameter" : [
{
"valueId" : "text"
},
{
"valueString" : "string"
}
]
}
]
}
]
}
]
}
]
}