OpenMRS Core FHIR Implementation Guide
0.1.0 - ci-build

OpenMRS Core FHIR Implementation Guide, published by . This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/openmrs/openmrs-contrib-fhir2-ig/ and changes regularly. See the Directory of published versions

Resource Profile: OpenMRSTask - Mappings

Active as of 2024-12-11

Mappings for the OpenMRS-task resource profile.

Mappings for FHIR HL7 vs OMRS FHIR2 (Task)

Task is used to represent an activity that is to be performed,and track the completion of said activity.

OpenMRSTask
TaskOpenMRSTask

This profile maps to Task in OMRS FHIR2

   iduuid
   basedOnFhirTask.basedOn

Collection<FhirReference>

   statusFhirTask.status
   intentFhirTask.intent
   forFhirTask.for
   encounterFhirTask.encounter
   authoredOnFhirTask.dateCreated
   lastModifiedFhirTask.dateChanged
   ownerFhirTask.owner
   inputFhirTask.input

Collection<FhirTaskInput>

   outputFhirTask.output

Collection<FhirTaskOutput>

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

OpenMRSTask
TaskRequest, Event
   identifierRequest.identifier, Event.identifier
   instantiatesCanonicalRequest.instantiatesCanonical, Event.instantiatesCanonical
   instantiatesUriEvent.instantiatesUrl
   basedOnRequest.basedOn, Event.basedOn
   groupIdentifierRequest.groupIdentifier
   partOfEvent.partOf
   statusRequest.status, Event.status
   intentRequest.intent
   priorityRequest.priority
   codeRequest.code, Event.code
   forRequest.subject, Event.subject
   encounterRequest.context, Event.context
   executionPeriodEvent.occurrence[x]
   authoredOnRequest.authoredOn
   requesterRequest.requester
   performerTypeEvent.performer.role, Request.performerType
   ownerEvent.performer.actor, Request.performer
   locationRequest.reasonCode, Event.reasonCode
   reasonCodeEvent.location
   reasonReferenceRequest.reasonReference, Event.reasonReference
   insuranceRequest.insurance
   noteRequest.note, Event.note
   relevantHistoryRequest.relevantHistory

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

OpenMRSTask
TaskEntity. Role, or Act, ControlAct[moodCode=INT]
   textAct.text?
   containedN/A
   extensionN/A
   modifierExtensionN/A
   identifier.id
   instantiatesCanonical.outboundRelationship[typeCode=DEFN].target
   instantiatesUri.outboundRelationship[typeCode=DEFN].target
   basedOn.outboundRelationship[typeCode=FLFS].target[moodCode=INT]
   groupIdentifier.inboundRelationship[typeCode=COMP].source[moodCode=INT].id
   partOf.inboundRelationship[typeCode=COMP].source[moodCode=INT]
   status.statusCode
   statusReason.inboundRelationship[typeCode=SUBJ].source[classCode=CACT, moodCode=EVN, code="status change"].reasonCode
   businessStatus.inboundRelationship[typeCode=SUBJ].source[classCode=OBS, moodCode=EVN, code="business status"]
   intent.moodCode
   priority.priorityCode
   code.code
   description.text
   focus.outboundRelationship[typeCode=SUBJ].target
   for.participation[typeCode=RCT].role
   encounter.inboundRelationship[typeCode=COMP].source[classCode=PCPR, moodCode=EVN]
   executionPeriod.effectiveTime
   authoredOn.participation[typeCode=AUT].time
   lastModified.inboundRelationship[typeCode=SUBJ, ].source[classCode=CACT, moodCode=EVN].effectiveTime
   requester.participation[typeCode=AUT].role
   performerType.participation[typeCode=PRF].role.code
   owner.participation[typeCode=PRF].role
   location.participation[typeCode=LOC].role
   reasonCode.reasonCode
   reasonReference.outboundRelationship[typeCode=RSON].target
   insurance.outboundRelationship[typeCode=COVBY].target
   note.inboundRelationship[typeCode=SUBJ, ].source[classCode=OBS, moodCode=EVN, code="annotation"].value(string)
   relevantHistory.inboundRelationship(typeCode=SUBJ].source[classCode=CACT, moodCode=EVN]
   restrictionInstead of pointing to request, would point to component of request, having these characteristics
      idn/a
      extensionn/a
      modifierExtensionN/A
      repetitions.repeatNumber
      period.effectiveTime(IVL<TS>)
      recipient.participation[typeCode=SBJ].role
   input???
      idn/a
      extensionn/a
      modifierExtensionN/A
      type???
      value[x]???
   output???
      idn/a
      extensionn/a
      modifierExtensionN/A
      type???
      value[x]???

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

OpenMRSTask
Task
   identifierFiveWs.identifier
   statusFiveWs.status
   intentFiveWs.class
   priorityFiveWs.grade
   codeFiveWs.what[x]
   focusFiveWs.what[x]
   forFiveWs.subject[x], FiveWs.subject
   encounterFiveWs.context
   executionPeriodFiveWs.done[x]
   authoredOnFiveWs.recorded
   requesterFiveWs.author
   performerTypeFiveWs.actor
   ownerFiveWs.actor
   locationFiveWs.where[x]
   reasonCodeFiveWs.why[x]
   reasonReferenceFiveWs.why[x]

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

OpenMRSTask
Task
   reasonCodeEVN.7
   insuranceIN1/IN2