Mappings for the athena-appointment-profile resource profile.
AthenaAppointment |
Appointment | FHIRR4_APPOINTMENTVIEW |
id | %ID% |
meta | |
lastUpdated | %DB_UPDATED_DATE% |
security (SENSITIVECHART) | CheckSensitive(%SENSITIVECHART%) |
extension | |
extension (RecallAppointmentId) | |
extension (RecallId) | |
extension (Booklist) | |
value[x] | %BOOKLIST% |
identifier | MakeIdentifier("U",getSiteSystem("Appointment"),%EXTAPPTID%) |
status | MapCode(%APPTSTATUS%,"APPOINTMENTSTATUS") |
serviceType | MakeConcept(%TYPEID%,"https://docs.mydata.athenahealth.com/fhir-r4/CodeSystem/athena-appointment-service-type.html",%D_APPTTYPE%) |
reasonCode | MakeTextConcept(%REASON%) |
priority | %URGENCY% |
description | %D_APPTTYPE% |
start | MakeTimestamp(%APPTDATE%,%APPTTIME%) |
end | MakeTimestamp(%APPTDATE%,%APPTTIME%,%DURATION%) |
minutesDuration | %DURATION% |
comment | %COMMENTSANDINSTRUCTIONS% |
participant | |
participant (Patient) | |
actor | MakeReference("PERSON",%PID%,"Patient") |
status | IsStatusCode("tentative",%PARTSTATUS%) |
participant (Practitioner) | |
type (T1_Type) | MapConcept("PPRF","APPOINTMENTTYPE") |
type (T2_Type) | MapConcept(%PRACTTYPECODE%,"C80APPOINTMENTTYPEEMR") |
actor | MakeReference("USR",%DOCTORID%,"Practitioner") |
status | IsStatusCode("tentative",%PARTSTATUS%) |
participant (Location) | |
actor | MakeReference("LOCREG",%LOCATIONID%,"Location") |
status | IsStatusCode("tentative",%PARTSTATUS%) |
AthenaAppointment |
Appointment | FHIRR4_APPOINTMENTVIEW |
id | MakeIdWithPrefix(%ID%,%ID_PREFIX%) |
meta | |
lastUpdated | %UPDATED_DATE% |
security (SENSITIVECHART) | CheckSensitive(%SENSITIVECHART%) |
extension | |
extension (RecallAppointmentId) | |
value[x] | MakeReference("APPOINTMENT",%RECALLAPPOINTMENTID%,"Appointment") |
extension (RecallId) | |
value[x] | MakeReference("APPOINTMENT",%RECALLID%,"Appointment") |
identifier | MakeIdentifier("U",getSiteSystem("Appointment"),%EXTERNALAPPTID%) |
status | MapCode(%DESCRIPTION%,"APPOINTMENTSTATUS_CPS") |
serviceType | MakeConceptIgnoringZeroValues(%TYPEID%,"https://docs.mydata.athenahealth.com/fhir-r4/CodeSystem/athena-appointment-service-type.html",%APPTTYPE%) |
reasonCode | MakeTextConcept(%REASON%) |
description | %APPTTYPE% |
start | %STARTTIME% |
end | %ENDTIME% |
minutesDuration | %DURATION% |
slot | MakeReference(null,%APPTSLOTID%,"Slot") |
comment | %REASON% |
participant | |
participant (Patient) | |
actor | MakeReference(null,%PID%,"Patient") |
status | IsStatusCode("tentative",%PARTSTATUS%) |
participant (Practitioner) | |
type (T1_Type) | MapConcept("PPRF","APPOINTMENTTYPE") |
type (T2_Type) | MapConcept(%PRACTTYPECODE%,"C80APPOINTMENTTYPECPS") |
actor | MakeReference(null,%DOCTORID%,"Practitioner") |
status | IsStatusCode("tentative",%PARTSTATUS%) |
participant (Location) | |
actor | MakeReference("LOCREG",%FACILITYID%,"Location") |
status | IsStatusCode("tentative",%PARTSTATUS%) |
participant (Resource) | |
type | MapConcept("RESOURCE","PARTICIPANTTYPECPS") |
actor | MakeResourceReference(null,%RESOURCEID%,null) |
status | IsStatusCode("tentative",%PARTSTATUS%) |
AthenaAppointment |
Appointment | Entity. Role, or Act, Act[@moodCode <= 'INT'] |
meta | |
id | n/a |
extension | n/a |
text | Act.text? |
contained | N/A |
extension | |
extension (RecallAppointmentId) | |
id | n/a |
extension | n/a |
url | N/A |
value[x] | N/A |
extension (RecallId) | |
id | n/a |
extension | n/a |
url | N/A |
value[x] | N/A |
extension (Booklist) | |
id | n/a |
extension | n/a |
url | N/A |
value[x] | N/A |
modifierExtension | N/A |
identifier | .id |
status | .statusCode |
cancelationReason | n/a |
serviceCategory | n/a, might be inferred from the ServiceDeliveryLocation |
serviceType | n/a, might be inferred from the ServiceDeliveryLocation |
specialty | .performer.AssignedPerson.code |
appointmentType | .code |
reasonCode | .reasonCode |
reasonReference | .inboundRelationship[@typeCode = 'RSON'].observation |
priority | .priorityCode |
description | .text |
supportingInformation | .inboundRelationship[@typeCode = 'SPRT'].observation |
start | .effectiveTime.low |
end | .effectiveTime.high |
minutesDuration | .activityTime[@xsi:type = ('SXPR_TS', 'PIVL_TS')].width |
slot | .outboundRelationship[@typeCode = 'REFR'].act[@classCode = 'ACT'][@moodCode = 'SLOT'] |
created | .author.time |
comment | .subjectOf.observation[@moodCode = 'EVN'][code = 'annotation'].value |
patientInstruction | .subjectOf.observation[@moodCode = 'EVN'][code = 'annotation'].value |
basedOn | .outboundRelationship[@typeCode = 'FLFS'].act[@classCode < 'ActCareProvisionRequestType'][@moodCode = 'RQO'] |
participant | performer | reusableDevice | subject | location |
id | n/a |
extension | n/a |
modifierExtension | N/A |
type | (performer | reusableDevice | subject | location).@typeCode |
actor | performer.person | reusableDevice.manufacturedDevice | subject.patient | location.serviceDeliveryLocation |
required | (performer | reusableDevice | subject | location).@performInd |
status | (performer | reusableDevice | subject | location).statusCode |
period | n/a |
participant (Patient) | performer | reusableDevice | subject | location |
id | n/a |
extension | n/a |
modifierExtension | N/A |
type | (performer | reusableDevice | subject | location).@typeCode |
actor | performer.person | reusableDevice.manufacturedDevice | subject.patient | location.serviceDeliveryLocation |
required | (performer | reusableDevice | subject | location).@performInd |
status | (performer | reusableDevice | subject | location).statusCode |
period | n/a |
participant (Practitioner) | performer | reusableDevice | subject | location |
id | n/a |
extension | n/a |
modifierExtension | N/A |
type | (performer | reusableDevice | subject | location).@typeCode |
type (T1_Type) | (performer | reusableDevice | subject | location).@typeCode |
type (T2_Type) | (performer | reusableDevice | subject | location).@typeCode |
actor | performer.person | reusableDevice.manufacturedDevice | subject.patient | location.serviceDeliveryLocation |
required | (performer | reusableDevice | subject | location).@performInd |
status | (performer | reusableDevice | subject | location).statusCode |
period | n/a |
participant (Location) | performer | reusableDevice | subject | location |
id | n/a |
extension | n/a |
modifierExtension | N/A |
type | (performer | reusableDevice | subject | location).@typeCode |
actor | performer.person | reusableDevice.manufacturedDevice | subject.patient | location.serviceDeliveryLocation |
required | (performer | reusableDevice | subject | location).@performInd |
status | (performer | reusableDevice | subject | location).statusCode |
period | n/a |
participant (Resource) | performer | reusableDevice | subject | location |
id | n/a |
extension | n/a |
modifierExtension | N/A |
type | (performer | reusableDevice | subject | location).@typeCode |
actor | performer.person | reusableDevice.manufacturedDevice | subject.patient | location.serviceDeliveryLocation |
required | (performer | reusableDevice | subject | location).@performInd |
status | (performer | reusableDevice | subject | location).statusCode |
period | n/a |
requestedPeriod | .activityTime[@xsi:type = ('SXPR_TS', 'PIVL_TS')] |
AthenaAppointment |
Appointment | VEVENT |
identifier | UID |
status | STATUS |
serviceCategory | CATEGORIES |
appointmentType | CLASSIFICATION |
priority | PRIORITY |
description | SUMMARY |
supportingInformation | ATTACH |
start | DTSTART |
end | DTEND |
minutesDuration | DURATION (e.g. PT15M) |
created | CREATED |
comment | DESCRIPTION (for internal use) |
patientInstruction | DESCRIPTION (for patient use) |
participant | ATTENDEE component to be created |
type | n/a |
actor | 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" |
required | ROLE=REQ-PARTICIPANT (roleparam) |
status | ATTENDEE;CN="John Doe";RSVP=TRUE:mailto:john@doe.com (rsvpparam | partstatparam) |
participant (Patient) | ATTENDEE component to be created |
type | n/a |
actor | 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" |
required | ROLE=REQ-PARTICIPANT (roleparam) |
status | ATTENDEE;CN="John Doe";RSVP=TRUE:mailto:john@doe.com (rsvpparam | partstatparam) |
participant (Practitioner) | ATTENDEE component to be created |
type | n/a |
type (T1_Type) | n/a |
type (T2_Type) | n/a |
actor | 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" |
required | ROLE=REQ-PARTICIPANT (roleparam) |
status | ATTENDEE;CN="John Doe";RSVP=TRUE:mailto:john@doe.com (rsvpparam | partstatparam) |
participant (Location) | ATTENDEE component to be created |
type | n/a |
actor | 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" |
required | ROLE=REQ-PARTICIPANT (roleparam) |
status | ATTENDEE;CN="John Doe";RSVP=TRUE:mailto:john@doe.com (rsvpparam | partstatparam) |
participant (Resource) | ATTENDEE component to be created |
type | n/a |
actor | 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" |
required | ROLE=REQ-PARTICIPANT (roleparam) |
status | ATTENDEE;CN="John Doe";RSVP=TRUE:mailto:john@doe.com (rsvpparam | partstatparam) |
AthenaAppointment |
Appointment | |
identifier | SCH-1, SCH-2, ARQ-1, ARQ-2 |
status | SCH-25 |
appointmentType | ARQ-7 |
reasonCode | AIS-3, SCH-7 |
priority | ARQ-12, SCH-11.6 / TQ1-9 |
description | NTE-3 |
start | ARQ-11.1, SCH-11.4 / TQ1-7 |
end | SCH-11.5 / TQ1-8/ calculated based on the start and the duration which is in ARQ-9 |
comment | NTE-3 |
patientInstruction | NTE-3 |
participant | PID, AIP, AIG, AIL |
type | AIP-4, AIG-4 |
actor | PID-3-Patient ID List | AIL-3 | AIG-3 | AIP-3 |
status | AIP-12, AIG-14 |
participant (Patient) | PID, AIP, AIG, AIL |
type | AIP-4, AIG-4 |
actor | PID-3-Patient ID List | AIL-3 | AIG-3 | AIP-3 |
status | AIP-12, AIG-14 |
participant (Practitioner) | PID, AIP, AIG, AIL |
type | AIP-4, AIG-4 |
type (T1_Type) | AIP-4, AIG-4 |
type (T2_Type) | AIP-4, AIG-4 |
actor | PID-3-Patient ID List | AIL-3 | AIG-3 | AIP-3 |
status | AIP-12, AIG-14 |
participant (Location) | PID, AIP, AIG, AIL |
type | AIP-4, AIG-4 |
actor | PID-3-Patient ID List | AIL-3 | AIG-3 | AIP-3 |
status | AIP-12, AIG-14 |
participant (Resource) | PID, AIP, AIG, AIL |
type | AIP-4, AIG-4 |
actor | PID-3-Patient ID List | AIL-3 | AIG-3 | AIP-3 |
status | AIP-12, AIG-14 |
requestedPeriod | ARQ-11 |