FHIR Coding System Terminology

Hi we are trying to implement HL7v2 to FHIR translation for ADT messages

While mapping implementation we observed some of the coding terminology systems are not matching exactly V2 mssages.

For example V2 PV1.2 Patient Class maps to FHIR Encounter

HL7 v2 PV1.2 Patient Class
|E|Emergency| -
|R|Recurring patient|
|C|Commercial Account|
|N|Not Applicable|

Not able to map above V2 PV1.2 Patient Class (Table #004) to FHIR Encounter Class V3 or V4 coding system https://www.hl7.org/fhir/v3/ActEncounterCode/vs.html

Does it mandatory or strictly to use latest coding system terminology ?

If im not able to map exact mappings can i use V2 system terminology as per FHIR link https://www.hl7.org/fhir/terminologies.html#extensible Extensible If there is no applicable concept in value set (based on human review), an alternate concept (either system / code pair, or text ) may be used instead.

So in Encounter if i implement will this is acceptable ?
http://terminology.hl7.org/CodeSystem/v2-0004 i.e. Code System Content referred here https://www.hl7.org/fhir/v2/0004/index.html

I did Mapping legacy/source system http://terminology.hl7.org/CodeSystem/v2-0004 codes to FHIR

Sample FHIR Encounter
“comments”: “FHIR Record : Encounter”,
“resource”: {
“resourceType”: “Encounter”,
“id”: “8e3ca7ad-a599-4936-8ef4-9d9ea88dee04”,
“class”: {
“system”: “http://terminology.hl7.org/CodeSystem/v2-0004”,
“code”: “I”,
“display”: “Inpatient”
“subject”: {
“reference”: “Patient/8e3ca7ad-a599-4936-8ef4-9d9ea88dee02”
“location”: {
“reference”: “Location/8e3ca7ad-a599-4936-8ef4-9d9ea88dee05”,
“status”: “active”


It depends on the binding strength declared in the FHIR spec. If the binding strength is ‘required’, then you must have a code from the FHIR-defined code system. If the binding strength is ‘extensible’, then you must map to the FHIR-defined code system if one of the FHIR codes applies (even if it has a slightly different granularity). For example or preferred bindings, you’re free to send whatever you like. (Be aware that even if the core specification has a ‘loose’ binding strength, profiles such as US Core may tighten things up and you may have an obligation to comply with certain profiles, depending on where you’re implementing.)

The FHIR core specification includes mappings for a number of v2 code systems, so look for those. Also, you may find it helpful to tie into the v2 to FHIR mapping project (https://chat.fhir.org/#narrow/stream/179188-v2-to.20FHIR)