CH ELM (R4)
1.16.0 - ci-build Switzerland flag

CH ELM (R4), published by Federal Office of Public Health FOPH. This guide is not an authorized publication; it is the continuous build for version 1.16.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/ahdis/ch-elm/ and changes regularly. See the Directory of published versions

Resource Profile: CH ELM Patient VCT - Mappings

Active as of 2026-10-22

Mappings for the ChElmPatientVCT resource profile.

Mappings to Structures in this Implementation Guide

No Mappings Found

Mappings to other Structures

No Mappings Found

Other Mappings

NameeCH-StandardsRIM MappingCDA (R2)FiveWs Pattern MappingHL7 v2 MappingLOINC code for the elementdoco
Patient
Patient[classCode=PAT]
ClinicalDocument.recordTarget.patientRole
Patient / id
Patient / meta
Patient / implicitRules
Patient / language
Patient / text
Act.text?
Patient / contained
N/A
Patient / Slices for extension
Patient / Slices for extension / extension:placeOfBirth
  • placeOfBirth BFS-322
  • BFS-323
  • BFS 324
Patient / Slices for extension / extension:placeOfOrigin
  • placeOfOrigin
  • BFS-42
Patient / Slices for extension / extension:citizenship
nationalityData - Staatsangehörigkeit/Nationalité
Patient / Slices for extension / extension:religion
  • religion
  • BFS-711
Patient / modifierExtension
N/A
Patient / Slices for identifier
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:EPR-SPID
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:AHVN13
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:LocalPid
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:LocalPid / id
n/a
Patient / Slices for identifier / identifier:LocalPid / extension
n/a
Patient / Slices for identifier / identifier:LocalPid / use
Role.code or implied by context
N/A
Patient / Slices for identifier / identifier:LocalPid / type
Role.code or implied by context
CX.5
Patient / Slices for identifier / identifier:LocalPid / system
II.root or Role.id.root
CX.4 / EI-2-4
Patient / Slices for identifier / identifier:LocalPid / value
II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
CX.1 / EI.1
Patient / Slices for identifier / identifier:LocalPid / period
Role.effectiveTime or implied by context
CX.7 + CX.8
Patient / Slices for identifier / identifier:LocalPid / 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)
Patient / Slices for identifier / identifier:insuranceCardNumber
id
.id
FiveWs.identifier
PID-3
Patient / Slices for identifier / identifier:IDN
id
.id
FiveWs.identifier
PID-3
Patient / active
statusCode
n/a
FiveWs.status
Patient / name
nameData
name
.patient.name
  • PID-5
  • PID-9
Patient / name / id
n/a
Patient / name / Slices for extension
n/a
Patient / name / Slices for extension / extension:vctcode
Patient / name / Slices for extension / extension:hivcode
Patient / name / use
unique(./use)
  • XPN.7
  • but often indicated by which field contains the name
Patient / name / text
./formatted
implied by XPN.11
Patient / name / family
lastName
./part[partType = FAM]
XPN.1/FN.1
Patient / name / family / id
Patient / name / family / Slices for extension
Patient / name / family / Slices for extension / extension:ech11name
  • officialName
  • originalName
  • allianceName
  • nameOnForeignPassport
  • aliasName
  • otherName
  • declaredForeignName
Patient / name / family / Slices for extension / extension:dataabsentreason
ANY.nullFlavor
Patient / name / family / value
Patient / name / given
firstName equivalent to callName of eCH-0011
./part[partType = GIV]
XPN.2 + XPN.3
Patient / name / given / id
Patient / name / given / Slices for extension
Patient / name / given / Slices for extension / extension:ech11firstname
  • officialFirstName
  • callName
  • allianceName
  • firstNameOnForeignPassport
  • declaredForeignFirstName
Patient / name / given / Slices for extension / extension:dataabsentreason
ANY.nullFlavor
Patient / name / given / value
Patient / name / prefix
  • mrMrs
  • title
./part[partType = PFX]
XPN.5
Patient / name / prefix / id
Patient / name / prefix / Slices for extension
Patient / name / prefix / Slices for extension / extension:salutationandtitle
ENXP.qualifier
Patient / name / prefix / value
Patient / name / suffix
./part[partType = SFX]
XPN/4
Patient / name / period
./usablePeriod[type="IVL<TS>"]
XPN.13 + XPN.14
Patient / Slices for telecom
Contact
telecom
.telecom
  • PID-13
  • PID-14
  • PID-40
Patient / Slices for telecom / telecom:email
email
telecom
.telecom
  • PID-13
  • PID-14
  • PID-40
