LOINC in Vietnam: laboratory test and clinical observation standardization
LOINC (Logical Observation Identifiers Names and Codes) is an international terminology for laboratory tests, clinical observations, vital signs, and medical document types. It has been published by the Regenstrief Institute since 1994; version 2.82 (24/02/2026) has 109,325 terms. In Vietnam, Decision 1227/QĐ-BYT (11/04/2025) issued 2,964 clinical and paraclinical indicator (CLS) codes. Local codes may be carried alongside LOINC in FHIR after the mapping relationship has been validated for the intended use.
This page is for LIS/HIS developers mapping results into FHIR Observation, hospital CIOs who need a terminology roadmap, and clinicians who want to understand how a LOINC code precisely describes a single test. After reading, you will know when to use LOINC, when to use SNOMED CT, and how to combine an internal Vietnamese code with LOINC inside a single CodeableConcept.
Quick summary
- LOINC standardizes the naming of laboratory tests, observations, vital signs, and medical document types.
- Version 2.82 (24/02/2026) carries 109,325 terms; free under the dedicated LOINC license (not Apache).
- Vietnam: Decision 1227/QĐ-BYT (11/04/2025) issues 2,964 indicators in batch 1, covering Hematology and Transfusion, Biochemistry, Microbiology, Pathology, and Radiology/Diagnostic Imaging.
- Regenstrief's official Linguistic Variants list does not include Vietnamese; VN Core's separate LOINC 2.78 supplement adds 89,470 Vietnamese designations across the 104,054-code namespace.
- FHIR R4 binds
Observation.codeto LOINC at example strength; VN Core tightens this and recommends LOINC for laboratory tests whenever a code exists. - VN Core's CLS→LOINC ConceptMap supplies a target for all 2,964 source codes (100% technical coverage), but it includes heuristic
widerrelationships; this is not 2,964 clinically validated one-to-one equivalences.
On this page
- What LOINC is
- The structure of a LOINC code
- The six semantic axes of LOINC
- LOINC and SNOMED CT — how they differ and complement each other
- Licensing
- Decision 1227/QĐ-BYT — 2,964 indicators in batch 1
- FHIR Observation integration — a Vietnamese example
- Tooling: RELMA and FHIR ConceptMap
- Frequently asked questions
- Further reading
1. What LOINC is
LOINC stands for Logical Observation Identifiers Names and Codes. It is a standardized terminology launched in 1994 by the Regenstrief Institute at Indiana University, with a single goal: to answer the question "what does this measurement represent" using a universal identifier instead of the disconnected internal codes of each laboratory.
LOINC's scope spans three main groups: laboratory results (hematology, biochemistry, microbiology, immunology, pathology), clinical observations (vital signs, anthropometric measurements, ECG findings, scaled assessment instruments), and classification of medical documents (types of discharge summaries, types of consultation notes). Version 2.82, released on 24/02/2026, contains 109,325 terms, including deprecated codes retained for backward compatibility.
The Linguistic Variants list published by Regenstrief (checked 18/07/2026) does not include Vietnamese. VN Core publishes a separate CodeSystem supplement for LOINC 2.78: 89,470 codes have a Vietnamese designation[vi] within the 104,054-code namespace. The supplement supports display and search in VN Core; it is not a Vietnamese linguistic variant included in an official Regenstrief release, and it trails the current LOINC 2.82 release.
2. The structure of a LOINC code
A LOINC record consists of a short code in the form NNNNN-N (an auto-incrementing number with a check digit), a Long Common Name describing the concept in full, a Short Name for systems with character limits, and six semantic axes. The classic example — measuring total cholesterol in blood — looks like this:
LOINC code: 2093-3
Long Common Name: Cholesterol [Mass/volume] in Serum or Plasma
Short Name: Cholest SerPl-mCnc
Component: Cholesterol
Property: MCnc (Mass Concentration)
Time: Pt (Point in time)
System: Ser/Plas
Scale: Qn (Quantitative)
Method: (none specified)
Class: CHEM (Chemistry)
The code 2093-3 is not bound to a specific reagent kit, a specific analyzer, or a specific unit of measure. It only defines the measurement concept: the mass concentration of cholesterol in serum or plasma, at a single point in time, on a quantitative scale. The unit (mmol/L, mg/dL) is recorded separately in Observation.valueQuantity.unit with a UCUM code, and is not part of LOINC.
3. The six semantic axes of LOINC
A fully specified LOINC name is constructed from six axes: Component, Property, Time, System, Scale, and Method. Method may be blank when it is not needed to distinguish the concept. Codes that differ by method can represent different measurement concepts; whether their results can be compared or aggregated also depends on specimen, units, reference ranges, and laboratory validation.
| Axis | Question it answers | Example for 2093-3 |
|---|---|---|
| Component | What substance or phenomenon is measured? | Cholesterol |
| Property | What physical or chemical quantity? | MCnc — mass concentration |
| Time | A single point in time, or aggregated over an interval? | Pt — point in time |
| System | Where is the specimen drawn from? | Ser/Plas — serum or plasma |
| Scale | What measurement scale? | Qn — quantitative |
| Method | Which specific method (when needed to disambiguate)? | Not specified |
The Method axis is optional but matters when results depend on technique — for instance, Glucose [Mass/volume] in Capillary blood by Glucometer (code 14743-9) differs from Glucose [Mass/volume] in Serum or Plasma (code 2345-7): both measure blood sugar, but their reference ranges, accuracy, and clinical interpretation are not interchangeable, so the two should not be aggregated in the same report.
4. LOINC and SNOMED CT — how they differ and complement each other
LOINC and SNOMED CT are often mistaken for competitors, but they actually cover two different domains. The convention used in SNOMED CT and FHIR R4 is clear:
| Criterion | LOINC | SNOMED CT |
|---|---|---|
| Domain | Names of tests and observations ("what is being measured") | General clinical concepts: diseases, symptoms, procedures, anatomy |
| Granularity | Six axes — each code is a specific measurement | A concept network with rich parent-child relationships |
| Typical FHIR placement | Observation.code, DiagnosticReport.code | Condition.code, AllergyIntolerance.code, Procedure.code, BodySite |
| License | Use under the LOINC license | Terms depend on member territory and SNOMED International licensing policy |
In VN Core, LOINC is the preferred terminology for a test or observation name when a suitable code exists. A diagnosis may carry SNOMED CT for clinical detail and Vietnamese ICD-10 in workflows that require it for reporting or reimbursement. The diagnosis remains a clinical determination; a laboratory result does not automatically establish a diagnosis.
5. Licensing
LOINC is free for both commercial and non-commercial use worldwide, under the Regenstrief Institute's dedicated LOINC license. This is not an Apache or MIT license — the LOINC license carries some specific conditions: attribution is required, you may not turn LOINC into the foundation of a competing code set, you may not unilaterally redefine the semantic fields, and any language translation must be returned to Regenstrief for inclusion in an official release.
Downloading the full distribution requires a free account at loinc.org/downloads. In implementation, hospitals and LIS vendors should select LOINC codes using all six axes and validate them with laboratory specialists; internal or CLS codes may be recorded in parallel inside CodeableConcept.coding to preserve provenance to the source system.
6. Decision 1227/QĐ-BYT — 2,964 indicators in batch 1
Decision 1227/QĐ-BYT, dated 11/04/2025 issues the "List of common codes for clinical and paraclinical indicators, batch 1", with 2,964 indicators distributed across five specialty groups. The directory supplies a shared domestic code layer; FHIR exchange additionally requires suitable profiles, UCUM units, specimen metadata, and governed terminology mappings.
| Specialty group | Indicator count |
|---|---|
| Hematology and Transfusion | 1,022 |
| Biochemistry | 447 |
| Microbiology | 174 |
| Pathology | 81 |
| Radiology / Diagnostic Imaging | 1,240 |
| Total | 2,964 |
VN Core supplies a LOINC target for all 2,964 CLS codes in the vn-cm-cls-to-loinc ConceptMap (100% technical coverage): 1,404 relationships are marked equivalent and 1,560 are marked wider. This classification was generated heuristically from the source data and requires review by terminology, laboratory, pathology, or imaging specialists before automated conversion or clinical use. One target per source code is a coverage metric; it does not prove one-to-one semantic equivalence.
VN Core implements this directory as the CodeSystem vn-cls-cs (canonical http://fhir.hl7.org.vn/core/CodeSystem/vn-cls-cs). For example, the entry for total blood cholesterol carries the code 1010053, the display "Định lượng Cholesterol toàn phần (máu)", and a definition that explicitly lists 2093-3 as the LOINC equivalent.
7. FHIR Observation integration — a Vietnamese example
FHIR R4 binds Observation.code to LOINC at the example binding strength — meaning LOINC is recommended but not required. The VNCoreObservationLab profile in VN Core tightens this to extensible for laboratory tests: LOINC must be used when an appropriate code exists, and a local code may be carried in parallel. The convention below illustrates a total cholesterol measurement with both codes attached at once.
{
"resourceType": "Observation",
"status": "final",
"category": [{
"coding": [{
"system": "http://terminology.hl7.org/CodeSystem/observation-category",
"code": "laboratory",
"display": "Laboratory"
}]
}],
"code": {
"coding": [
{
"system": "http://loinc.org",
"code": "2093-3",
"display": "Cholesterol [Mass/volume] in Serum or Plasma"
},
{
"system": "http://fhir.hl7.org.vn/core/CodeSystem/vn-cls-cs",
"code": "1010053",
"display": "Định lượng Cholesterol toàn phần (máu)"
}
],
"text": "Total cholesterol"
},
"subject": { "reference": "Patient/vn-001" },
"effectiveDateTime": "2026-04-15T08:00:00+07:00",
"valueQuantity": {
"value": 5.2,
"unit": "mmol/L",
"system": "http://unitsofmeasure.org",
"code": "mmol/L"
},
"referenceRange": [{
"low": { "value": 3.0, "unit": "mmol/L", "system": "http://unitsofmeasure.org", "code": "mmol/L" },
"high": { "value": 5.2, "unit": "mmol/L", "system": "http://unitsofmeasure.org", "code": "mmol/L" }
}]
}
Three details to note in the example above: (1) category.coding.system must be the canonical http://terminology.hl7.org/CodeSystem/observation-category, not a shortened URL; (2) valueQuantity uses UCUM (mmol/L) through the canonical system http://unitsofmeasure.org; (3) the local CodeSystem URL ends with the -cs suffix per VN Core naming convention — even a one-character mismatch will prevent the validator from resolving the terminology.
When no suitable LOINC code has been validated: retain the source CLS or LIS code in Observation.code.coding and use code.text to describe the measurement. A LOINC coding may be added in a later data version or transformation layer, but provenance must be preserved and the source code must not be silently replaced.
8. Tooling: RELMA and FHIR ConceptMap
RELMA (Regenstrief LOINC Mapping Assistant) is a desktop tool from Regenstrief for reviewing an LIS's local test codes against candidate LOINC concepts, inspecting the six axes, and exporting mapping data. Tool suggestions are inputs to a validation workflow; they do not replace review of specimen, method, property, scale, units, and the laboratory's intended use.
A governed mapping can be packaged as a FHIR ConceptMap to publish its version, semantic relationship, and provenance. VN Core v0.9.0 includes the draft vn-cm-cls-to-loinc ConceptMap from vn-cls-cs to http://loinc.org. A terminology server may expose $translate, but clients must inspect the returned equivalence, ConceptMap version, and validation warnings; a returned target must not automatically be treated as an equivalent conversion.
9. Frequently asked questions
Are we required to convert every test code to LOINC?
No. VN Core allows internal codes (LIS or Vietnamese CLS codes) to remain in the same CodeableConcept.coding as LOINC. Add LOINC only after a suitable code has been selected and validated; dual coding preserves source-code provenance but does not by itself guarantee semantic interoperability.
Can two different test kits share the same LOINC code?
Yes — provided the five axes Component, Property, Time, System, and Scale match and the measurement methods produce equivalent results. If a different method shifts the reference range — for example, a bedside rapid test compared with a central automated analyzer — LOINC splits them into two distinct codes to prevent mixing data that should not be compared directly.
When will Vietnam have an official LOINC translation?
As of 18/07/2026, Regenstrief's official Linguistic Variants list does not include Vietnamese. VN Core has a separate LOINC 2.78 supplement with 89,470 Vietnamese designations across 104,054 codes; it is not a Vietnamese variant in an official Regenstrief release and must be versioned separately from LOINC 2.82.
Does LOINC apply to diagnostic imaging data?
Yes, at the level of imaging study type ("CT chest with contrast"), but it does not replace DICOM for the images themselves and their technical metadata. Inside a FHIR Observation/DiagnosticReport, LOINC describes the report type; the actual images are referenced via ImagingStudy pointing to a separate PACS/DICOM system.
References
- Regenstrief Institute. Introduction to LOINC. Accessed 18/07/2026.
- Regenstrief Institute. LOINC 2.82 release notes (24/02/2026, 109,325 terms).
- Regenstrief Institute. LOINC Linguistic Variants. Language list checked 18/07/2026.
- Regenstrief Institute. LOINC license.
- Regenstrief Institute. RELMA — LOINC Mapping Assistant.
- HL7 International. FHIR R4 — Observation.code binding.
- HL7 Terminology. CodeSystem observation-category.
- Ministry of Health. Decision 1227/QĐ-BYT (11/04/2025) — Directory of laboratory indicator codes, batch 1.
- Ministry of Health. Circular 13/2025/TT-BYT — Electronic medical records.