--- type: "mappings" title: "Appointment Mappings" resource: "Appointment" --- # Appointment Mappings - **Appointment**: workflow=Request; rim=Act[@moodCode <= 'INT']; ical=VEVENT; w5=workflow.scheduling - **Appointment.identifier**: workflow=Request.identifier; w5=FiveWs.identifier; v2=SCH-1, SCH-2, ARQ-1, ARQ-2; rim=.id; ical=UID - **Appointment.status**: workflow=Request.status; w5=FiveWs.status; v2=SCH-25; rim=.statusCode; ical=STATUS - **Appointment.cancellationReason**: rim=n/a - **Appointment.class**: w5=FiveWs.class; v2=PV1-2; rim=.inboundRelationship[typeCode=SUBJ].source[classCode=LIST].code - **Appointment.serviceCategory**: rim=n/a, might be inferred from the ServiceDeliveryLocation; ical=CATEGORIES - **Appointment.serviceType**: workflow=Request.code; v2=ARQ-8, SCH-8 or ARQ-7, SCH-7 - note these are all user tables - review with trading partners which v2 field is used for serviceType concepts is recommended.; rim=n/a, might be inferred from the ServiceDeliveryLocation - **Appointment.specialty**: w5=FiveWs.class; rim=.performer.AssignedPerson.code - **Appointment.appointmentType**: rim=.code; ical=CLASSIFICATION - **Appointment.reason**: workflow=Request.reason; v2=AIS-3; rim=.reasonCode - **Appointment.priority**: workflow=Request.priority; w5=FiveWs.class; v2=ARQ-12, SCH-11.6 / TQ1-9; rim=.priorityCode; ical=PRIORITY - **Appointment.description**: v2=NTE-3; rim=.text; ical=SUMMARY - **Appointment.replaces**: workflow=Request.replaces; w5=FiveWs.context; rim=.inboundRelationship[@typeCode = 'SPRT'].observation; ical=ATTACH - **Appointment.virtualService**: rim=N/A - **Appointment.supportingInformation**: workflow=Request.supportingInfo; w5=FiveWs.context; rim=.inboundRelationship[@typeCode = 'SPRT'].observation; ical=ATTACH - **Appointment.previousAppointment**: w5=FiveWs.context; rim=N/A - **Appointment.originatingAppointment**: w5=FiveWs.context; rim=N/A - **Appointment.start**: workflow=Request.occurrence[x]; w5=FiveWs.init; v2=ARQ-11.1, SCH-11.4 / TQ1-7; rim=.effectiveTime.low; ical=DTSTART - **Appointment.end**: workflow=Request.occurrence[x]; w5=FiveWs.done[x]; v2=SCH-11.5 / TQ1-8/ calculated based on the start and the duration which is in ARQ-9; rim=.effectiveTime.high; ical=DTEND - **Appointment.minutesDuration**: workflow=Request.occurrence[x]; rim=.activityTime[@xsi:type = ('SXPR_TS', 'PIVL_TS')].width; ical=DURATION (e.g. PT15M) - **Appointment.requestedPeriod**: workflow=Request.occurrence[x]; v2=ARQ-11; rim=.activityTime[@xsi:type = ('SXPR_TS', 'PIVL_TS')] - **Appointment.slot**: rim=.outboundRelationship[@typeCode = 'REFR'].act[@classCode = 'ACT'][@moodCode = 'SLOT'] - **Appointment.account**: rim=.pertains.A_Account - **Appointment.created**: workflow=Request.authoredOn; rim=.author.time; ical=CREATED - **Appointment.note**: workflow=Request.note; v2=NTE-3; rim=.subjectOf.observation[@moodCode = 'EVN'][code = 'annotation'].value; ical=DESCRIPTION (for internal use) - **Appointment.patientInstruction**: v2=NTE-3; rim=.subjectOf.observation[@moodCode = 'EVN'][code = 'annotation'].value; ical=DESCRIPTION (for patient use) - **Appointment.basedOn**: workflow=Request.basedOn; rim=.outboundRelationship[@typeCode = 'FLFS'].act[@classCode < 'ActCareProvisionRequestType'][@moodCode = 'RQO'] - **Appointment.subject**: w5=FiveWs.who; v2=PID-3-Patient ID List; rim=subject.patient - **Appointment.participant**: workflow=Request.performer, Request.subject; v2=PID, AIP, AIG, AIL; rim=performer | reusableDevice | subject | location; ical=ATTENDEE component to be created - **Appointment.participant.type**: v2=AIP-4, AIG-4; rim=(performer | reusableDevice | subject | location).@typeCode; ical=n/a - **Appointment.participant.period**: rim=n/a - **Appointment.participant.actor**: w5=FiveWs.who; v2=PID-3-Patient ID List | AIL-3 | AIG-3 | AIP-3; rim=performer.person | reusableDevice.manufacturedDevice | subject.patient | location.serviceDeliveryLocation; ical=ATTENDEE: (Need to provide the common name CN and also the MAILTO properties from the practitioner resource) where the participant type is not "information-only" - **Appointment.participant.required**: rim=(performer | reusableDevice | subject | location).@performInd; ical=ROLE=REQ-PARTICIPANT (roleparam) - **Appointment.participant.status**: v2=AIP-12, AIG-14; rim=(performer | reusableDevice | subject | location).statusCode; ical=ATTENDEE;CN="John Doe";RSVP=TRUE:mailto:john@doe.com (rsvpparam | partstatparam) - **Appointment.recurrenceId**: rim=N/A - **Appointment.occurrenceChanged**: rim=N/A - **Appointment.recurrenceTemplate**: rim=N/A - **Appointment.recurrenceTemplate.timezone**: ical=TZID; rim=N/A - **Appointment.recurrenceTemplate.recurrenceType**: ical=FREQ - **Appointment.recurrenceTemplate.lastOccurrenceDate**: ical=UNTIL - **Appointment.recurrenceTemplate.occurrenceCount**: ical=COUNT - **Appointment.recurrenceTemplate.occurrenceDate**: ical=RDATE - **Appointment.recurrenceTemplate.excludingDate**: ical=EXDATE