1.0.0 - draft

NyTimelosingIG - Local Development build (v1.0.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: HnBasisAppointment - Mappings

Draft as of 2025-06-05

Mappings for the hn-basis-appointment resource profile.

Mappings for Workflow Pattern (http://hl7.org/fhir/workflow)

HnBasisAppointment
AppointmentRequest
   identifierRequest.identifier
   statusRequest.status
   serviceTypeRequest.code
   reasonCodeRequest.reasonCode
   reasonReferenceRequest.reasonReference
   priorityRequest.priority
   supportingInformationRequest.supportingInfo
   startRequest.occurrence[x]
   endRequest.occurrence[x]
   minutesDurationRequest.occurrence[x]
   createdRequest.authoredOn
   commentRequest.note
   basedOnRequest.basedOn
   participantRequest.performer, Request.subject
   requestedPeriodRequest.occurrence[x]

Mappings for RIM Mapping (http://hl7.org/v3)

HnBasisAppointment
AppointmentEntity. Role, or Act, Act[@moodCode <= 'INT']
   meta
      idn/a
      extensionn/a
   textAct.text?
   containedN/A
   extension
   extension (virtualService)
      idn/a
      extensionn/a
      extension (channelType)
         idn/a
         urlN/A
         value[x]N/A
      extension (virtualAddress)
         idn/a
         urlN/A
         value[x]N/A
      extension (additionalInfo)
         idn/a
         urlN/A
         value[x]N/A
      extension (maxParticipants)
         idn/a
         urlN/A
         value[x]N/A
      extension (sessionKey)
         idn/a
         urlN/A
         value[x]N/A
      urlN/A
   modifierExtensionN/A
   identifier.id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
      systemII.root or Role.id.root
      valueII.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
      periodRole.effectiveTime or implied by context
      assignerII.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
   status.statusCode
   cancelationReasonn/a
      idn/a
      extensionn/a
      codingunion(., ./translation)
      text./originalText[mediaType/code="text/plain"]/data
   serviceCategoryn/a, might be inferred from the ServiceDeliveryLocation
      idn/a
      extensionn/a
      codingunion(., ./translation)
      text./originalText[mediaType/code="text/plain"]/data
   serviceTypen/a, might be inferred from the ServiceDeliveryLocation
      idn/a
      extensionn/a
      codingunion(., ./translation)
      text./originalText[mediaType/code="text/plain"]/data
   specialty.performer.AssignedPerson.code
      idn/a
      extensionn/a
      codingunion(., ./translation)
      text./originalText[mediaType/code="text/plain"]/data
   appointmentType.code
      idn/a
      extensionn/a
      codingunion(., ./translation)
      coding (omsorgsNiva)union(., ./translation)
      coding (kontaktType)union(., ./translation)
      coding (innbygger)union(., ./translation)
      coding (helsenorge)union(., ./translation)
      text./originalText[mediaType/code="text/plain"]/data
   reasonCode.reasonCode
      idn/a
      extensionn/a
      codingunion(., ./translation)
      text./originalText[mediaType/code="text/plain"]/data
   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']
   participantperformer | reusableDevice | subject | location
      idn/a
      extensionn/a
      modifierExtensionN/A
      type(performer | reusableDevice | subject | location).@typeCode
         idn/a
         extensionn/a
         codingunion(., ./translation)
         text./originalText[mediaType/code="text/plain"]/data
      actorperformer.person | reusableDevice.manufacturedDevice | subject.patient | location.serviceDeliveryLocation
      required(performer | reusableDevice | subject | location).@performInd
      status(performer | reusableDevice | subject | location).statusCode
      periodn/a
   requestedPeriod.activityTime[@xsi:type = ('SXPR_TS', 'PIVL_TS')]

Mappings for iCalendar (http://ietf.org/rfc/2445)

HnBasisAppointment
AppointmentVEVENT
   identifierUID
   statusSTATUS
   serviceCategoryCATEGORIES
   appointmentTypeCLASSIFICATION
   priorityPRIORITY
   descriptionSUMMARY
   supportingInformationATTACH
   startDTSTART
   endDTEND
   minutesDurationDURATION (e.g. PT15M)
   createdCREATED
   commentDESCRIPTION (for internal use)
   patientInstructionDESCRIPTION (for patient use)
   participantATTENDEE component to be created
      typen/a
      actorATTENDEE: (Need to provide the common name CN and also the MAILTO properties from the practitioner resource) where the participant type is not "information-only"
      requiredROLE=REQ-PARTICIPANT (roleparam)
      statusATTENDEE;CN="John Doe";RSVP=TRUE:mailto:john@doe.com (rsvpparam | partstatparam)

Mappings for FiveWs Pattern Mapping (http://hl7.org/fhir/fivews)

HnBasisAppointment
Appointment
   identifierFiveWs.identifier
   statusFiveWs.status
   specialtyFiveWs.class
   priorityFiveWs.class
   supportingInformationFiveWs.context
   startFiveWs.init
   endFiveWs.done[x]
   participant
      actorFiveWs.who

Mappings for HL7 v2 Mapping (http://hl7.org/v2)

HnBasisAppointment
Appointment
   identifierSCH-1, SCH-2, ARQ-1, ARQ-2
      useN/A
      typeCX.5
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      assignerCX.4 / (CX.4,CX.9,CX.10)
   statusSCH-25
   cancelationReason
      codingC*E.1-8, C*E.10-22
      textC*E.9. But note many systems use C*E.2 for this
   serviceCategory
      codingC*E.1-8, C*E.10-22
      textC*E.9. But note many systems use C*E.2 for this
   serviceType
      codingC*E.1-8, C*E.10-22
      textC*E.9. But note many systems use C*E.2 for this
   specialty
      codingC*E.1-8, C*E.10-22
      textC*E.9. But note many systems use C*E.2 for this
   appointmentTypeARQ-7
      codingC*E.1-8, C*E.10-22
      coding (omsorgsNiva)C*E.1-8, C*E.10-22
      coding (kontaktType)C*E.1-8, C*E.10-22
      coding (innbygger)C*E.1-8, C*E.10-22
      coding (helsenorge)C*E.1-8, C*E.10-22
      textC*E.9. But note many systems use C*E.2 for this
   reasonCodeAIS-3, SCH-7
      codingC*E.1-8, C*E.10-22
      textC*E.9. But note many systems use C*E.2 for this
   priorityARQ-12, SCH-11.6 / TQ1-9
   descriptionNTE-3
   startARQ-11.1, SCH-11.4 / TQ1-7
   endSCH-11.5 / TQ1-8/ calculated based on the start and the duration which is in ARQ-9
   commentNTE-3
   patientInstructionNTE-3
   participantPID, AIP, AIG, AIL
      typeAIP-4, AIG-4
         codingC*E.1-8, C*E.10-22
         textC*E.9. But note many systems use C*E.2 for this
      actorPID-3-Patient ID List | AIL-3 | AIG-3 | AIP-3
      statusAIP-12, AIG-14
   requestedPeriodARQ-11