This page is part of the FHIR Specification (v1.6.0: STU 3 Ballot 4). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
2.22.3 Data Type Mappings
This page provides mappings for the data types. There are mappings to HL7 v2 , HL7 v3 , and (where appropriate) vCard.
Table of Contents
2.22.3.1 Primitive Types
See also Base Definition, Examples and Detailed Descriptions.
Data Type | V2 | RIM |
base64Binary | ~ED | BIN |
boolean | n/a | BL |
date | DT | TS |
dateTime | DTM | TS |
decimal | ~NM | REAL |
instant | DTM | TS |
integer | ~NM/~SI | INT |
string | ST | ST |
time | TM | n/a |
uri | n/a | URL |
2.22.3.2 Attachment
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.3 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Attachment | ED/RP |
contentType | ED.2+ED.3/RP.2+RP.3. Note conversion may be needed if old style values are being used |
language | |
data | ED.5 |
url | RP.1+RP.2 - if they refer to a URL (see v2.6) |
size | |
hash | |
title | |
creation | |
2.22.3.4 Mappings for RIM Mapping (http://hl7.org/v3)
Attachment | ED |
contentType | ./mediaType, ./charset |
language | ./language |
data | ./data |
url | ./reference/literal |
size | N/A (needs data type R3 proposal) |
hash | .integrityCheck[parent::ED/integrityCheckAlgorithm="SHA-1"] |
title | ./title/data |
creation | N/A (needs data type R3 proposal) |
2.22.3.5 Identifier
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.6 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Identifier | CX / EI (occasionally, more often EI maps to a resource id or a URL) |
use | N/A |
type | CX.5 |
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) |
2.22.3.7 Mappings for RIM Mapping (http://hl7.org/v3)
Identifier | II - see see identifier pattern at http://wiki.hl7.org/index.php?title=Common_Design_Patterns#Identifier_Pattern for relevant discussion. The Identifier class is a little looser than the v3 type II because it allows URIs as well as registered OIDs or GUIDs. Also maps to Role[classCode=IDENT] |
use | Role.code or implied by context |
type | Role.code or implied by context |
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 |
2.22.3.8 Mappings for ServD (http://www.omg.org/spec/ServD/1.0/)
Identifier | Identifier |
use | |
type | |
system | ./IdentifierType |
value | ./Value |
period | ./StartDate and ./EndDate |
assigner | ./IdentifierIssuingAuthority |
2.22.3.9 Coding
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.10 Mappings for Ontological RIM Mapping (http://hl7.org/orim)
Coding | fhir:Coding rdfs:subClassOf dt:CDCoding |
system | fhir:Coding.system rdfs:subPropertyOf dt:CDCoding.codeSystem |
version | fhir:Coding.version rdfs:subPropertyOf dt:CDCoding.codeSystemVersion |
code | fhir:Coding.code rdfs:subPropertyOf dt:CDCoding.code |
display | fhir:Coding.display rdfs:subPropertyOf dt:CDCoding.displayName |
userSelected | fhir:Coding.userSelected fhir:mapsTo dt:CDCoding.codingRationale. fhir:Coding.userSelected fhir:hasMap fhir:Coding.userSelected.map. fhir:Coding.userSelected.map a fhir:Map; fhir:target dt:CDCoding.codingRationale. fhir:Coding.userSelected\#true a [ fhir:source "true"; fhir:target dt:CDCoding.codingRationale\#O ] |
2.22.3.11 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Coding | CE/CNE/CWE subset one of the sets of component 1-3 or 4-6 |
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 |
2.22.3.12 Mappings for RIM Mapping (http://hl7.org/v3)
Coding | CV |
system | ./codeSystem |
version | ./codeSystemVersion |
code | ./code |
display | CV.displayName |
userSelected | CD.codingRationale |
2.22.3.13 CodeableConcept
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.14 Mappings for Ontological RIM Mapping (http://hl7.org/orim)
CodeableConcept | fhir:CodeableConcept rdfs:subClassOf dt:CD |
coding | fhir:CodeableConcept.coding rdfs:subPropertyOf dt:CD.coding |
text | fhir:CodeableConcept.text rdfs:subPropertyOf dt:CD.originalText |
2.22.3.15 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
CodeableConcept | CE/CNE/CWE |
coding | C*E.1-8, C*E.10-22 |
text | C*E.9. But note many systems use C*E.2 for this |
2.22.3.16 Mappings for RIM Mapping (http://hl7.org/v3)
CodeableConcept | CD |
coding | union(., ./translation) |
text | ./originalText[mediaType/code="text/plain"]/data |
2.22.3.17 Quantity
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.18 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Quantity | SN (see also Range) or CQ |
value | SN.2 / CQ - N/A |
comparator | SN.1 / CQ.1 |
unit | (see OBX.6 etc.) / CQ.2 |
system | (see OBX.6 etc.) / CQ.2 |
code | (see OBX.6 etc.) / CQ.2 |
2.22.3.19 Mappings for RIM Mapping (http://hl7.org/v3)
Quantity | PQ, IVL<PQ>, MO, CO, depending on the values |
value | PQ.value, CO.value, MO.value, IVL.high or IVL.low depending on the value |
comparator | IVL properties |
unit | PQ.unit |
system | CO.codeSystem, PQ.translation.codeSystem |
code | PQ.code, MO.currency, PQ.translation.code |
2.22.3.20 Range
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.21 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Range | NR and also possibly SN (but see also quantity) |
low | NR.1 |
high | NR.2 |
2.22.3.22 Mappings for RIM Mapping (http://hl7.org/v3)
Range | IVL<QTY[not(type="TS")]> [lowClosed="true" and highClosed="true"]or URG<QTY[not(type="TS")]> |
low | ./low |
high | ./high |
2.22.3.23 Ratio
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.24 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Ratio | N/A |
numerator | |
denominator | |
2.22.3.25 Mappings for RIM Mapping (http://hl7.org/v3)
Ratio | RTO |
numerator | .numerator |
denominator | .denominator |
2.22.3.26 Period
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.27 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Period | DR |
start | DR.1 |
end | DR.2 |
2.22.3.28 Mappings for RIM Mapping (http://hl7.org/v3)
Period | IVL<TS>[lowClosed="true" and highClosed="true"] or URG<TS>[lowClosed="true" and highClosed="true"] |
start | ./low |
end | ./high |
2.22.3.29 SampledData
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.30 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
SampledData | N/A (but see section 7.14 in v2.7) |
origin | |
period | |
factor | |
lowerLimit | |
upperLimit | |
dimensions | |
data | |
2.22.3.31 Mappings for RIM Mapping (http://hl7.org/v3)
SampledData | SLIST + GLIST |
origin | SLIST.origin |
period | GLIST.increment |
factor | SLIST.factor |
lowerLimit | N/A (use SLIST.digits.nullFlavor) |
upperLimit | N/A (use SLIST.digits.nullFlavor) |
dimensions | N/A (fixed to 1) |
data | SLIST.digits |
2.22.3.32 HumanName
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.33 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
HumanName | XPN |
use | XPN.7, but often indicated by which field contains the name |
text | implied by XPN.11 |
family | XPN.1 |
given | XPN.2 + XPN.3 |
prefix | XPN.5 |
suffix | XPN/4 |
period | XPN.13 + XPN.14 |
2.22.3.34 Mappings for RIM Mapping (http://hl7.org/v3)
HumanName | EN (actually, PN) |
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>"] |
2.22.3.35 Mappings for ServD (http://www.omg.org/spec/ServD/1.0/)
HumanName | ProviderName |
use | ./NamePurpose |
text | |
family | ./FamilyName |
given | ./GivenNames |
prefix | ./TitleCode |
suffix | |
period | ./StartDate and ./EndDate |
vCard Mappings
- HumanName.text = vCard "FN" field
- HumanName.use = use of the vCard "TYPE" parameter
- HumanName.family, .given, .prefix, .suffix = parts of vCard "N" field. Note that there is no FHIR equivalent for the poorly defined "additional" name field. In FHIR, given names go in "middle" names
- The vCard nickname corresponds to a name with the use "nickname"
2.22.3.36 Address
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.37 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
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 |
district | XAD.9 |
state | XAD.4 |
postalCode | XAD.5 |
country | XAD.6 |
period | XAD.12 / XAD.13 + XAD.14 |
2.22.3.38 Mappings for RIM Mapping (http://hl7.org/v3)
Address | AD |
use | unique(./use) |
type | unique(./use) |
text | ./formatted |
line | AD.part[parttype = AL] |
city | AD.part[parttype = CTY] |
district | AD.part[parttype = CNT | CPA] |
state | AD.part[parttype = STA] |
postalCode | AD.part[parttype = ZIP] |
country | AD.part[parttype = CNT] |
period | ./usablePeriod[type="IVL<TS>"] |
2.22.3.39 Mappings for vCard Mapping (http://w3.org/vcard)
Address | |
use | |
type | address type parameter |
text | address label parameter |
line | street |
city | locality |
district | |
state | region |
postalCode | code |
country | country |
period | |
2.22.3.40 Mappings for ServD (http://www.omg.org/spec/ServD/1.0/)
Address | Address |
use | ./AddressPurpose |
type | |
text | |
line | ./StreetAddress (newline delimitted) |
city | ./Jurisdiction |
district | |
state | ./Region |
postalCode | ./PostalIdentificationCode |
country | ./Country |
period | ./StartDate and ./EndDate |
2.22.3.41 ContactPoint
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.42 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
ContactPoint | XTN |
system | XTN.3 |
value | XTN.1 (or XTN.12) |
use | XTN.2 - but often indicated by field |
rank | n/a |
period | N/A |
2.22.3.43 Mappings for RIM Mapping (http://hl7.org/v3)
ContactPoint | TEL |
system | ./scheme |
value | ./url |
use | unique(./use) |
rank | n/a |
period | ./useablePeriod[type="IVL<TS>"] |
2.22.3.44 Mappings for ServD (http://www.omg.org/spec/ServD/1.0/)
ContactPoint | ContactPoint |
system | ./ContactPointType |
value | ./Value |
use | ./ContactPointPurpose |
rank | |
period | ./StartDate and ./EndDate |
2.22.3.45 Timing
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.46 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Timing | N/A |
event | |
repeat | |
bounds[x] | |
count | |
countMax | |
duration | |
durationMax | |
durationUnit | |
frequency | |
frequencyMax | |
period | |
periodMax | |
periodUnit | |
when | |
offset | |
code | |
2.22.3.47 Mappings for RIM Mapping (http://hl7.org/v3)
Timing | QSET<TS> (GTS) |
event | QLIST<TS> |
repeat | Implies PIVL or EIVL |
bounds[x] | IVL(TS) used in a QSI |
count | PIVL.count |
countMax | PIVL.count |
duration | PIVL.phase / EIVL.offset |
durationMax | PIVL.phase / EIVL.offset |
durationUnit | PIVL.phase.unit |
frequency | PIVL.phase / EIVL.offset |
frequencyMax | PIVL.phase |
period | PIVL.phase |
periodMax | PIVL.phase |
periodUnit | PIVL.phase.unit |
when | EIVL.event |
offset | |
code | QSC.code |
2.22.3.48 Signature
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.49 Annotation
See also Base Definition, Examples and Detailed Descriptions.
2.22.3.50 Mappings for HL7 v2 Mapping (http://hl7.org/v2)
Annotation | N/A |
author[x] | N/A |
time | N/A |
text | N/A |
2.22.3.51 Mappings for RIM Mapping (http://hl7.org/v3)
Annotation | Act |
author[x] | Act.participant[typeCode=AUT].role |
time | Act.effectiveTime |
text | Act.text |