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