Patient / Slices for telecom / telecom:phone
phone
telecom
.telecom
  • PID-13
  • PID-14
  • PID-40
Patient / Slices for telecom / telecom:internet
internet
telecom
.telecom
  • PID-13
  • PID-14
  • PID-40
Patient / gender
  • sex. sexType
  • BFS-33
  • //fhir.ch/ig/ch-core/ConceptMap/sex-ech11-to-fhir
player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
.patient.administrativeGenderCode
PID-8
Patient / birthDate
  • birthData
  • BFS-31
player[classCode=PSN|ANM and determinerCode=INSTANCE]/birthTime
.patient.birthTime
PID-7
21112-8
Patient / birthDate / id
Patient / birthDate / Slices for extension
Patient / birthDate / Slices for extension / extension:dataabsentreason
ANY.nullFlavor
Patient / birthDate / value
Patient / deceased[x]
  • deathData
  • deathPeriod
  • dateFrom
  • BFS-361
  • 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)
Patient / Slices for address
addr
.addr
PID-11
Patient / Slices for address / address:home
addr
.addr
PID-11
Patient / Slices for address / address:home / id
n/a
Patient / Slices for address / address:home / extension
n/a
Patient / Slices for address / address:home / use
unique(./use)
XAD.7
Patient / Slices for address / address:home / type
unique(./use)
XAD.18
Patient / Slices for address / address:home / text
./formatted
XAD.1 + XAD.2 + XAD.3 + XAD.4 + XAD.5 + XAD.6
Patient / Slices for address / address:home / line
AD.part[parttype = AL]
XAD.1 and XAD.2 have different meanings for a company address than for a person address)
Patient / Slices for address / address:home / city
town
AD.part[parttype = CTY]
XAD.3
Patient / Slices for address / address:home / city / id
Patient / Slices for address / address:home / city / Slices for extension
Patient / Slices for address / address:home / city / Slices for extension
Patient / Slices for address / address:home / city / Slices for extension / extension:bfs
Patient / Slices for address / address:home / city / value
Patient / Slices for address / address:home / district
locality
AD.part[parttype = CNT | CPA]
XAD.9
Patient / Slices for address / address:home / state
locality
AD.part[parttype = STA]
XAD.4
Patient / Slices for address / address:home / postalCode
  • swissZipCode
  • swissZipCodeAddOn
  • swissZipCodeId
  • foreignZipCode
AD.part[parttype = ZIP]
XAD.5
Patient / Slices for address / address:home / country
country
AD.part[parttype = CNT]
XAD.6
Patient / Slices for address / address:home / country / id
Patient / Slices for address / address:home / country / Slices for extension
Patient / Slices for address / address:home / country / Slices for extension
Patient / Slices for address / address:home / country / Slices for extension / extension:countrycode
SC.code
Patient / Slices for address / address:home / country / Slices for extension / extension:countrycode / id
n/a
Patient / Slices for address / address:home / country / Slices for extension / extension:countrycode / extension
Patient / Slices for address / address:home / country / Slices for extension / extension:countrycode / url
N/A
Patient / Slices for address / address:home / country / Slices for extension / extension:countrycode / value[x]
N/A
Patient / Slices for address / address:home / country / Slices for extension / extension:country-deprecated
SC.code
Patient / Slices for address / address:home / country / Slices for extension / extension:country-deprecated / id
n/a
Patient / Slices for address / address:home / country / Slices for extension / extension:country-deprecated / extension
Patient / Slices for address / address:home / country / Slices for extension / extension:country-deprecated / url
N/A
Patient / Slices for address / address:home / country / Slices for extension / extension:country-deprecated / value[x]
N/A
Patient / Slices for address / address:home / country / value
Patient / Slices for address / address:home / period
./usablePeriod[type="IVL<TS>"]
XAD.12 / XAD.13 + XAD.14
Patient / maritalStatus
  • maritalData
  • BFS-341
  • //fhir.ch/ig/ch-core/ConceptMap/maritalstatus-ech11-to-fhir
player[classCode=PSN]/maritalStatusCode
.patient.maritalStatusCode
PID-16
Patient / maritalStatus / id
n/a
Patient / maritalStatus / Slices for extension
n/a
Patient / maritalStatus / Slices for extension / extension:maritalDataSeparation
separation - Trennung BFS-343
Patient / maritalStatus / coding
  • union(.
  • ./translation)
  • C*E.1-8
  • C*E.10-22
