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: MopedPatient - Mappings

Draft as of 2025-12-03

Mappings for the MopedPatient resource profile.

#### Mappings to Structures in this Implementation Guide

No Mappings Found

#### Mappings to other Structures

No Mappings Found

#### Other Mappings

Name | Allgemeiner Implementierungsleitfaden v3 | FiveWs Pattern Mapping | RIM Mapping | Interface Pattern | CDA (R2) | HL7 V2 Mapping | LOINC code for the element
--- | --- | --- | --- | --- | --- | --- | ---
Patient | ClinicalDocument.recordTarget.patientRole | administrative.individual | Entity Role or Act Patient[classCode=PAT] | ParticipantLiving | ClinicalDocument.recordTarget.patientRole |  |
id |  |  |  |  |  |  |
meta |  |  |  |  |  |  |
implicitRules |  |  |  |  |  |  |
language |  |  |  |  |  |  |
text |  |  | Act.text? |  |  |  |
contained |  |  | N/A |  |  |  |
Slices for extension |  |  |  |  |  |  |
extension:citizenship |  |  |  |  |  |  |
id |  |  | n/a |  |  |  |
Slices for extension |  |  | n/a |  |  |  |
extension:code |  |  |  |  |  |  |
id |  |  | n/a |  |  |  |
extension |  |  |  |  |  |  |
url |  |  | N/A |  |  |  |
value[x] |  |  | N/A |  |  |  |
extension:period |  |  |  |  |  |  |
id |  |  | n/a |  |  |  |
extension |  |  |  |  |  |  |
url |  |  | N/A |  |  |  |
value[x] |  |  | N/A |  |  |  |
url |  |  | N/A |  |  |  |
value[x] |  |  | N/A |  |  |  |
extension:PatientReligion |  |  |  |  |  |  |
id |  |  | n/a |  |  |  |
extension |  |  |  |  |  |  |
url |  |  | N/A |  |  |  |
value[x] |  |  | N/A |  |  |  |
extension:birthPlace |  |  |  |  |  |  |
id |  |  | n/a |  |  |  |
extension |  |  |  |  |  |  |
url |  |  | N/A |  |  |  |
value[x] |  |  | N/A |  |  |  |
modifierExtension |  |  | N/A |  |  |  |
Slices for identifier |  | FiveWs.identifier | id | Participant.identifier | .id | PID-3 |
identifier:socialSecurityNumber |  | FiveWs.identifier | id | Participant.identifier | .id | PID-3 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
use |  |  | Role.code or implied by context |  |  | N/A |
type |  |  | Role.code or implied by context |  |  | CX.5 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
coding |  |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
system |  |  | ./codeSystem |  |  | C*E.3 |
version |  |  | ./codeSystemVersion |  |  | C*E.7 |
code |  |  | ./code |  |  | C*E.1 |
display |  |  | CV.displayName |  |  | C*E.2 - but note this is not well followed |
userSelected |  |  | CD.codingRationale |  |  | Sometimes implied by being first |
text |  |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this |
system | .id[1].root |  | II.root or Role.id.root |  |  | CX.4 / EI-2-4 |
value | .id[1].extension |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  | CX.1 / EI.1 |
period |  |  | Role.effectiveTime or implied by context |  |  | CX.7 + CX.8 |
assigner |  |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  | CX.4 / (CX.4 CX.9 CX.10) |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
reference |  |  | N/A |  |  |  |
type |  |  | N/A |  |  |  |
identifier |  |  | .identifier |  |  |  |
display |  |  | N/A |  |  |  |
identifier:bPK |  | FiveWs.identifier | id | Participant.identifier | .id | PID-3 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
use |  |  | Role.code or implied by context |  |  | N/A |
type |  |  | Role.code or implied by context |  |  | CX.5 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
coding |  |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
system |  |  | ./codeSystem |  |  | C*E.3 |
version |  |  | ./codeSystemVersion |  |  | C*E.7 |
code |  |  | ./code |  |  | C*E.1 |
display |  |  | CV.displayName |  |  | C*E.2 - but note this is not well followed |
userSelected |  |  | CD.codingRationale |  |  | Sometimes implied by being first |
text |  |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this |
system | .id.where(root='1.2.40.0.10.2.1.1.149').root |  | II.root or Role.id.root |  |  | CX.4 / EI-2-4 |
value | .id.where(root='1.2.40.0.10.2.1.1.149').extension |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  | CX.1 / EI.1 |
period |  |  | Role.effectiveTime or implied by context |  |  | CX.7 + CX.8 |
assigner |  |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  | CX.4 / (CX.4 CX.9 CX.10) |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
reference |  |  | N/A |  |  |  |
type |  |  | N/A |  |  |  |
identifier |  |  | .identifier |  |  |  |
display |  |  | N/A |  |  |  |
identifier:localPatientId |  | FiveWs.identifier | id | Participant.identifier | .id | PID-3 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
use |  |  | Role.code or implied by context |  |  | N/A |
type |  |  | Role.code or implied by context |  |  | CX.5 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
coding |  |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
system |  |  | ./codeSystem |  |  | C*E.3 |
version |  |  | ./codeSystemVersion |  |  | C*E.7 |
code |  |  | ./code |  |  | C*E.1 |
display |  |  | CV.displayName |  |  | C*E.2 - but note this is not well followed |
userSelected |  |  | CD.codingRationale |  |  | Sometimes implied by being first |
text |  |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this |
system | .id[0].root |  | II.root or Role.id.root |  |  | CX.4 / EI-2-4 |
value | .id[0].extension |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  | CX.1 / EI.1 |
period |  |  | Role.effectiveTime or implied by context |  |  | CX.7 + CX.8 |
assigner |  |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  | CX.4 / (CX.4 CX.9 CX.10) |
active | n/a | FiveWs.status | statusCode | Participant.active | n/a |  |
name | .patient.name |  | name | Participant.name | .patient.name | PID-5 PID-9 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
use |  |  | unique(./use) |  |  | XPN.7 but often indicated by which field contains the name |
text |  |  | ./formatted |  |  | implied by XPN.11 |
family | .patient.name.family.dataString |  | ./part[partType = FAM] |  |  | XPN.1/FN.1 |
given | .patient.name.given.dataString |  | ./part[partType = GIV] |  |  | XPN.2 + XPN.3 |
prefix | .patient.name.prefix.dataString |  | ./part[partType = PFX] |  |  | XPN.5 |
suffix | .patient.name.suffix.dataString |  | ./part[partType = SFX] |  |  | XPN/4 |
period |  |  | ./usablePeriod[type="IVL<TS>"] |  |  | XPN.13 + XPN.14 |
telecom |  |  | telecom | ParticipantContactable.telecom | .telecom | PID-13 PID-14 PID-40 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
system | .telecom.value |  | ./scheme |  |  | XTN.3 |
value | .telecom.value |  | ./url |  |  | XTN.1 (or XTN.12) |
use | .telecom.use |  | unique(./use) |  |  | XTN.2 - but often indicated by field |
rank |  |  | n/a |  |  | n/a |
period |  |  | ./usablePeriod[type="IVL<TS>"] |  |  | N/A |
gender | .patient.administrativeGenderCode.displayName |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender | ParticipantLiving.gender | .patient.administrativeGenderCode | PID-8 |
id |  |  |  |  |  |  |
Slices for extension |  |  |  |  |  |  |
extension:AdministrativeGenderAddition |  |  |  |  |  |  |
value |  |  |  |  |  |  |
birthDate | .patient.birthTime.value |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime | ParticipantLiving.birthDate | .patient.birthTime | PID-7 | 21112-8
id |  |  |  |  |  |  |
Slices for extension |  |  |  |  |  |  |
extension:birthTime |  |  |  |  |  |  |
value |  |  |  |  |  |  |
Slices for deceased[x] |  |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime |  | n/a | PID-30 (bool) and PID-29 (datetime) |
deceased[x]:deceasedBoolean | .patient.deceasedInd |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime |  | n/a | PID-30 (bool) and PID-29 (datetime) |
deceased[x]:deceasedDateTime | .patient.deceasedTime |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedInd player[classCode=PSN|ANM and determinerCode=INSTANCE]/deceasedTime |  | n/a | PID-30 (bool) and PID-29 (datetime) |
address |  |  | addr | ParticipantContactable.address | .addr | PID-11 |
id |  |  | n/a |  |  |  |
Slices for extension |  |  | n/a |  |  |  |
extension:municipalityCode |  |  |  |  |  |  |
use | .addr.use |  | unique(./use) |  |  | XAD.7 |
type |  |  | unique(./use) |  |  | XAD.18 |
text | .addr.select(streetAddressLine.dataString + ' ' + postalCode.dataString + ' ' + city.dataString + ' ' + country.dataString) |  | ./formatted |  |  | XAD.1 + XAD.2 + XAD.3 + XAD.4 + XAD.5 + XAD.6 |
line | .addr.streetAddressLine |  | AD.part[parttype = AL] |  |  | XAD.1 and XAD.2 have different meanings for a company address than for a person address) |
id |  |  |  |  |  |  |
Slices for extension |  |  |  |  |  |  |
extension:street |  |  | ADXP[partType=STR] |  |  |  |
extension:streetNumber |  |  | ADXP[partType=BNR] |  |  |  |
extension:floorDoorNumber |  |  | ADXP[partType=ADL] |  |  |  |
extension:additionalInformation |  |  |  |  |  |  |
value |  |  |  |  |  |  |
city | .addr.city.dataString |  | AD.part[parttype = CTY] |  |  | XAD.3 |
district |  |  | AD.part[parttype = CNT | CPA] |  |  | XAD.9 |
state | .addr.state.dataString |  | AD.part[parttype = STA] |  |  | XAD.4 |
postalCode | .addr.postalCode.dataString |  | AD.part[parttype = ZIP] |  |  | XAD.5 |
country | .addr.country.dataString |  | AD.part[parttype = CNT] |  |  | XAD.6 |
period |  |  | ./usablePeriod[type="IVL<TS>"] |  |  | XAD.12 / XAD.13 + XAD.14 |
maritalStatus |  |  | player[classCode=PSN]/maritalStatusCode |  | .patient.maritalStatusCode | PID-16 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
coding |  |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
system | .patient.maritalStatusCode.codeSystem |  | ./codeSystem |  |  | C*E.3 |
version |  |  | ./codeSystemVersion |  |  | C*E.7 |
code | .patient.maritalStatusCode.code |  | ./code |  |  | C*E.1 |
display | .patient.maritalStatusCode.displayName |  | CV.displayName |  |  | C*E.2 - but note this is not well followed |
userSelected |  |  | CD.codingRationale |  |  | Sometimes implied by being first |
text |  |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this |
Slices for multipleBirth[x] |  |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber |  | n/a | PID-24 (bool) PID-25 (integer) |
multipleBirth[x]:multipleBirthBoolean | n/a |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber |  | n/a | PID-24 (bool) PID-25 (integer) |
multipleBirth[x]:multipleBirthInteger | n/a |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthInd player[classCode=PSN|ANM and determinerCode=INSTANCE]/multipleBirthOrderNumber |  | n/a | PID-24 (bool) PID-25 (integer) |
photo | n/a |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/desc | ParticipantLiving.photo | n/a | OBX-5 - needs a profile |
contact |  |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON] |  | n/a |  |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
modifierExtension |  |  | N/A |  |  |  |
relationship |  |  | code |  | n/a | NK1-7 NK1-3 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
coding |  |  | union(. ./translation) |  |  | C*E.1-8 C*E.10-22 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
system | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.code.codeSystem |  | ./codeSystem |  |  | C*E.3 |
version |  |  | ./codeSystemVersion |  |  | C*E.7 |
code | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.code.code |  | ./code |  |  | C*E.1 |
display | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.code.displayName |  | CV.displayName |  |  | C*E.2 - but note this is not well followed |
userSelected |  |  | CD.codingRationale |  |  | Sometimes implied by being first |
text |  |  | ./originalText[mediaType/code="text/plain"]/data |  |  | C*E.9. But note many systems use C*E.2 for this |
name |  |  | name |  | n/a | NK1-2 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
use |  |  | unique(./use) |  |  | XPN.7 but often indicated by which field contains the name |
text |  |  | ./formatted |  |  | implied by XPN.11 |
family | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.associatedPerson.name.family |  | ./part[partType = FAM] |  |  | XPN.1/FN.1 |
given | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.associatedPerson.name.given |  | ./part[partType = GIV] |  |  | XPN.2 + XPN.3 |
prefix |  |  | ./part[partType = PFX] |  |  | XPN.5 |
suffix |  |  | ./part[partType = SFX] |  |  | XPN/4 |
period |  |  | ./usablePeriod[type="IVL<TS>"] |  |  | XPN.13 + XPN.14 |
telecom |  |  | telecom |  | n/a | NK1-5 NK1-6 NK1-40 |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
system | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.telecom.system |  | ./scheme |  |  | XTN.3 |
value | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.telecom.value |  | ./url |  |  | XTN.1 (or XTN.12) |
use | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.telecom.use |  | unique(./use) |  |  | XTN.2 - but often indicated by field |
rank |  |  | n/a |  |  | n/a |
period |  |  | ./usablePeriod[type="IVL<TS>"] |  |  | N/A |
address |  |  | addr |  | n/a | NK1-4 |
id |  |  | n/a |  |  |  |
Slices for extension |  |  | n/a |  |  |  |
extension:municipalityCode |  |  |  |  |  |  |
use | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.use |  | unique(./use) |  |  | XAD.7 |
type |  |  | unique(./use) |  |  | XAD.18 |
text | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.select(streetAddressLine.dataString + ' ' + postalCode.dataString + ' ' + city.dataString + ' ' + country.dataString) |  | ./formatted |  |  | XAD.1 + XAD.2 + XAD.3 + XAD.4 + XAD.5 + XAD.6 |
line | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.streetAddressLine |  | AD.part[parttype = AL] |  |  | XAD.1 and XAD.2 have different meanings for a company address than for a person address) |
id |  |  |  |  |  |  |
Slices for extension |  |  |  |  |  |  |
extension:street |  |  | ADXP[partType=STR] |  |  |  |
extension:streetNumber |  |  | ADXP[partType=BNR] |  |  |  |
extension:floorDoorNumber |  |  | ADXP[partType=ADL] |  |  |  |
extension:additionalInformation |  |  |  |  |  |  |
value |  |  |  |  |  |  |
city | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.city.dataString |  | AD.part[parttype = CTY] |  |  | XAD.3 |
district |  |  | AD.part[parttype = CNT | CPA] |  |  | XAD.9 |
state | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.state.dataString |  | AD.part[parttype = STA] |  |  | XAD.4 |
postalCode | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.postalCode.dataString |  | AD.part[parttype = ZIP] |  |  | XAD.5 |
country | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.addr.country.dataString |  | AD.part[parttype = CNT] |  |  | XAD.6 |
period |  |  | ./usablePeriod[type="IVL<TS>"] |  |  | XAD.12 / XAD.13 + XAD.14 |
gender | n/a |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender |  | n/a | NK1-15 |
id |  |  |  |  |  |  |
Slices for extension |  |  |  |  |  |  |
extension:AdministrativeGenderAddition |  |  |  |  |  |  |
value |  |  |  |  |  |  |
organization | ClinicalDocument.participant.where(associatedEntity.classCode='ECON').associatedEntity.scopingOrganization.id[0] |  | scoper |  | n/a | NK1-13 NK1-30 NK1-31 NK1-32 NK1-41 |
period | n/a |  | effectiveTime |  | n/a |  |
communication |  |  | LanguageCommunication | ParticipantLiving.communication | patient.languageCommunication |  |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
modifierExtension |  |  | N/A |  |  |  |
language | .patient.languageCommunication.languageCode.code |  | player[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code |  | .languageCode | PID-15 LAN-2 |
preferred | .patient.languageCommunication.preferenceInd.value |  | preferenceInd |  | .preferenceInd | PID-15 |
generalPractitioner | ClinicalDocument.participant.where(functionCode='PCP').associatedEntity.id |  | subjectOf.CareEvent.performer.AssignedEntity |  | n/a | PD1-4 |
managingOrganization | ClinicalDocument.custodian.assignedCustodian.representedCustodianOrganization.id |  | scoper |  | .providerOrganization |  |
link |  |  | outboundLink |  | n/a |  |
id |  |  | n/a |  |  |  |
extension |  |  | n/a |  |  |  |
modifierExtension |  |  | N/A |  |  |  |
other | n/a |  | id |  | n/a | PID-3 MRG-1 |
type | n/a |  | typeCode |  | n/a |  |
Documentation for this format