Electronic Medicinal Product Information (ePI) FHIR Implementation Guide
1.0.0 - trial-use International flag

This page is part of the Electronic Medicinal Product Information (ePI) FHIR Implementation Guide (v1.0.0: STU1) based on FHIR v5.0.0. This is the current published version. For a full list of available versions, see the Directory of published versions

Resource Profile: CompositionUvEpi - Mappings

Page standards status: Trial-use Maturity Level: 2

Mappings for the Composition-uv-epi resource profile.

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

CompositionUvEpi
CompositionEvent
   identifierEvent.identifier
   statusEvent.status
   typeEvent.code
   subjectEvent.subject
   encounterEvent.encounter
   dateEvent.occurrence[x]
   authorEvent.performer

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

CompositionUvEpi
Compositioninfrastructure.documents
   urlFiveWs.identifier
   identifierFiveWs.identifier
   versionFiveWs.version
   statusFiveWs.status
   typeFiveWs.class
   categoryFiveWs.class
   subjectFiveWs.subject[x]
   encounterFiveWs.context
   dateFiveWs.done[x]
   authorFiveWs.author
   attester
      partyFiveWs.witness
   section
      authorFiveWs.author
      section
         authorFiveWs.author

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

CompositionUvEpi
CompositionEntity, Role, or Act,Document[classCode="DOC" and moodCode="EVN" and isNormalAct()]
   textAct.text?
   containedN/A
   extensionN/A
   modifierExtensionN/A
   identifierDocument.id / Document.setId
      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
   statusinterim: .completionCode="IN" & ./statusCode[isNormalDatatype()]="active"; final: .completionCode="AU" && ./statusCode[isNormalDatatype()]="complete" and not(./inboundRelationship[typeCode="SUBJ" and isNormalActRelationship()]/source[subsumesCode("ActClass#CACT") and moodCode="EVN" and domainMember("ReviseComposition", code) and isNormalAct()]); amended: .completionCode="AU" && ./statusCode[isNormalDatatype()]="complete" and ./inboundRelationship[typeCode="SUBJ" and isNormalActRelationship()]/source[subsumesCode("ActClass#CACT") and moodCode="EVN" and domainMember("ReviseComposition", code) and isNormalAct() and statusCode="completed"]; withdrawn : .completionCode=NI && ./statusCode[isNormalDatatype()]="obsolete"
   type./code
   category.outboundRelationship[typeCode="COMP].target[classCode="LIST", moodCode="EVN"].code
   subject.participation[typeCode="SBJ"].role[typeCode="PAT"]
   encounterunique(highest(./outboundRelationship[typeCode="SUBJ" and isNormalActRelationship()], priorityNumber)/target[moodCode="EVN" and classCode=("ENC", "PCPR") and isNormalAct])
   date.effectiveTime[type="TS"]
   author.participation[typeCode="AUT"].role[classCode="ASSIGNED"]
   title./title
   attester.participation[typeCode="AUTHEN"].role[classCode="ASSIGNED"]
      idn/a
      extensionn/a
      modifierExtensionN/A
      modeunique(./modeCode)
      time./time[type="TS" and isNormalDatatype()]
      party./role[classCode="ASSIGNED" and isNormalRole]/player[determinerCode="INST" and classCode=("DEV", "PSN") and isNormalEntity()] or ./role[classCode="ASSIGNED" and isNormalRole and not(player)]/scoper[determinerCode="INST" and classCode="ORG" and isNormalEntity()]
   custodian.participation[typeCode="RCV"].role[classCode="CUST"].scoper[classCode="ORG" and determinerCode="INST"]
   relatesTo.outboundRelationship
   eventoutboundRelationship[typeCode="SUBJ"].target[classCode<'ACT']
      idn/a
      extensionn/a
      modifierExtensionN/A
      period.effectiveTime
      detail.outboundRelationship[typeCode="SUBJ"].target
   section./outboundRelationship[typeCode="COMP" and isNormalActRelationship()]/target[moodCode="EVN" and classCode="DOCSECT" and isNormalAct]
      idn/a
      extensionn/a
      modifierExtensionN/A
      title./title
      code./code
      author.participation[typeCode="AUT"].role[classCode="ASSIGNED"]
      text.text
      orderedBy.outboundRelationship[typeCode=COMP].sequenceNumber > 1
      entry.outboundRelationship[typeCode=COMP] or .participation[typeCode=SBJ]
      emptyReason.inboundRelationship[typeCode=SUBJ,code<ListEmptyReason].value[type=CD]
      section./outboundRelationship[typeCode="COMP" and isNormalActRelationship()]/target[moodCode="EVN" and classCode="DOCSECT" and isNormalAct]
         idn/a
         extensionn/a
         modifierExtensionN/A
         title./title
         code./code
         author.participation[typeCode="AUT"].role[classCode="ASSIGNED"]
         text.text
         orderedBy.outboundRelationship[typeCode=COMP].sequenceNumber > 1
         entry.outboundRelationship[typeCode=COMP] or .participation[typeCode=SBJ]
         emptyReason.inboundRelationship[typeCode=SUBJ,code<ListEmptyReason].value[type=CD]
         section./outboundRelationship[typeCode="COMP" and isNormalActRelationship()]/target[moodCode="EVN" and classCode="DOCSECT" and isNormalAct]

Mappings for CDA (R2) (http://hl7.org/v3/cda)

CompositionUvEpi
CompositionClinicalDocument
   identifier.setId
   version.versionNumber
   statusn/a
   type.code
   categoryn/a
   subject.recordTarget
   encounter.componentOf.encompassingEncounter
   date.effectiveTime
   author.author.assignedAuthor
   title.title
   attester.authenticator/.legalAuthenticator
      modeimplied by .authenticator/.legalAuthenticator
      time.authenticator.time
      party.authenticator.assignedEnttty
   custodian.custodian.assignedCustodian
   relatesTo.relatedDocument
   event.documentationOf.serviceEvent
      period.effectiveTime
      detailn/a
   section.component.structuredBody.component.section
      title.title
      code.code
      author.author.assignedAuthor
      focus.subject? (CDA did not differentiate between subject and focus)
      text.text
      orderedByn/a
      entry.entry
      emptyReasonn/a
      section.component.section
         title.title
         code.code
         author.author.assignedAuthor
         focus.subject? (CDA did not differentiate between subject and focus)
         text.text
         orderedByn/a
         entry.entry
         emptyReasonn/a
         section.component.section

Mappings for FHIR DocumentReference (http://hl7.org/fhir/documentreference)

CompositionUvEpi
Compositionwhen described by DocumentReference
   identifierDocumentReference.identifier
   versionDocumentReference.version
   statusDocumentReference.docStatus
   typeDocumentReference.type
   categoryDocumenttReference.category
   subjectDocumentReference.subject
   encounterDocumentReference.context
   dateDocumentReference.content.attachment.date, DocumentReference.date
   authorDocumentReference.author
   titleDocumentReference.description, DocumentReference.content.attachment.title
   attesterDocumentReference.attester
      modeDocumentReference.attester.mode
      timeDocumentReference.attester.time
      partyDocumentReference.attester.party
   custodianDocumentReference.custodian
   relatesToDocumentReference.relatesTo
   event
      periodDocumentReference.period
      detailDocumentReference.event