HL7 Version 2 to FHIR
1.0.0 - STU 1

HL7 Version 2 to FHIR - Downloaded Version 1.0.0 See the Directory of published versions

## ConceptMap: Datatype XTN to ContactPoint Map (Experimental)

Official URL: http://hl7.org/fhir/uv/v2mappings/ConceptMap/datatype-xtn-to-contactpoint | Version: 1.0.0
Standards status: Informative | Computable Name: DatatypeXTNToContactPoint
Copyright/Legal: Copyright (c) 2025, HL7 International, Inc., All Rights Reserved.

This ConceptMap represents a mapping from the HL7 V2 Datatype XTN to the FHIR ContactPoint Data Type.

This ConceptMap represents the mapping from the HL7 V2 XTN Data Type to the FHIR ContactPoint Data Type. See also the FHIR Shorthand or the CSV Source.

HL7 v2 | Condition (IF True, args) | HL7 FHIR | Comments
--- | --- | --- | ---
Sort Order | Identifier | Name | Data Type | Cardinality - Min | Cardinality - Max | Computable ANTLR | Computable FHIRPath | Narrative | FHIR Attribute | Proposed Extension | Data Type | Cardinality - Min | Cardinality - Max | Data Type Mapping | Vocabulary Mapping (IS, ID, CE, CEN, CWE) | Assignment
1 | XTN.1 | Telephone Number | ST | 0 | 1 | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.7 NOT VALUED AND XTN.12 NOT VALUED |  |  | ContactPoint.value |  | string | 0 | 1 |  |  |  |
2 | XTN.2 | Telecommunication Use Code | ID | 0 | 1 |  |  |  | ContactPoint.use |  | code | 0 | 1 | ID[Code] | TelecommunicationUseCode |  |
3 | XTN.3 | Telecommunication Equipment Type | ID | 1 | 1 |  |  |  | ContactPoint.system |  | code | 0 | 1 | ID[Code] | TelecommunicationEquipmentType |  |
3 | XTN.3 | Telecommunication Equipment Type | ID | 1 | 1 | IF XTN.3 NOT VALUED AND XTN.4 VALUED |  |  | ContactPoint.system |  | code | 0 | 1 | ID[Code] |  | "email" |
3 | XTN.3 | Telecommunication Equipment Type | ID | 1 | 1 | IF XTN.3 NOT VALUED AND XTN.4 NOT VALUED |  |  | ContactPoint.system.extension-data-absent-reason |  | code | 0 | 1 | ID[Code] |  | "unknown" | This element became required in v2.7, before that, it was optional. FHIR has a requirement that system be populated when a value is present. If the source v2 message does not contain an Equipment Type, a default system may be selected based on other information in the XTN instance (eg, if XTN.4 is valued, then the Equipment Type should default to "email). However, if neither XTN.3 nor XTN.4 are valued then it is unclear what the ContactPoint.system would be, thus the data absent reason would clearly indicate it is "unknown".
4 | XTN.4 | Communication Address | ST | 0 | 1 | IF XTN.3 IN ("Internet", "X.400") |  |  | ContactPoint.value |  | string | 0 | 1 |  |  |  |
5 | XTN.5 | Country Code | SNM | 0 | 1 |  |  |  | ContactPoint.extension.url |  | uri | 0 | 1 |  |  | "http://hl7.org/fhir/StructureDefinition/contactpoint-country" |
5 | XTN.5 | Country Code | SNM | 0 | 1 |  |  |  | ContactPoint.extension.valueString |  | string | 0 | 1 |  |  |  |
6 | XTN.6 | Area/City Code | SNM | 0 | 1 |  |  |  | ContactPoint.extension.url |  | uri | 0 | 1 |  |  | "http://hl7.org/fhir/StructureDefinition/contactpoint-area" |
6 | XTN.6 | Area/City Code | SNM | 0 | 1 |  |  |  | ContactPoint.extension.valueString |  | string | 0 | 1 |  |  |  |
7 | XTN.7 | Local Number | SNM | 0 | 1 | IF XTN.3 NOT IN ("Internet", "X.400") |  |  | ContactPoint.extension.url |  | uri | 0 | 1 |  |  | "http://hl7.org/fhir/StructureDefinition/contactpoint-local" |
7 | XTN.7 | Local Number | SNM | 0 | 1 | IF XTN.3 NOT IN ("Internet", "X.400") |  |  | ContactPoint.extension.valueString |  | string | 0 | 1 |  |  |  |
7 | XTN.7 | Local Number | SNM | 0 | 1 | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.5 NOT VALUED AND XTN.6 VALUED AND XTN.7 VALUED AND XTN.8 NOT VALUED |  |  | ContactPoint.value |  | string | 0 | 1 |  |  | XTN.6+" "+XTN.7 |
7 | XTN.7 | Local Number | SNM | 0 | 1 | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.5 VALUED AND XTN.6 VALUED AND XTN.7 VALUED AND XTN.8 NOT VALUED |  |  | ContactPoint.value |  | string | 0 | 1 |  |  | "+"+XTN.5+" "+XTN.6+" "+XTN.7 |
7 | XTN.7 | Local Number | SNM | 0 | 1 | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.5 VALUED AND XTN.6 VALUED AND XTN.7 VALUED AND XTN.8 VALUED |  |  | ContactPoint.value |  | string | 0 | 1 |  |  | "+"+XTN.5+" "+XTN.6+" "+XTN.7+" X"+XTN.8 |
7 | XTN.7 | Local Number | SNM | 0 | 1 | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.5 NOT VALUED AND XTN.6 VALUED AND XTN.7 VALUED AND XTN.8 VALUED |  |  | ContactPoint.value |  | string | 0 | 1 |  |  | XTN.6+" "+XTN.7+" X"+XTN.8 |
8 | XTN.8 | Extension | SNM | 0 | 1 |  |  |  | ContactPoint.extension.url |  | uri | 0 | 1 |  |  | "http://hl7.org/fhir/StructureDefinition/contactpoint-extension" |
8 | XTN.8 | Extension | SNM | 0 | 1 |  |  |  | ContactPoint.extension.valueString |  | string | 0 | 1 |  |  |  |
9 | XTN.9 | Any Text | ST | 0 | 1 |  |  |  |  | extension?-text | string | 0 | 1 |  |  |  |
10 | XTN.10 | Extension Prefix | ST | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
11 | XTN.11 | Speed Dial Code | ST | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
12 | XTN.12 | Unformatted Telephone number | ST | 0 | 1 | IF XTN.3 NOT IN ("Internet", "X.400") |  |  | ContactPoint.value |  | string | 0 | 1 |  |  |  |
13 | XTN.13 | Effective Start Date | DTM | 0 | 1 |  |  |  | ContactPoint.period.start |  | dateTime | 0 | 1 | DTM[DateTime] |  |  |
14 | XTN.14 | Expiration Date | DTM | 0 | 1 |  |  |  | ContactPoint.period.end |  | dateTime | 0 | 1 | DTM[DateTime] |  |  |
15 | XTN.15 | Expiration Reason | CWE | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
16 | XTN.16 | Protection Code | CWE | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
17 | XTN.17 | Shared Telecommunication Identifier | EI | 0 | 1 |  |  |  |  |  |  |  |  |  |  |  |
18 | XTN.18 | Preference Order | NM | 0 | 1 |  |  |  | ContactPoint.rank |  | positiveInt | 0 | 1 | NM[PositiveInt] |  |  |

Mapping from (not specified) to (not specified)

Group 1 Mapping from `unspecified code system` to `unspecified code system`

Source Concept Details | Relationship | Target Concept Details | Comment
Codes from | ComputableANTLR |  | Codes from |
XTN.1 | Telephone Number | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.7 NOT VALUED AND XTN.12 NOT VALUED | is equivalent to | value | value |
XTN.2 | Telecommunication Use Code |  | is equivalent to | use | use |
XTN.3 | Telecommunication Equipment Type |  | is equivalent to | system | system |
XTN.3 | Telecommunication Equipment Type | IF XTN.3 NOT VALUED AND XTN.4 VALUED | is equivalent to | system | system |
XTN.3 | Telecommunication Equipment Type | IF XTN.3 NOT VALUED AND XTN.4 NOT VALUED | is equivalent to | system.extension-data-absent-reason | system.extension-data-absent-reason | This element became required in v2.7, before that, it was optional. FHIR has a requirement that system be populated when a value is present. If the source v2 message does not contain an Equipment Type, a default system may be selected based on other information in the XTN instance (eg, if XTN.4 is valued, then the Equipment Type should default to "email). However, if neither XTN.3 nor XTN.4 are valued then it is unclear what the ContactPoint.system would be, thus the data absent reason would clearly indicate it is "unknown".
XTN.4 | Communication Address | IF XTN.3 IN ("Internet", "X.400") | is equivalent to | value | value |
XTN.5 | Country Code |  | is equivalent to | extension[1].url | extension[1].url |
XTN.5 | Country Code |  | is equivalent to | extension[1].valueString | extension[1].valueString |
XTN.6 | Area/City Code |  | is equivalent to | extension[2].url | extension[2].url |
XTN.6 | Area/City Code |  | is equivalent to | extension[2].valueString | extension[2].valueString |
XTN.7 | Local Number | IF XTN.3 NOT IN ("Internet", "X.400") | is equivalent to | extension[3].url | extension[3].url |
XTN.7 | Local Number | IF XTN.3 NOT IN ("Internet", "X.400") | is equivalent to | extension[3].valueString | extension[3].valueString |
XTN.7 | Local Number | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.5 NOT VALUED AND XTN.6 VALUED AND XTN.7 VALUED AND XTN.8 NOT VALUED | is equivalent to | value | value |
XTN.7 | Local Number | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.5 VALUED AND XTN.6 VALUED AND XTN.7 VALUED AND XTN.8 NOT VALUED | is equivalent to | value | value |
XTN.7 | Local Number | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.5 VALUED AND XTN.6 VALUED AND XTN.7 VALUED AND XTN.8 VALUED | is equivalent to | value | value |
XTN.7 | Local Number | IF XTN.3 NOT IN ("Internet", "X.400") AND XTN.5 NOT VALUED AND XTN.6 VALUED AND XTN.7 VALUED AND XTN.8 VALUED | is equivalent to | value | value |
XTN.8 | Extension |  | is equivalent to | extension[4].url | extension[4].url |
XTN.8 | Extension |  | is equivalent to | extension[4].valueString | extension[4].valueString |
XTN.12 | Unformatted Telephone number | IF XTN.3 NOT IN ("Internet", "X.400") | is equivalent to | value | value |
XTN.13 | Effective Start Date |  | is equivalent to | period.start | period.start |
XTN.14 | Expiration Date |  | is equivalent to | period.end | period.end |
XTN.18 | Preference Order |  | is equivalent to | rank | rank |

### Notes: