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