Moderne Patient:innenabrechnung und Datenkommunikation on FHIR (MOPED)
0.1.0 - ci-build

Moderne Patient:innenabrechnung und Datenkommunikation on FHIR (MOPED) - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: MOPEDPatientBund - Mappings

Draft as of 2024-10-31

Mappings for the MOPEDPatientBund resource profile.

Mappings for Allgemeiner Implementierungsleitfaden v3 (https://wiki.hl7.at/index.php?title=ILF:Allgemeiner_Implementierungsleitfaden_(Version_3))

MOPEDPatientBund
PatientClinicalDocument.recordTarget.patientRole
   identifier
   identifier (bPK)
      system.id.where(root='1.2.40.0.10.2.1.1.149').root
      value.id.where(root='1.2.40.0.10.2.1.1.149').extension
   identifier (localPatientId)
      system.id[0].root
      value.id[0].extension
   activen/a
   name.patient.name
      family.patient.name.family.dataString
      given.patient.name.given.dataString
      prefix.patient.name.prefix.dataString
      suffix.patient.name.suffix.dataString
   gender.patient.administrativeGenderCode.displayName
   deceased[x] (deceasedBoolean).patient.deceasedInd
   deceased[x] (deceasedDateTime).patient.deceasedTime
   address
      use.addr.use
      state.addr.state.dataString
      postalCode.addr.postalCode.dataString
      country.addr.country.dataString
   maritalStatus
      coding
         system.patient.maritalStatusCode.codeSystem
         code.patient.maritalStatusCode.code
         display.patient.maritalStatusCode.displayName
   multipleBirth[x] (multipleBirthBoolean)n/a
   multipleBirth[x] (multipleBirthInteger)n/a
   photon/a
   contact
      relationship
         coding
            systemClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.code.codeSystem
            codeClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.code.code
            displayClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.code.displayName
      name
         familyClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.associatedPerson.name.family
         givenClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.associatedPerson.name.given
      telecom
         systemClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.telecom.system
         valueClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.telecom.value
         useClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.telecom.use
      address
         useClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.use
         textClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.select(streetAddressLine.dataString + ' ' + postalCode.dataString + ' ' + city.dataString + ' ' + country.dataString)
         lineClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.streetAddressLine
         cityClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.city.dataString
         stateClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.state.dataString
         postalCodeClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.postalCode.dataString
         countryClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.country.dataString
      gendern/a
      organizationClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.scopingOrganization.id[0]
      periodn/a
   communication
      language.patient.languageCommunication.languageCode.code
      preferred.patient.languageCommunication.preferenceInd.value
   generalPractitionerClinicalDocument.participant.where(functionCode='PCP').associatedEntity.id
   managingOrganizationClinicalDocument.custodian.assignedCustodian.representedCustodianOrganization.id
   link
      othern/a
      typen/a

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

MOPEDPatientBund
Patientadministrative.individual
   identifierFiveWs.identifier
   identifier (bPK)FiveWs.identifier
   identifier (localPatientId)FiveWs.identifier
   activeFiveWs.status

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

MOPEDPatientBund
PatientEntity, Role, or Act,Patient[classCode=PAT]
   textAct.text?
   containedn/a
   extension
   extension (citizenship)
      idn/a
      extensionn/a
      extension (code)
         idn/a
         urln/a
         value[x]n/a
      extension (period)
         idn/a
         urln/a
         value[x]n/a
      urln/a
   modifierExtensionn/a
   identifierid
   identifier (bPK)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
         idn/a
         extensionn/a
         referencen/a
         typen/a
         identifier.identifier
         displayn/a
   identifier (localPatientId)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
   activestatusCode
   namename
      idn/a
      extension
      extension (data-absent-reason)ANY.nullFlavor
         idn/a
         urln/a
         value[x]n/a
      useunique(./use)
      text./formatted
      family./part[partType = FAM]
      given./part[partType = GIV]
      prefix./part[partType = PFX]
      suffix./part[partType = SFX]
      period./usablePeriod[type="IVL<TS>"]
   genderplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
   deceased[x]player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime
   deceased[x] (deceasedBoolean)player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime
   deceased[x] (deceasedDateTime)player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime
   addressn/a,AD
      idn/a
      extensionn/a
      useunique(./use)
      typeunique(./use)
      stateAD.part[parttype = STA]
      postalCodeAD.part[parttype = ZIP]
      countryAD.part[parttype = CNT]
   maritalStatusplayer[classCode=PSN]/maritalStatusCode
      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
   multipleBirth[x]player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber
   multipleBirth[x] (multipleBirthBoolean)player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber
   multipleBirth[x] (multipleBirthInteger)player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd, player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber
   photoplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/desc
   contactplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]
      idn/a
      extensionn/a
      modifierExtensionn/a
      relationshipcode
         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
      namename
         idn/a
         extensionn/a
         useunique(./use)
         text./formatted
         family./part[partType = FAM]
         given./part[partType = GIV]
         prefix./part[partType = PFX]
         suffix./part[partType = SFX]
         period./usablePeriod[type="IVL<TS>"]
      telecomtelecom
         idn/a
         extensionn/a
         system./scheme
         value./url
         useunique(./use)
         rankn/a
         period./usablePeriod[type="IVL<TS>"]
      addressn/a,AD
         idn/a
         extensionn/a
         useunique(./use)
         typeunique(./use)
         text./formatted
         lineAD.part[parttype = AL]
            extension (street)ADXP[partType=STR]
            extension (streetNumber)ADXP[partType=BNR]
            extension (floorDoorNumber)ADXP[partType=ADL]
         cityAD.part[parttype = CTY]
         stateAD.part[parttype = STA]
         postalCodeAD.part[parttype = ZIP]
         countryAD.part[parttype = CNT]
      genderplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
      organizationscoper
      periodeffectiveTime
   communicationLanguageCommunication
      idn/a
      extensionn/a
      modifierExtensionn/a
      languageplayer[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code
      preferredpreferenceInd
   generalPractitionersubjectOf.CareEvent.performer.AssignedEntity
   managingOrganizationscoper
   linkoutboundLink
      idn/a
      extensionn/a
      modifierExtensionn/a
      otherid
      typetypeCode

Mappings for Interface Pattern (http://hl7.org/fhir/interface)

MOPEDPatientBund
PatientParticipantLiving
   identifierParticipant.identifier
   identifier (bPK)Participant.identifier
   identifier (localPatientId)Participant.identifier
   activeParticipant.active
   nameParticipant.name
   genderParticipantLiving.gender
   photoParticipantLiving.photo
   communicationParticipantLiving.communication

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

MOPEDPatientBund
PatientClinicalDocument.recordTarget.patientRole
   identifier.id
   identifier (bPK).id
   identifier (localPatientId).id
   activen/a
   name.patient.name
   gender.patient.administrativeGenderCode
   deceased[x]n/a
   deceased[x] (deceasedBoolean)n/a
   deceased[x] (deceasedDateTime)n/a
   maritalStatus.patient.maritalStatusCode
   multipleBirth[x]n/a
   multipleBirth[x] (multipleBirthBoolean)n/a
   multipleBirth[x] (multipleBirthInteger)n/a
   photon/a
   contactn/a
      relationshipn/a
      namen/a
      telecomn/a
      gendern/a
      organizationn/a
      periodn/a
   communicationpatient.languageCommunication
      language.languageCode
      preferred.preferenceInd
   generalPractitionern/a
   managingOrganization.providerOrganization
   linkn/a
      othern/a
      typen/a

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

MOPEDPatientBund
Patient
   identifierPID-3
   identifier (bPK)PID-3
      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 (localPatientId)PID-3
      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)
   namePID-5, PID-9
      useXPN.7, but often indicated by which field contains the name
      textimplied by XPN.11
      familyXPN.1/FN.1
      givenXPN.2 + XPN.3
      prefixXPN.5
      suffixXPN/4
      periodXPN.13 + XPN.14
   genderPID-8
   deceased[x]PID-30 (bool) and PID-29 (datetime)
   deceased[x] (deceasedBoolean)PID-30 (bool) and PID-29 (datetime)
   deceased[x] (deceasedDateTime)PID-30 (bool) and PID-29 (datetime)
   addressXAD
      useXAD.7
      typeXAD.18
      stateXAD.4
      postalCodeXAD.5
      countryXAD.6
   maritalStatusPID-16
      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
   multipleBirth[x]PID-24 (bool), PID-25 (integer)
   multipleBirth[x] (multipleBirthBoolean)PID-24 (bool), PID-25 (integer)
   multipleBirth[x] (multipleBirthInteger)PID-24 (bool), PID-25 (integer)
   photoOBX-5 - needs a profile
   contact
      relationshipNK1-7, NK1-3
         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
      nameNK1-2
         useXPN.7, but often indicated by which field contains the name
         textimplied by XPN.11
         familyXPN.1/FN.1
         givenXPN.2 + XPN.3
         prefixXPN.5
         suffixXPN/4
         periodXPN.13 + XPN.14
      telecomNK1-5, NK1-6, NK1-40
         systemXTN.3
         valueXTN.1 (or XTN.12)
         useXTN.2 - but often indicated by field
         rankn/a
         periodn/a
      addressXAD
         useXAD.7
         typeXAD.18
         textXAD.1 + XAD.2 + XAD.3 + XAD.4 + XAD.5 + XAD.6
         lineXAD.1 + XAD.2 (note: XAD.1 and XAD.2 have different meanings for a company address than for a person address)
         cityXAD.3
         stateXAD.4
         postalCodeXAD.5
         countryXAD.6
      genderNK1-15
      organizationNK1-13, NK1-30, NK1-31, NK1-32, NK1-41
   communication
      languagePID-15, LAN-2
      preferredPID-15
   generalPractitionerPD1-4
   link
      otherPID-3, MRG-1

Mappings for LOINC code for the element (http://loinc.org)

MOPEDPatientBund
Patient