Patient / maritalStatus / text
./originalText[mediaType/code="text/plain"]/data
C*E.9. But note many systems use C*E.2 for this
Patient / 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)
Patient / photo
player[classCode=PSN|ANM and determinerCode=INSTANCE]/desc
n/a
OBX-5 - needs a profile
Patient / Slices for contact
player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]
n/a
Patient / Slices for contact / contact:All Slices
Patient / Slices for contact / contact:All Slices / id
n/a
Patient / Slices for contact / contact:All Slices / extension
n/a
Patient / Slices for contact / contact:All Slices / modifierExtension
N/A
Patient / Slices for contact / contact:All Slices / relationship
code
n/a
  • NK1-7
  • NK1-3
Patient / Slices for contact / contact:All Slices / name
name
n/a
NK1-2
Patient / Slices for contact / contact:All Slices / telecom
telecom
n/a
  • NK1-5
  • NK1-6
  • NK1-40
Patient / Slices for contact / contact:All Slices / address
addr
n/a
NK1-4
Patient / Slices for contact / contact:All Slices / gender
player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
n/a
NK1-15
Patient / Slices for contact / contact:All Slices / organization
scoper
n/a
  • NK1-13
  • NK1-30
  • NK1-31
  • NK1-32
  • NK1-41
Patient / Slices for contact / contact:All Slices / period
effectiveTime
n/a
Patient / Slices for contact / contact:contact
  • contactData
  • BFS-61
player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]
n/a
Patient / Slices for contact / contact:contact / id
n/a
Patient / Slices for contact / contact:contact / extension
n/a
Patient / Slices for contact / contact:contact / modifierExtension
N/A
Patient / Slices for contact / contact:contact / relationship
code
n/a
  • NK1-7
  • NK1-3
Patient / Slices for contact / contact:contact / name
name
n/a
NK1-2
Patient / Slices for contact / contact:contact / telecom
telecom
n/a
  • NK1-5
  • NK1-6
  • NK1-40
Patient / Slices for contact / contact:contact / address
addr
n/a
NK1-4
Patient / Slices for contact / contact:contact / gender
player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
n/a
NK1-15
Patient / Slices for contact / contact:contact / organization
scoper
n/a
  • NK1-13
  • NK1-30
  • NK1-31
  • NK1-32
  • NK1-41
Patient / Slices for contact / contact:contact / period
effectiveTime
n/a
Patient / Slices for contact / contact:nameOfParent
nameOfParent
player[classCode=PSN|ANM and determinerCode=INSTANCE]/scopedRole[classCode=CON]
n/a
Patient / Slices for contact / contact:nameOfParent / id
n/a
Patient / Slices for contact / contact:nameOfParent / extension
n/a
Patient / Slices for contact / contact:nameOfParent / modifierExtension
N/A
Patient / Slices for contact / contact:nameOfParent / relationship
code
n/a
  • NK1-7
  • NK1-3
Patient / Slices for contact / contact:nameOfParent / name
name
n/a
NK1-2
Patient / Slices for contact / contact:nameOfParent / telecom
telecom
n/a
  • NK1-5
  • NK1-6
  • NK1-40
Patient / Slices for contact / contact:nameOfParent / address
addr
n/a
NK1-4
Patient / Slices for contact / contact:nameOfParent / gender
player[classCode=PSN|ANM and determinerCode=INSTANCE]/administrativeGender
n/a
NK1-15
Patient / Slices for contact / contact:nameOfParent / organization
scoper
n/a
  • NK1-13
  • NK1-30
  • NK1-31
  • NK1-32
  • NK1-41
Patient / Slices for contact / contact:nameOfParent / period
effectiveTime
n/a
Patient / communication
  • languageOfCorrespondence: de
  • fr
  • it
  • rm = Rhaeto-Romance
  • en
  • other languages ISO 639-1
LanguageCommunication
patient.languageCommunication
Patient / communication / id
n/a
Patient / communication / extension
n/a
Patient / communication / modifierExtension
N/A
Patient / communication / language
player[classCode=PSN|ANM and determinerCode=INSTANCE]/languageCommunication/code
.languageCode
  • PID-15
  • LAN-2
Patient / communication / preferred
preferenceInd
.preferenceInd
PID-15
Patient / generalPractitioner
subjectOf.CareEvent.performer.AssignedEntity
n/a
PD1-4
Patient / managingOrganization
scoper
.providerOrganization
Patient / link
outboundLink
n/a
Patient / link / id
n/a
Patient / link / extension
n/a
Patient / link / modifierExtension
N/A
Patient / link / other
id
n/a
  • PID-3
  • MRG-1
Patient / link / type
typeCode
n/a

doco Documentation for this format