HL7 FHIR Implementation Guide: Rwanda HIV
0.1.0 - ci-build International flag

HL7 FHIR Implementation Guide: Rwanda HIV, published by Jembi Health Systems. 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/openhie/Rwanda-HIV/ and changes regularly. See the Directory of published versions

Resource Profile: VLSpecimen - Mappings

Active as of 2024-10-11

Mappings for the viral-load-specimen resource profile.

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

VLSpecimen
Specimenclinical.diagnostics
   identifierFiveWs.identifier
   identifier (appSampleCode)FiveWs.identifier
   identifier (remoteSampleCode)FiveWs.identifier
   identifier (sampleCode)FiveWs.identifier
   identifier (uniqueId)FiveWs.identifier
   accessionIdentifierFiveWs.identifier
   statusFiveWs.status
   typeFiveWs.what[x]
   subjectFiveWs.subject[x]
   receivedTimeFiveWs.done[x]
   requestFiveWs.why[x]
   feature
      typeFiveWs.what[x]
   collection
      collectorFiveWs.actor
      collected[x]FiveWs.init
      collected[x] (collectedDateTime)FiveWs.init
      durationFiveWs.init
   container
      locationFiveWs.where[x]

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

VLSpecimen
SpecimenEntity, Role, or Act,Role[classCode=SPEC]
   textAct.text?
   containedN/A
   modifierExtensionN/A
   identifier.id
   identifier (appSampleCode).id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
         idn/a
         extensionn/a
         codingunion(., ./translation)
            idn/a
            extensionn/a
            system./codeSystem
            version./codeSystemVersion
            code./code
            displayCV.displayName
            userSelectedCD.codingRationale
         text./originalText[mediaType/code="text/plain"]/data
      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
   identifier (remoteSampleCode).id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
         idn/a
         extensionn/a
         codingunion(., ./translation)
            idn/a
            extensionn/a
            system./codeSystem
            version./codeSystemVersion
            code./code
            displayCV.displayName
            userSelectedCD.codingRationale
         text./originalText[mediaType/code="text/plain"]/data
      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
   identifier (sampleCode).id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
         idn/a
         extensionn/a
         codingunion(., ./translation)
            idn/a
            extensionn/a
            system./codeSystem
            version./codeSystemVersion
            code./code
            displayCV.displayName
            userSelectedCD.codingRationale
         text./originalText[mediaType/code="text/plain"]/data
      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
   identifier (uniqueId).id
      idn/a
      extensionn/a
      useRole.code or implied by context
      typeRole.code or implied by context
         idn/a
         extensionn/a
         codingunion(., ./translation)
            idn/a
            extensionn/a
            system./codeSystem
            version./codeSystemVersion
            code./code
            displayCV.displayName
            userSelectedCD.codingRationale
         text./originalText[mediaType/code="text/plain"]/data
      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
   accessionIdentifier.participation[typeCode=SBJ].act[classCode=ACSN, moodCode=EVN].id
   statusstatus
   type.code
      idn/a
      extensionn/a
      codingunion(., ./translation)
      text./originalText[mediaType/code="text/plain"]/data
   subject.scoper or .scoper.playsRole
   receivedTime.participation[typeCode=SBJ].act[code=SPCREC, moodCode=EVN].effectiveTime
   parent.scoper (if parent) .player.scopesRole[classCode=SPEC].player (if child)
   requestoutboundRelationship[typeCode=FLFS].target
   feature.player.scopingRole[classCode=FEAT].scoper
      idn/a
      extensionn/a
      modifierExtensionN/A
      type.code
      description.text
   collection.participation[typeCode=SBJ].act[classCode=SPECCOLLECT, moodCode=EVN]
      idn/a
      extensionn/a
      modifierExtensionN/A
      collector.participation[typeCode=PFM].role
      collected[x].effectiveTime
      collected[x] (collectedDateTime).effectiveTime
      quantity.participation[typeCode=SBJ].role[classCode=SPEC].player.quantity
      method.methodCode
      deviceparticipation[typeCode=DEV]
      bodySite.targetSiteCode
   processing.participation[typeCode=SBJ].act[code=SPCTRT, moodCode=EVN]
      idn/a
      extensionn/a
      modifierExtensionN/A
      description.text
      method.code
      additive.participation[typeCode=CSM].role[classCode=ADTV].code
      time[x].effectiveTime
      time[x] (timeDateTime).effectiveTime
   container.player.scopingRole[classCode=CONT].scoper
      idn/a
      extensionn/a
      modifierExtensionN/A
      deviceparticipation[typeCode=DEV]
      location.participation[typeCode=LOC].role
      specimenQuantity.playedRole[classCode=CONT].quantity
   note.inboundRelationship[typeCode=SUBJ].source[classCode=OBS, moodCode=EVN, code="annotation"].value

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

VLSpecimen
Specimen
   identifierSPM-2
   identifier (appSampleCode)SPM-2
      useN/A
      typeCX.5
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            versionC*E.7
            codeC*E.1
            displayC*E.2 - but note this is not well followed
            userSelectedSometimes implied by being first
         textC*E.9. But note many systems use C*E.2 for this
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      assignerCX.4 / (CX.4,CX.9,CX.10)
   identifier (remoteSampleCode)SPM-2
      useN/A
      typeCX.5
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            versionC*E.7
            codeC*E.1
            displayC*E.2 - but note this is not well followed
            userSelectedSometimes implied by being first
         textC*E.9. But note many systems use C*E.2 for this
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      assignerCX.4 / (CX.4,CX.9,CX.10)
   identifier (sampleCode)SPM-2
      useN/A
      typeCX.5
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            versionC*E.7
            codeC*E.1
            displayC*E.2 - but note this is not well followed
            userSelectedSometimes implied by being first
         textC*E.9. But note many systems use C*E.2 for this
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      assignerCX.4 / (CX.4,CX.9,CX.10)
   identifier (uniqueId)SPM-2
      useN/A
      typeCX.5
         codingC*E.1-8, C*E.10-22
            systemC*E.3
            versionC*E.7
            codeC*E.1
            displayC*E.2 - but note this is not well followed
            userSelectedSometimes implied by being first
         textC*E.9. But note many systems use C*E.2 for this
      systemCX.4 / EI-2-4
      valueCX.1 / EI.1
      periodCX.7 + CX.8
      assignerCX.4 / (CX.4,CX.9,CX.10)
   accessionIdentifierSPM-30 (v2.7+)
   statusSPM-20
   typeSPM-4 and possibly SPM-5
      codingC*E.1-8, C*E.10-22
      textC*E.9. But note many systems use C*E.2 for this
   receivedTimeSPM-18
   requestORC? OBR-2/3?
   roleSPM-10
   collectionSPM-14
      collectorPRT
      collected[x]SPM-17
      collected[x] (collectedDateTime)SPM-17
      quantitySPM-12
      methodSPM-7
      deviceSPM-14
      bodySiteSPM-8 and SPM-9
      fastingStatus[x]OBR-
   processing
      additiveSPM-6
   container
      specimenQuantitySAC-23 (value) SAC-24 (units
   conditionSPM-24
   noteOBX