Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
The LOINC Ontology developed through a collaborative initiative between the Regenstrief Institute and SNOMED International was established under a cooperative agreement signed in October 2022 which built upon previous agreements between the two organizations. This partnership aims to reduce duplication between the two terminologies and enhance their interoperability, enabling stakeholders to use LOINC and SNOMED CT together more effectively. This initiative builds on the strengths of both terminologies, aiming to streamline clinical data exchange and enhance the utility of standardized healthcare information.
A key deliverable of this collaboration is an extension that integrates LOINC’s granular laboratory observables into SNOMED CT’s framework, increasing LOINC’s computability in a SNOMED-compatible structure. By aligning these terminologies, the extension supports data harmonization, advanced analytics, and improved patient care.
More information about this project can be found at https://loincsnomed.org/ along with downloadable content and the LOINC Ontology Browser.
The overall clinical and practical objective of the LOINC Ontology and the harmonization of LOINC and SNOMED CT is to support a more interoperable, standardized, and semantically precise healthcare data ecosystem. This harmonization effort aims to bridge the gap between structured clinical terminologies and laboratory/observation data to enhance patient care, research, and data exchange across healthcare system
The objective of the SNOMED CT Implementation Guide for the LOINC Ontology is to describe the structure and content of the LOINC Extension for SNOMED CT and provide practical guidance for its application. The guide explains how the integration of LOINC and SNOMED CT works in both directions, supporting standardized representation of observations in SNOMED CT while also enhancing the clinical utility of LOINC.
The scope of this guide is to provide a foundational framework for understanding and implementing the LOINC Extension to SNOMED CT, addressing both conceptual and practical aspects of its use.
As a dynamic document, its content will evolve in alignment with updates to the extension, ensuring it remains current and relevant. This adaptability allows the guide to incorporate new features, use cases, and advancements as the extension develops, supporting users in effectively applying the latest capabilities.
By remaining flexible and responsive, the guide ensures ongoing alignment with the evolving needs of healthcare interoperability and data standardization.
This guide outlines the foundational framework for understanding and implementing the LOINC Extension for SNOMED CT, focusing on both conceptual and practical aspects.
The document will evolve alongside updates to the extension, incorporating new features and use cases to ensure relevance. This adaptability supports users in leveraging the latest capabilities for healthcare data standardization and interoperability.
This guide is designed for a diverse range of stakeholders involved in the implementation and application of the LOINC Extension to SNOMED CT. It provides practical insights and best practices tailored to specific user groups, helping them understand and utilize the extension effectively in their respective domains:
SNOMED International Members seeking clear guidance and uniform best practices for implementing and documenting the integration of LOINC and SNOMED CT, ensuring consistent application across healthcare systems.
Clinicians interested in understanding how the integration can enhance clinical data collection, improve patient care workflows, and support comprehensive clinical documentation.
Information Managers responsible for incorporating SNOMED CT into health information models and workflows, aiming to optimize data standardization and interoperability in laboratory and clinical settings.
This SNOMED CT Implementation Guide and the development of the LOINC Extension to SNOMED CT are the result of a collaborative effort between key contributors from SNOMED International and the Regenstrief Institute. Their expertise and dedication have been critical in establishing the cooperative agreement and advancing the extension.
Attributions
Name: Collaborative Team from SNOMED International and Regenstrief Institute
Affiliation: SNOMED International and Regenstrief Institute
Description: This team was responsible for establishing the cooperative agreement in October 2022 and leading the development of the LOINC Extension to SNOMED CT. Their contributions include identifying overlapping terminologies, minimizing duplication, and designing an integrated extension to improve interoperability and usability.
This SNOMED CT Implementation Guide is specifically designed to support the implementation of the LOINC Ontology within SNOMED CT. The guide provides a structured framework for understanding the integration of LOINC’s granular laboratory observables into SNOMED CT’s Logical design. It is organized into five main chapters:
Chapter 1: Introduction - This chapter provides an overview of the LOINC Ontology, including its development through the collaboration between SNOMED International and the Regenstrief Institute. It outlines the objectives, scope, and intended audience of this guide.
Chapter 2: - This chapter provides a foundational understanding of LOINC, detailing its purpose, structure, and role in healthcare data standardization. It explains how LOINC supports the representation of laboratory tests, clinical observations, and other coded health data. Additionally, the chapter introduces the LOINC Extension within SNOMED CT, outlining how it enhances interoperability and aligns with broader clinical terminology standards.
Chapter 3: - This chapter describes key use cases that demonstrate the value of integrating LOINC into SNOMED CT. It covers scenarios where the LOINC Extension enhances data interoperability, improves laboratory result standardization, and facilitates clinical decision support.
We encourage and welcome feedback from all readers to ensure this guide remains accurate, relevant, and useful. The review process is an ongoing effort to engage the community in improving the content. A feedback button is provided on each page of the guide, allowing readers to share their comments and suggestions directly related to the content.
Comments or inquiries that are not relevant as feedback on specific page content should be directed to the Regenstrief Institute () for further assistance.
All feedback will be carefully reviewed, and updates will be incorporated as appropriate. The guide will be revised and updated with every new release of the LOINC Extension to SNOMED CT, ensuring it reflects the latest developments and enhancements. Your input is invaluable in helping us maintain a resource that meets the needs of its users and supports the effective implementation of this extension.
Researchers normalizing data to support population analytics within a given organization and across multiple organizations as part of multisite clinical trials.
Healthcare Organizations in various scenarios:
Those evaluating coding systems for capturing laboratory data.
Organizations already using SNOMED CT but needing to support or report using LOINC.
Current LOINC users considering migration to SNOMED CT.
Organizations with established systems using either SNOMED CT or LOINC that now seek to enhance data exchange with other entities by supporting both terminologies.
Chapter 4: Content Development Principles - This chapter explains how SNOMED CT incorporates LOINC content, detailing the structure and organization of LOINC concepts within SNOMED CT. It describes the approach used for modeling LOINC codes and representing this in compliance with the SNOMED CT Extension mechanism.
Chapter 5: Information Models and Terminology Binding - This chapter explores the integration of the LOINC Ontology with various health information models. It provides an in-depth discussion on logical modeling, terminology binding strategies, and best practices for aligning LOINC observables with information model structures. Additionally, it examines the application of HL7 FHIR for laboratory data representation, covering FHIR resources used for ordering laboratory tests and structuring laboratory results in a standardized manner.
Chapter 6: Technical Application - This chapter provides technical implementation guidance, including best practices for integrating the LOINC Extension into SNOMED CT-enabled systems. It includes practical strategies for adoption, system configuration, and real-world application examples.
LOINC (Logical Observation Identifiers Names and Codes) is the international terminology standard for identifying health observations, measurements, and document types in healthcare information systems, such as electronic health records (EHRs)
LOINC provides a set of universal codes and names for laboratory and clinical observations, including measurements like blood pressure and cholesterol levels, and clinical assessments like standardized questionnaires and surveys that collect comprehensive information from patients to diagnose their health and are used to determine their appropriate treatment plan. These codes allow for interoperability between different healthcare systems, enabling seamless exchange and aggregation of health data.
A LOINC concept is represented by a code and a corresponding name, e.g. 8480-6 Systolic blood pressure.
LOINC codes are unique and permanent, though codes can be deprecated or discouraged and replaced by an alternate concept.
There are over 100,000 concepts represented in LOINC, each distinguishing the given observable.
There are two releases of LOINC each year in February and August. It is strongly recommended that the most current version of LOINC is used, and that it is implemented within 90 days of release.
LOINC use is bound by the LOINC License. In general, LOINC codes are licensed free-for-use for all purposes except the creation of a competing code system.
HL7 FHIR is a modern standard designed to facilitate the exchange of healthcare information electronically.
Consistency: With standardized resources and robust semantics, FHIR ensures uniformity in healthcare data representation. This consistency supports accurate data exchange and enables healthcare providers to make informed decisions based on reliable information, ultimately enhancing patient care quality.
Modularity: FHIR’s flexible architecture allows its resources to be used independently or in combination to meet specific healthcare needs. This modular approach supports adaptability across diverse healthcare contexts, enabling tailored solutions without overhauling entire systems.
Interoperability: FHIR facilitates seamless data exchange between different healthcare systems and applications, enhancing communication and collaboration among healthcare providers. By standardizing data formats and protocols such as RESTful APIs and JSON/XML, FHIR promotes interoperability, improving patient care coordination and information sharing.
Standardization: FHIR leverages contemporary web standards to ensure compatibility with existing IT infrastructures. By defining well-structured resources like Patient, Observation, and Medication with clear semantics, FHIR fosters consistency in how healthcare data is represented and interpreted across various systems.
Scalability: Designed to accommodate evolving healthcare requirements and technological advancements, FHIR is scalable for both current and future healthcare needs. Its flexible architecture and support for extensibility allow healthcare systems to grow and adapt without compromising interoperability or data integrity.
HL7 FHIR plays a crucial role in linking healthcare data with standard terminologies, including SNOMED CT. By integrating FHIR with terminologies like SNOMED CT, more precise and standardized documentation and communication of clinical information can be achieved. This linkage enhances interoperability by enabling seamless exchange of structured clinical data, supporting accurate clinical decision-making, and promoting continuity of care for patients across various healthcare settings.
For the purpose of representing the laboratory data workflow, we can use the following FHIR resources:
ServiceRequest: Represents laboratory orders or requests for specific diagnostic tests or procedures.
DiagnosticReport: Captures the overall results or findings of the laboratory tests as a summarized report.
Observation: Provides detailed data points or specific results associated with the laboratory tests.
Examples:
The image below illustrates how FHIR resources can be used to represent the generalized logical model for laboratory data. It outlines the relationships between key FHIR resources (highlighted in red) and logical model entities (depicted in gray), offering a structured approach to representing laboratory orders, individual results, and specimen information.
Laboratory Order: Mapped to the FHIR ServiceRequest resource, representing the clinical request for laboratory testing. It includes details such as test code, priority, status, and the specimen to be tested.
Result: Mapped to the FHIR DiagnosticReport resource, summarizing the findings of the laboratory tests based on the order. The DiagnosticReport serves as a container for individual results.
Individual Results: Represented by the FHIR Observation resource, where each Observation provides specific result details such as:
Relationships
The FHIR ServiceRequest initiates the laboratory process and forms the basis for the FHIR DiagnosticReport.
The FHIR DiagnosticReport includes one or more FHIR Observations, each representing an individual result.
The FHIR Specimen resource is central to the model, linking the order, results, and observations to the biological material tested.
Result values
Units of measurement
Clinical interpretation (e.g., normal, abnormal)
Reference ranges
Link to the associated specimen
Specimen: Mapped to the FHIR Specimen resource, which defines the type and method of specimen collection. This resource connects all entities within the generalized logical model.

In the LOINC distribution csv file, the column "status" can indicate a number of concept states:
ACTIVE
TRIAL
DISCOURAGED
DEPRECATED
For example, has a status of 'DISCOURAGED'.
The equivalent property in SNOMED CT concepts, is the "active" flag, but this can only take a 1 or 0 value, which maps to the ACTIVE and DEPRECATED LOINC statuses respectively.
TRAIL concepts are considered available for use, and so this status is not expressed in the SNOMED CT transformation of LOINC concepts.
DISCOURAGED, however, is represented using an Annotation (starting from Release 2.0 Effective Time 20250921). These are expressed in the ComponentAnnotation file eg der2_scsRefset_ComponentAnnotationStringValueSnapshot_LO1010000_20250921.txt with the column for referencedComponentId set to the SCTID of the relevant concept, and the annotation text "Discouraged" in the value column.
In the LOINC SNOMED Browser, this annotation is represented on the "details" tab:
When working with the LOINC Ontology, leveraging a FHIR terminology server can simplify access and management. The server allows you to handle the content as a specific CodeSystem version, providing access to all FHIR Terminology operations.
The SNOMED International URI standard specifies that identify unversioned editions (i.e. editions) and versioned editions (i.e. versions) take the following respective forms:
http://snomed.info/sct/{sctid}
http://snomed.info/sct/{sctid}/version/{timestamp}

The following table shows some examples of URIs for editions and versions relevant when working with the LOINC Ontology.
SNOMED CT International Edition
SNOMED CT International Edition, 20250101
SNOMED CT-LOINC
The following table lists a few key requests relevant for retrieving content from the LOINC Ontology using the FHIR Terminology services API.
$lookup
A conceptId and a CodeSystem url
Concept metadata, including status, designations, etc.
$expand
Get all members of the reference set
REQUIRED
A reference set specified by its refsetId, in this case the identifiers for the set of Orderable and Observable LOINC Terms:
Please refer to the SNOMED CT Terminology Services Guide for a comprehensive guidance on SNOMED CT enabled terminology services.
These examples use the concept 635111010000100 |LOINC Orderable Reference Set| as the refsetId.
Get concept metadata
Returns a JSON representation of concept metadata
Get all members of the reference set
for example
An alternative solution is to use the expression constraint language, as shown here:
SNOMED CT-LOINC, 31 March 2025
LOINC Orderable Reference Set
$validate-code
Test if a concept or description is a member of a specified reference set
REQUIRED
A reference set specified by its refsetId
A candidate concept.id
If the candidate concept is a member of the reference set: TRUE
Otherwise: FALSE
Returns a JSON representation of data about each of the reference set member.
The data returned for each concept includes:
code: the conceptId of the reference set member
display: the preferred term for the reference set member
Also returns the total number of reference set members
As some reference sets have very large numbers of children, this service is paged. Requests parameters include:
count to restrict the number of members returned.
offset to specify the start in the results (in multiples of the limit).
Test if a concept is a member of the reference set
for example
Returns a JSON object with a "Parameters" resource, including a "result" parameter with a boolean value (true/false) indicating whether the member validated OK or not against the reference set.
GET [fhir]/ValueSet/$validate-code
?system=http://snomed.info/sct&code=537131010000109 &url=http://snomed.info/sct/[moduleId]/version/[effectiveTime]?fhir_vs=refset/[refsetId]GET [fhir]/ValueSet/$validate-code
?system=http://snomed.info/sct&code=537131010000109 &url=http://snomed.info/sct/900000000000207008/version/20200131?fhir_vs=refset/635111010000100GET fhir]/ValueSet/$expand
?url=http://snomed.info/sct?fhir_vs=refset/[refsetId]
&code=537131010000109GET [fhir]/ValueSet/$expand
?url=http://snomed.info/sct?fhir_vs=refset/[refsetId]
&count=10GET [fhir]/ValueSet/$expand
?url=http%3A%2F%2Fsnomed.info%2Fsct%3Ffhir_vs%3Drefset%2F635111010000100&count=10GET [fhir]/ValueSet/$expand
?url=http%3A%2F%2Fsnomed.info%2Fsct%3Ffhir_vs%3Decl%2F%5E%5B635111010000100%5D
&count=10GET [fhir]/ValueSet/$expand
?url=http%3A%2F%2Fsnomed.info%2Fsct%3Ffhir_vs%3Decl%2F%5E635111010000100&count=10This template is used for LOINC Concepts that do not have all their parts specified and which, as such, act as groupers for all child concepts which also have the same parts. These grouper concepts are all expected to be orderable.
This template is documented here:
The java implementation of this template can be found .
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC System: Specifies the direct site of the observation.
LOINC Component: Represents the specific component being measured or observed.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
711831010000101
4079581010000116
US: P
Measurement of phosphate electrolyte in urine (observable entity)
LOINC Term 108011-8
Component
Phosphate
LP14912-7
246093002 |Component (attribute)| -> 304053000 |Phosphate electrolyte (substance)|
=== 363787002 |Observable entity (observable entity)| : {
[S1] 246093002 |Component (attribute)| -> 304053000 |Phosphate electrolyte (substance)|,
[S1] 370130000 |Property (attribute)| -> 685451010000100 |Measurement property (qualifier value)|,
[S1] 704327008 |Direct site (attribute)| -> 122575003 |Urine specimen (specimen)|
}[PROPERTY] of [COMPONENT] in [SYSTEM] This chapter defines the model meaning binding and value set binding between data elements in the Logical Model and their corresponding SNOMED CT concepts and value sets. These bindings ensure precise alignment between the Logical Model and SNOMED CT, supporting consistent and interoperable representation of laboratory orders, specimens, and results.
The laboratory orders represent the request that starts the laboratory process. In the context of this implementation guide for the LOINC Ontology, the recommendation is to use Observable entities for this purpose, selected from a subset that is marked as "Orderable" entities by LOINC.
SNOMED CT includes a hierarchy of specimens and is used to define observable entities in the LOINC Ontology. The specimens used in the LOINC Ontology can be extracted using the SNOMED CT Expression Constraint Language by selecting concepts used as values for the 704327008 |Direct site (attribute)| or 704319004 |Inheres in (attribute)| attribute within the LOINC Ontology.
In the results, the codes for tests can be different from those ordered. In cases like "panels", the order concepts are transformed into a set of observable concepts that can be reported as results. The LOINC Ontology identifies a subset of observable concepts that are valid to report as "observed" results.
ci
711831010000101
4079571010000119
US: P
Phosphate [Measurement] in Urine
CS
711831010000101
4079561010000112
US: A
Measurement of phosphate electrolyte in urine
ci
711831010000101
4079591010000118
US: A
Phosphate (U) [Measurement]
CS
711831010000101
4079601010000112
US: A
Phosphate:{Measurement}:-:Urine:-
CS
Property
{Measurement}
LP447904-6
370130000 |Property (attribute)| -> 685451010000100 |Measurement property (qualifier value)|
System
Urine
LP7681-2
704327008 |Direct site (attribute)| -> 122575003 |Urine specimen (specimen)|
Structured
Variable: depends on each observable.
Reference Range
Unstructured
N/A
Units
Structured
<< 767525000 |Unit (qualifier value)|
Interpretation
Structured
Variable: depends on each observable.
Status
Structured
< 288532009 |Context values for actions (qualifier value)|
code
Structured
< 363787002 |Observable entity (observable entity)| {{ C moduleId = 11010000107 }} AND ^ |Orderable LOINC Concepts|
priority
Structured
< 272125009 |Priorities (qualifier value)|
status
Structured
< 288532009 |Context values for actions (qualifier value)|
code
Structured
(< 363787002 |Observable entity (observable entity)| {{ C moduleId = 11010000107 }} . (704327008 |Direct site (attribute)| OR 704319004 |Inheres in (attribute)|) ) AND ( << 123038009 |Specimen (specimen)|)
collection method
Structured
Test code
Structured
< 363787002 |Observable entity (observable entity)| {{ C moduleId = 11010000107 }} AND ^ |Observable LOINC Concepts|
Value
Unstructured
<<(<<17636008 |Specimen collection (procedure)|.260686004 |Method (attribute)|)
N/A
This part represents the key entities and relationships within a laboratory order entry system specifically designed to support the integration of the LOINC Extension with SNOMED CT. The model focuses on standardizing and structuring laboratory data for test ordering, specimen management, and result reporting. While not exhaustive or fully detailed for implementation, it highlights critical components necessary to ensure interoperability and consistency in healthcare systems.
By focusing on test identification, specimen management, and result reporting, the model helps support the use of LOINC for laboratory test coding and SNOMED CT for representing clinical concepts such as specimens and test outcomes. This approach promotes efficient data exchange and interoperability in healthcare settings.
The diagram illustrates the relationships between the three main entities in the model: Laboratory Order, Specimen, and Result. Each entity is represented as a rectangular block, with its attributes listed inside. Arrows and cardinalities between the entities indicate how they relate to one another, providing a clear visual of the logical structure of the system.
Key relationships include:
A Laboratory Order can result in one or more Results.
A Result must be associated with a single Specimen.
A Specimen is optionally linked to a Laboratory Order, offering flexibility in how samples are managed.
Laboratory Order:
Represents the details of a requested laboratory test.
Acts as the starting point for test processing and result generation.
Specimen:
Laboratory Order Attributes:
code: The identifier for the laboratory test being ordered
priority: Indicates the urgency of the test request
Refers to the physical sample collected for testing.
Plays a central role in linking the laboratory order with test results.
Result:
Captures the outcomes of the requested laboratory test, including measured values and clinical interpretations.
specimen: Links the order to the specimen being tested
Specimen Attributes:
code: Identifies the type of specimen (e.g., blood, urine)
method: Optionally specifies how the specimen was collected
Result Attributes:
code: Identifies the test linked to the result
specimen: References the specimen used for the test
value: The measured value or observation from the test
units: Specifies the units of the test result value
interpretation: Qualitative assessment of the result (e.g., normal, high)
reference range: Indicates the expected range for the result value

The LOINC ontology is represented as a SNOMED CT extension and is distributed as an independent package.
Each version of a SNOMED CT extension depends on a specific version of the International Edition (refer to section for more details). Therefore, deploying the LOINC ontology requires access to both the LOINC ontology release package and the corresponding International Edition release package, upon which the specific version of the LOINC ontology is dependent.
To access and use the LOINC ontology, users must have a valid Affiliate License for SNOMED CT. SNOMED CT is a globally recognized clinical terminology standard, and its usage is governed by strict licensing agreements to ensure compliance and proper utilization. Licensing ensures that users are authorized to access and implement SNOMED CT in their systems.
Individuals or organizations interested in using SNOMED CT must obtain an Affiliate License through their National Release Center (NRC) or SNOMED International.
More information can be found here:
The following points outline the key aspects of member licensing:
Member Countries: Member countries have a national licensing arrangement with SNOMED International. Healthcare professionals and organizations within these countries can usually access SNOMED CT through their NRC without additional licensing fees.
Access via NRCs: National Release Centers are responsible for distributing SNOMED CT within their respective countries. They provide access, support, and updates to licensed users. Users should contact their NRC for specific details on how to access the LOINC Extension to SNOMED CT.
Non-Member Countries: In countries that are not members of SNOMED International, individuals and organizations must directly approach SNOMED International to obtain the necessary licenses. This may involve additional costs and compliance with international licensing requirements.
The LOINC Extension can be accessed via its main website hosted by Regenstrief:
This chapter explores clinical use cases that demonstrate how the LOINC Ontology, as an extension to SNOMED CT, supports standardized data exchange and interoperability. It outlines clinical workflows where the integration of LOINC and SNOMED CT enhances laboratory reporting, diagnostics, and clinical documentation. The use case scenarios illustrate how this combined terminology framework improves data consistency, decision support, and system integration in healthcare.

LOINC Terms are expressed as SNOMED CT concepts by following a transformation algorithm detailed in pseudocode. This has been implemented as a number of Java classes, freely available in this package in the SNOMED International GitHub Script Library project.
The processing algorithm follows these high level steps
The Java class loads the Loinc.csv and Part.csv file from the LOINC release
A part detail file is also supplied, which specifies part identifiers ("LP") for each part used in each LOINC Term
The process works through the part detail file, selecting a template based on the 'Property' part of each LOINC Term
Each part is mapped to a SNOMED CT Attribute where:
The Part Type maps to a SNOMED Attribute type as specified in the template and
The Part Number maps to a SNOMED Attribute value as specified via the Part/Attribute Map (maintained in the Snap2Snomed tool)
The terms for each concept are then completed, using the preferred terms of the attribute values that have been modelled.
The entire set of modelled concepts is the compared against the LOINC Extension in the SI Authoring Platform
A delta archive is produced which details changes required from the previous state of the content.
In addition, LOINC Panels are created as primitive concepts, where the individual tests in each panel are available as transformed SNOMED CT concepts.
See
This template is utilized when the LOINC term represents a quality observable with a component. It's suitable for measurements or observations that involve a specific component.
This template is documented here:
The java implementation of this template can be found .
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
This chapter provides practical guidance on implementing and utilizing the LOINC Ontology in various technical environments. It covers key considerations for deployment, access methods, and integration approaches, ensuring seamless adoption within healthcare and clinical information systems.
This chapter serves as a comprehensive resource for developers, system architects, and implementers looking to leverage the LOINC Ontology effectively.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
LOINC Component: Represents the specific component being measured or observed.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
[PROPERTY] of [COMPONENT] in [SYSTEM] at [TIME] by [METHOD] using [DEVICE] [CHALLENGE]481191010000118
Some slots are optional, and are then tidied up along with any linking words (eg 'using')
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
138811010000103
481171010000119
US: P
Arbitrary concentration of Trypanosoma cruzi antibody in serum at point in time by immunoassay (observable entity)
Loinc Parts
Component
Trypanosoma cruzi Ab
LP40073-6
246093002 |Component (attribute)| -> 120771002 |Antibody to Trypanosoma cruzi (substance)|
=== 363787002 |Observable entity (observable entity)| :
{
246093002 |Component (attribute)| -> 120771002 |Antibody to Trypanosoma cruzi (substance)|,
246501002 |Technique (attribute)| -> 726449005 |Immunoassay technique (qualifier value)|,
370130000 |Property (attribute)| -> 118569000 |Arbitrary concentration (property) (qualifier value)|,
370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|,
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|,
704327008 |Direct site (attribute)| -> 119364003 |Serum specimen (specimen)|
}In the context of managing lab result data, FHIR (Fast Healthcare Interoperability Resources) offers two key resources: the Observation resource and the DiagnosticReport resource. Each plays a distinct role in representing and conveying lab results, and together they provide a comprehensive view of the lab data.
The Observation resource is used to represent the actual result of a laboratory test. It includes details such as:
Test Results: The specific findings or measurements from the test (e.g., blood glucose levels, cholesterol levels).
Units of Measurement: How the results are quantified (e.g., mg/dL).
Reference Ranges: Normal value ranges for comparison.
Observation Date and Time: When the result was recorded.
Use: This resource focuses on the raw data from the test, providing a granular view of each result.
The DiagnosticReport resource adds additional context and information to the results presented by the Observation resource. It includes:
Summary of Results: An aggregated view of all related observations and their interpretations.
Clinical Interpretation: Comments or interpretations provided by the laboratory or a medical professional, which may help in understanding the results in a clinical context.
Report Status: Indicates whether the report is final, preliminary, or in draft form.
Test Details
This FHIR DiagnosticReport example below demonstrates how multiple Observation resources can be referenced within a single diagnostic report, specifically for a blood glucose test panel. It provides a structured approach to representing laboratory results using both LOINC and SNOMED CT codes.
In this example, the primary focus is on a blood glucose measurement (Observation/Obs001 exemplified above), but the report also includes other relevant tests commonly performed in diabetes assessment and metabolic health monitoring. These additional observations help provide a comprehensive clinical picture and are essential in diagnosing and managing conditions such as diabetes mellitus, insulin resistance, and cardiovascular risk factors.
Key Features of the Example
References multiple Observation resources related to metabolic and cardiovascular health.
Uses both LOINC and SNOMED CT codes in the code field to enhance compatibility.
Includes SNOMED CT codes for interpretation and conclusion, making the report machine-readable and clinically relevant.
cI
138811010000103
481191010000118
US: P
Trypanosoma cruzi Ab [Units/volume] in Serum by Immunoassay
CS
138811010000103
481201010000115
US: A
Trypanosoma cruzi Ab:ACnc:Pt:Ser:Qn:IA
CS
138811010000103
2196621010000117
US: A
T. cruzi Ab IA Qn (S)
CS
138811010000103
481201010000115
US: A
Arbitrary concentration of Trypanosoma cruzi antibody in serum at point in time by immunoassay
cI
Property
ACnc
LP6773-8
370130000 |Property (attribute)| -> 118569000 |Arbitrary concentration (property) (qualifier value)|
Time
Pt
LP6960-1
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|
System
Ser
LP7567-3
704327008 |Direct site (attribute)| -> 119364003 |Serum specimen (specimen)|
Scale
Qn
LP7753-9
370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|
Method
IA
LP217197-5
246501002 |Technique (attribute)| -> 726449005 |Immunoassay technique (qualifier value)|
Ordering Information: References to the original order request and any relevant patient and provider details.
observation.code
Binds to the members of the simple type reference set containing the references to the SNOMED CT concepts representing a LOINC Observable term
observation.interpretation
DiagnosticReport.code
Enforce reporting using the observable entity
DiagnosticReport.conclusionCode

Ensures that the interpretation uses concepts from the clinical finding hierarchy, which includes concepts representing the results of an observation.
Clinical finding (finding)
{
"resourceType": "Observation",
"id": "obs001",
"status": "final",
"code": {
"coding": [
{
"system": "http://loinc.org",
"code": "15074-8",
"display": "Glucose [Moles/volume] in Blood"
},
{
"system": "http://snomed.info/sct",
"code": "234561010000108",
"display": "Substance concentration of glucose in blood at point in time (observable entity)"
}
],
"text": "Blood glucose measurement"
},
"subject": {
"reference": "Patient/m001",
"display": "Noah Lee"
},
"effectiveDateTime": "2024-02-20T09:15:00+00:00",
"issued": "2024-02-20T10:00:00+00:00",
"performer": [
{
"reference": "Practitioner/p005",
"display": "O. Wilson"
}
],
"valueQuantity": {
"value": 6.3,
"unit": "mmol/L",
"system": "http://snomed.info/sct",
"code": "258813002",
"display": "Millimole/liter (qualifier value)"
},
"interpretation": [
{
"coding": [
{
"system": "http://snomed.info/sct",
"code": "444780001",
"display": "Glucose in blood specimen above reference range (finding)"
}
]
}
],
"referenceRange": [
{
"low": {
"value": 3.1,
"unit": "mmol/L",
"system": "http://snomed.info/sct",
"code": "258813002",
"display": "Millimole/liter (qualifier value)"
},
"high": {
"value": 6.2,
"unit": "mmol/L",
"system": "http://snomed.info/sct",
"code": "258773002",
"display": "Millimoles per liter (qualifier value)"
}
}
]
}{
"resourceType": "DiagnosticReport",
"id": "dr001",
"status": "final",
"category": [
{
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0074",
"code": "LAB",
"display": "Laboratory"
}
]
}
],
"code": {
"coding": [
{
"system": "http://loinc.org",
"code": "11502-2",
"display": "Glucose panel - Blood"
},
{
"system": "http://snomed.info/sct",
"code": "????",
"display": "Blood glucose test report (observable entity)"
}
],
"text": "Blood Glucose Test Report"
},
"subject": {
"reference": "Patient/m001",
"display": "Noah Lee"
},
"effectiveDateTime": "2024-02-20T10:30:00+00:00",
"issued": "2024-02-20T11:00:00+00:00",
"performer": [
{
"reference": "Practitioner/p005",
"display": "O. Wilson"
}
],
"result": [
{
"reference": "Observation/obs001",
"display": "Blood glucose measurement"
},
{
"reference": "Observation/obs002",
"display": "HbA1c (Glycated Hemoglobin)"
},
{
"reference": "Observation/obs003",
"display": "Serum Insulin Level"
},
{
"reference": "Observation/obs004",
"display": "C-Peptide Measurement"
},
{
"reference": "Observation/obs005",
"display": "Blood Ketones (Beta-hydroxybutyrate)"
},
{
"reference": "Observation/obs006",
"display": "Lipid Panel"
},
{
"reference": "Observation/obs007",
"display": "Blood Pressure"
}
],
"conclusion": "This diagnostic report integrates multiple laboratory observations, including blood glucose, HbA1c, serum insulin, and lipid profile. The blood glucose level is above the reference range, suggesting potential hyperglycemia. Further evaluation of HbA1c and lipid parameters is recommended.",
"conclusionCode": [
{
"coding": [
{
"system": "http://snomed.info/sct",
"code": "444780001",
"display": "444780001 |Glucose in blood specimen above reference range (finding)|"
}
]
}
]
}This template is employed when the LOINC term involves an observation that inherently exists within or is associated with something else, and relates to a specific location such as a specific sequence within a gene.
This template is documented in Confluence here: Quality observable with Inheres in and Inherent location for LOINC (observable entity) - v1.0
The java implementation of this template can be found here.
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
LOINC Component: Specifies what the observation inherently exists within or is associated with.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
[PROPERTY] of [COMPONENT] in [SYSTEM] at [TIME] by [METHOD] using [DEVICE] [CHALLENGE]
Some slots are optional, and are then tidied up along with any linking words (eg 'using')
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
This template is employed when the LOINC term involves an observation that specifies an aspect of a process at a point in time where the process output is not included.
This template is documented here: Process Observable for LOINC - No Process output, With Time Aspect (observable entity) - v0.1
The java implementation of this template can be found here.
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
LOINC Component: Specifies what the observation inherently exists within or is associated with.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
Some slots are optional, and are then tidied up along with any linking words (eg 'using')
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
LOINC Term
This template is employed when the LOINC term represents an impression observable, capturing a high-level clinical interpretation or summary derived from one or more observations, rather than a direct measurement or finding.
Impression observables concepts all have a primitive definition, following the template described below and documented here: Impression observable for LOINC (observable entity) - v1.0.
The java implementation of this template can be found here.
LOINC Property: indicates that the quality being observered is some impression or interpretation.
This template is utilized when the LOINC term represents an impression observable.
<<< 363787002 |Observable entity (observable entity)| :
{ 370130000 |Property (attribute)| -> 118580000 |Impression AND/OR interpretation of study (property) (qualifier value)| }In the case of impression concept, the LOINC Long Common Name is used as both the FSN (with a semantic tag of "(observable entity)" added), and the Preferred Term. The LOINC Short Common Name is also included unchanged as an acceptable synonym.
In the case of the example below, this results in the following terms:
There are no LOINC parts represented in the SNOMED model for these impression concepts. The SNOMED concepts are defined as primitive, with only the single property attribute present, always taking a value of 118580000 |Impression AND/OR interpretation of study (property).
=== 363787002 |Observable entity (observable entity)| :
{
704319004 |Inheres in (attribute)| = 873801010000104 |Gene sequence variant (morphologic abnormality)|,
370130000 |Property (attribute)| = 118584009 |Presence or identity (property) (qualifier value)|,
370132008 |Scale type (attribute)| = 117362005 |Nominal value (qualifier value)|,
704327008 |Direct site (attribute)| = 119297000 |Blood specimen (specimen)|,
718497002 |Inherent location (attribute)| = 1397304009 |C-C motif chemokine receptor 5 gene (cell structure)|,
246501002 |Technique (attribute)| = 873811010000101 |Targeted gene mutation analysis technique (qualifier value)|,
370134009 |Time aspect (attribute)| = 123029007 |Single point in time (qualifier value)|
}901781010000100
5402831010000118
US: P
Presence or identity of gene sequence variant in CCR5 gene in blood at point in time by targeted gene mutation analysis (observable entity)
Component
CCR5 gene mutations
LP451899-1
704319004 |Inheres in (attribute)| -> 873801010000104 |Gene sequence variant (morphologic abnormality)|
=== 363787002 |Observable entity (observable entity)| :
{ [S1] 246501002 |Technique (attribute)| -> 794261010000108 |Surface induced coagulation technique (qualifier value)|,
[S1] 370130000 |Property (attribute)| -> 762636008 |Duration (property) (qualifier value)|,
[S1] 370132008 |Scale type (attribute)| -> 30766002 |Quantitative value (qualifier value)|,
[S1] 370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|,
[S1] 424226004 |Using device (attribute)| -> 55091003 |Blood coagulation analyzer, device (physical object)|,
[S1] 704321009 |Characterizes (attribute)| -> 737094009 |Coagulation process (qualifier value)|,
[S1] 704327008 |Direct site (attribute)| -> 119297000 |Blood specimen (specimen)| }[PROPERTY] of [COMPONENT] at [TIME] in [SYSTEM] by [METHOD] using [DEVICE] [CHALLENGE]526891010000104
4734571010000118
US: P
Duration of coagulation process at point in time in blood by surface induced coagulation using blood coagulation analyzer (observable entity)
Property
Time
LP6879-3
370130000 |Property (attribute)| -> 762636008 |Duration (property) (qualifier value)|
823801010000103
4498981010000118
US: P
Genetic disease analysis overall carrier interpretation in Blood or Tissue by Molecular genetics method Narrative (observable entity)
ci
526891010000104
2611611010000115
US: P
aPTT in Blood by Coagulation assay
CS
526891010000104
4734561010000111
US: A
Duration of coagulation process at point in time in blood by surface induced coagulation using blood coagulation analyzer
ci
526891010000104
4734581010000115
US: A
aPTT Bld
CS
526891010000104
4734591010000117
US: A
Coagulation:Time:Pt:Bld:Qn:Coag.surface induced
CS
Time
Pt
LP6960-1
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|
Component
Coagulation surface induced
LP15957-1
704321009 |Characterizes (attribute)| -> 737094009 |Coagulation process (qualifier value)|
System
Bld
LP7057-5
704327008 |Direct site (attribute)| -> 119297000 |Blood specimen (specimen)|
Scale
Qn
LP7753-9
370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|
Method
Coag
LP6186-3
246501002 |Technique (attribute)| -> 702946003 |Coagulation technique (qualifier value)|
Method
Coag
LP6186-3
424226004 |Using device (attribute)| -> 55091003 |Blood coagulation analyzer, device (physical object)|
cI
901781010000100
5402821010000116
US: P
CCR5 gene mutations found [Identifier] in Blood by Targeted gene mutation analysis Nominal
CS
901781010000100
5402811010000110
US: A
Presence or identity of gene sequence variant in CCR5 gene in blood at point in time by targeted gene mutation analysis
cI
901781010000100
5402841010000114
US: A
CCR5 gene Mut Bld Mut Anl
CS
901781010000100
5402851010000111
US: A
CCR5 gene mutations:Prid:Pt:Bld:Nom:Targeted gene mutation analysis
CS
Component core
CCR5 gene
LP19680-5
718497002 |Inherent location (attribute)| -> 1397304009 |C-C motif chemokine receptor 5 gene (cell structure)|
Property
Prid
LP6850-4
370130000 |Property (attribute)| -> 118584009 |Presence or identity (property) (qualifier value)|
Time
Pt
LP6960-1
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|
System
Bld
LP7057-5
704327008 |Direct site (attribute)| -> 119297000 |Blood specimen (specimen)|
Scale
Nom
LP7750-5
370132008 |Scale type (attribute)| -> 117362005 |Nominal value (qualifier value)|
Method
Targeted gene mutation analysis
LP95475-7
246501002 |Technique (attribute)| -> 873811010000101 |Targeted gene mutation analysis technique (qualifier value)|
CS
823801010000103
4498971010000116
US: P
Genetic disease analysis overall carrier interpretation in Blood or Tissue by Molecular genetics method Narrative
CS
823801010000103
4498991010000115
US: A
Genetic disease analysis overall carrier interpretation:Imp:Pt:Bld/Tiss:Nar:Molgen
CS
Effective utilization of the LOINC Extension to SNOMED CT requires a well-defined information model that structures and organizes data consistently. An information model is essential because it provides a framework for accurately capturing, storing, and sharing data across healthcare systems. By establishing clear guidelines for how data elements are related and represented, the information model ensures that laboratory data is consistently documented and understood, facilitating seamless communication between healthcare providers and enabling reliable data analysis. Additionally, this structured approach supports interoperability, allowing different systems to work together efficiently and ensuring that health information can be exchanged and utilized effectively.
The integration of SNOMED CT and LOINC through the development of the LOINC extension to SNOMED CT has gained significant momentum in recent years, owing to its ability to complement and extend the capabilities of healthcare information systems. This section of the guide delves into the information models and terminology bindings that enable the precise documentation and utilization of laboratory data within electronic health records (EHRs). Emphasis is placed on HL7 FHIR as a prime example, showcasing how it can be leveraged to support the integration of SNOMED CT and LOINC, thereby ensuring accurate and standardized data representation in clinical workflows.
Effective deployment of the LOINC Ontology requires efficient access to the content in ways that take advantage of the features of both terminologies. A terminology service is a software function that interfaces with, and provides access to, one or more representations of a terminology, allowing for streamlined retrieval and management of terminology data.
Various technical options are available for implementing terminology services, including relational databases, graph databases, and predefined services accessible via APIs (e.g., SNOMED International’s Snowstorm). Selecting an appropriate approach for deploying the LOINC Extension depends on factors such as existing infrastructure, integration complexity, and the level of flexibility required. Whether using a local database or a cloud-based solution, the choice should ensure effective access, updating, and management of the terminology content.
Regardless of the platform chosen, the deployment of the LOINC Extension involves importing a SNOMED CT Edition and the LOINC Extension into the selected database or server.
To deploy the LOINC Ontology, the following RF2 packages are necessary:
The latest version of the national release available
For national extension packages, the corresponding SNOMED CT International Edition (the version on which the national extension is dependent)
The latest version of the LOINC Extension package, where the International Edition dependency aligns with the version being used
Release notes accompanying the LOINC Extension package detail the International Edition dependency, helping to ensure compatibility.
The LOINC Ontology aligns with specific releases of the SNOMED CT International Edition. Each version of the LOINC Extension is updated in sync with the International Edition to ensure consistent compatibility.
The LOINC Ontology is planned for biannual releases, occurring in March and September, following the LOINC release from the preceding month.
National Editions follow independent release cycles, which vary by country or member organization, and may be released monthly, quarterly, or biannually. SNOMED CT is designed to handle these variations, using comprehensive history tracking to manage discrepancies that may arise from differing release cycles.
For example, if a National Edition is released in May based on the March International Edition, and the LOINC Extension is based on the February International Edition, there may be references to inactive concepts between releases. SNOMED CT enables easy identification and resolution of these references, maintaining the LOINC Extension’s consistency across different release schedules.
No potential implementation issues can be described for this scenario. In this case, the National Edition and the LOINC Ontology follow the same release cycle and depend on the same version of the International Edition. This alignment simplifies implementation by eliminating version discrepancies. Any changes made to the International Edition that impact both the LOINC Ontology and the National Edition will be managed by their respective owners.
In this example, an implementer in November may select to use the October release of the National Edition with the latest LOINC Ontology release available, the September release.
The National Edition is the primary resource that determines the selection of dependency. As a derivative, the LOINC Ontology must align with the dependencies of the National Edition.
When deployed in an implementation terminology server, the configuration will be as follows:
International Edition (August release) – The version on which the National Edition depends.
LOINC Ontology (September release) – Originally dependent on the July version of the International Edition, which is no longer available.
National Edition (October release) – The authoritative edition dictating dependencies.
In this setup, any changes made to the International Edition between July and August may impact the LOINC Ontology, as outlined below.
In this example, an implementer in September may select to use the July release of the National Edition with the latest LOINC Ontology release available, the September release.
When deployed in an implementation terminology server, the configuration will be as follows:
International Edition (May release) – The version on which the National Edition depends.
LOINC Ontology (September release) – Originally dependent on the July version of the International Edition, which is unavailable.
National Edition (July release) – The authoritative edition dictating dependencies. The latest available National Release is in September.
Here, the LOINC Ontology may refer to an International Edition Concept created after the May release and, therefore, it would be unavailable in this environment.
Using a version of the LOINC Ontology that relies on a different version of the International Edition than the one used by the National Edition may lead to the following errors:
Inactive or Unknown Parent Concepts – A LOINC Ontology concept may reference a parent that is no longer active or is unrecognized.
Inactive or Unknown Attribute Values – International Edition concepts used as attribute values for LOINC Ontology concepts may be inactive or unknown.
These issues can arise in two ways:
Inactive Concepts – If a concept has been inactivated in the International Edition after the release of the LOINC Ontology, but the National Edition is using a more recent version, the referenced concept may no longer be valid.
Unknown Concepts – If the National Edition depends on an older version of the International Edition than the one used by the LOINC Ontology, some referenced concepts may be missing or unrecognized.
When discrepancies exist between the National Edition and the LOINC Ontology dependencies, several issues may arise:
ECL selections may fail for concepts with version errors
For example, If a parent of a LOINC Ontology concept has been inactivated, then aggregations using the '<' operator (or other ECL hierarchy selections) will not include the child concept
ECL queries referencing inactive concepts directly are invalid
Data Inconsistencies
To minimize disruption from dependency discrepancies, users can adopt several strategies:
Regular monitoring of concept status: Use SNOMED CT tools to track inactive and replaced concepts.
Automated mapping and remediation: Utilize historical associations and mapping tables to replace inactive concepts with suitable alternatives.
Pre-implementation impact assessment: Before deploying the LOINC Ontology, run queries to identify any inactive concepts and resolve dependencies.
Evaluating the impact of discrepancies between the dependency for the National Edition and the dependency for the LOINC Ontology is important for maintaining data consistency, usability, and interoperability. Users can assess the impact through several key factors:
Concept availability and integrity
If the National Edition is based on a different version of the SNOMED CT International Edition than the LOINC Ontology, there may be concepts referenced in the LOINC Extension that are inactive or unavailable in the National Edition.
Users should assess whether key concepts required for coding, reporting, and decision support are missing or have been replaced with new concepts.
Inactive concepts within the LOINC Ontology can be managed effectively using the SNOMED CT Expression Constraint Language, which allows you to extract inactive components and reference set members.
Retrieve inactive concepts from all SNOMED CT hierarchies belonging to the LOINC Ontology module:
Retrieve inactive concepts from the Observable entity hierarchy belonging to the LOINC Ontology module:
This query identifies all concepts within the LOINC Extension that are currently inactive (active = false). It is useful for reviewing or managing outdated concepts.
If you prefer to work exclusively with active concepts, you can use the inverse ECL query.
Retrieve active concepts from all SNOMED CT hierarchies belonging to the LOINC Ontology module:
Retrieve active concepts from the Observable entity hierarchy belonging to the LOINC Ontology module:
This query returns only those concepts that are currently active, ensuring that you are working with up-to-date information. You can further refine this query by adding hierarchical filters, such as focusing on concepts within a particular clinical hierarchy.
Despite these potential issues, the actual risk of problems is considered low due to the design of the LOINC Ontology. The LOINC Ontology has a flat hierarchical structure, therefore the number of International Edition parents is very low. These parent concepts are stable groupers in the International Edition, minimizing the risk of inactivation. The concepts used as attribute values come from a recent mapping effort between LOINC parts and SNOMED CT concepts, meaning most have been reviewed recently. As a result, a degree of stability is also expected for the attribute values. Using a newer version of the International Edition with the LOINC Ontology has a lower risk of inconsistencies than using an older version of the International Edition. This due to the fact that attribute concepts could be created during the process of updating the LOINC Ontology to a new version.
When deploying the LOINC Extension to SNOMED CT, you have two main options:
Use the Extension as-is, accepting that some components may reference inactive concepts
Benefit: Minimal setup time and resource use.
Challenge: Potential use of inactive concepts, which may affect coding accuracy.
This approach is commonly used because it offers quick deployment, and SNOMED CT provides methods for managing inactive content, such as historical associations. The best practice is to use the latest version of the published LOINC Extension, ensuring alignment with a current SNOMED CT International Edition.
The LOINC release specifies whether each LOINC concept is Orderable, Observable, or Both in the ORDER_OBS column of the Loinc.csv file. This classification helps healthcare systems determine which concepts can be used for test orders versus those that are strictly for observations. In the LOINC Ontology, this information is provided in two simple type reference sets.
In SNOMED CT, subsets are represented using simple reference sets (Refsets), allowing implementers to filter and retrieve LOINC terms based on their orderability or observability. This structured approach facilitates the integration of LOINC terminology within SNOMED CT implementations.
For example, implementers can query:
“Show all LOINC concepts that are Orderable.”
“Show all LOINC concepts that are Observable.”
To support this, the LOINC Ontology includes two distinct reference sets:
635121010000106 | LOINC Observation Reference Set | – Contains LOINC terms classified as Observable.
635111010000100 | LOINC Orderable Reference Set |– Contains LOINC terms classified as Orderable.
The reference sets are distributed in a file named according to SNOMED CT conventions: der2_Refset_SimpleRefsetSnapshot_INT_20250321.txt
Each row in this file corresponds to a LOINC term and includes a refsetId that determines whether the term belongs to the Orderable or Observable subset.
Some LOINC terms are classified as both Orderable and Observable. In such cases, the term will appear in both reference sets, ensuring that it is available in queries for either category.
LOINC Observation Reference Set (first 4 rows)
LOINC Orderable Reference Set (first 4 rows)
The counts for the Observation and Orderable Reference Sets can be seen in the browser, in the left-hand panel, and clicking on the "Refset" tab:
Clicking on either of these concepts will bring them up in the right-hand panel:
Note that the concept that represents the reference set does not have any children (these would be different, more specialised reference sets if they existed), but the reference set does have members. These can be listed by clicking on the members tab:
Now we can also obtain this list, or even something more interesting, by going into the "Expression Constraint Queries" tab. For this example, we're going to look for the intersection of these two sets. That is, the LOINC concepts which are BOTH orderable AND observables. The ECL for this query is: ^ AND ^
Note that the counts here refer purely to those LOINC concepts that successfully translated into The LOINC Ontology at time of publication. The full LOINC release in it's original format contains additional codes for each.
This template is used when the LOINC term involves a component and is relative to something else, such as a reference point or another component.
This template is documented in Confluence here: Quality observable with Component and Relative to for LOINC (observable entity) - v1.0”
The java implementation of this template can be found here.
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
LOINC Component: Represents the specific component being measured or observed.
LOINC Divisor: Specifies what the observation is relative to.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
[PROPERTY] of [COMPONENT] to [DIVISORS] in [SYSTEM] at [TIME] by [METHOD] using [DEVICE] [CHALLENGE]
Some slots are optional, and are then tidied up along with any linking words (eg 'using')
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
Loinc Parts
LOINC groupers are included in the LOINC Ontology to allow more general test ordering, and also to support navigation and querying by enabling identification of related tests that share the same property, system, and component.
Grouper concepts are modeled using a subset of defining attributes, typically Property, System, and Component. Attributes such as time and scale are intentionally not included. This approach ensures that more specific observables, which differ by time (for example, point in time or 24 hours) or scale (for example, quantitative or ordinal), are subsumed under a common parent concept.
The concept 711861010000108 | Measurement of calcium in urine (observable entity) |
is defined using the following three attribute-value pairs:
370130000 |Property (attribute)| = 685451010000100 |Measurement property (qualifier value)|
704327008 |Direct site (attribute)| = 122575003 |Urine specimen (specimen)|
246093002 |Component (attribute)| = 5540006 |Calcium (substance)|
The concept does not contain the time or scale attribute. As a result, all observables representing measurements of calcium in urine are classified under this concept, regardless of differences in timing or scale.
As shown in the image above, this modeling allows all the specific tests of urine calcium levels to be subsumed by this concept.
The LOINC Ontology is represented as an Extension to SNOMED CT, which provides a way to integrate LOINC (Logical Observation Identifiers Names and Codes) codes into SNOMED CT, enhancing interoperability between these two major terminologies in clinical and laboratory domains. The extension ensures that LOINC codes can be used as identifiers for relevant SNOMED CT concepts, allowing consistent and standardized data exchange across different healthcare systems
The diagram below how the LOINC Ontology extends the SNOMED CT International Edition, enabling the representation of LOINC-coded laboratory observations within SNOMED CT’s logical framework.
The SNOMED CT International Edition consists of core international components, structured under:
900000000000207008 | SNOMED CT core module (core metadata concept)|
When working with the LOINC Ontology, it’s essential to have efficient access to the content through various systems, regardless of the technology used.
This chapter provides practical guidance on how the LOINC Ontology can be used effectively in clinical applications to support the use cases outlined in the Clinical Use Case section.

LOINC Concepts feature a number of logical properties - beyond their text descriptions and parts - that required some creative way to surface in a SNOMED CT format.
Two examples of these are the ORD/OBS flag (which indicates if a LOINC Term should be used in the context of an Order, and Observation, or Both), and a status of "Discouraged" which indicates that a LOINC Term is still active, but its use should be avoided.
Both of these flags exist as columns in the published LOINC distribution csv file and the method for exposing them in a SNOMED CT format is described in the following pages.
635121010000106
226581010000109
faf3eff6-5c15-4b9d-ae72-953d06a80391
20250321
1
11010000107
635121010000106
189881010000107
781fbd14-8883-456a-a324-3d56584edf8e
20250321
1
11010000107
635121010000106
179681010000102
8286c793-0c9b-434e-a4c4-f3ca1d79d67a
20250321
1
11010000107
635121010000106
200271010000103
635111010000100
189881010000107
ccabfb4b-2353-4a8e-bdd7-2e75d9759e62
20250321
1
11010000107
635111010000100
200271010000103
699290e8-15bc-4895-ad9b-fda371465526
20250321
1
11010000107
635111010000100
617571010000101
33a2cb27-47fa-4751-9f6e-8e580cba17f5
20250321
1
11010000107
635111010000100
189931010000103
16864455-3679-4543-a360-1f0b5f5dca1d
20250321
1
565a60d6-7ee2-4699-a62a-3b1228761693
20250321
1
11010000107
11010000107
480621010000102
2199631010000113
US: P
Monocytes/Leukocytes in Blood by Flow cytometry (FC)
CS
480621010000102
2199651010000115
US: A
Monocytes/Leukocytes FC (Bld)
CS
480621010000102
2199661010000118
US: A
Monocytes/Leukocytes:NFr:Pt:Bld:Qn:Flow cytometry
CS
480621010000102
2199621010000110
US: A
Number fraction of monocyte to leukocyte in blood at point in time by flow cytometry
ci
Leukocytes
LP157588-7
704325000 |Relative to (attribute)| -> 52501007 |Leukocyte (cell)|
Property
NFr
LP6838-9
370130000 |Property (attribute)| -> 118552002 |Number fraction (property) (qualifier value)|
Time
Pt
LP6960-1
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|
System
Bld
LP7057-5
704327008 |Direct site (attribute)| -> 119297000 |Blood specimen (specimen)|
Scale
Qn
LP7753-9
370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|
Method
Flow cytometry
LP6274-7
246501002 |Technique (attribute)| -> 708058007 |Flow cytometry technique (qualifier value)|
480621010000102
2199641010000117
US: P
Number fraction of monocyte to leukocyte in blood at point in time by flow cytometry (observable entity)
Component
Monocytes
LP14313-8
246093002 |Component (attribute)| -> 55918008 |Monocyte (cell)|
ci
Divisors
=== 363787002 |Observable entity (observable entity)| :
{
246093002 |Component (attribute)| -> 55918008 |Monocyte (cell)|,
246501002 |Technique (attribute)| -> 708058007 |Flow cytometry technique (qualifier value)|,
370130000 |Property (attribute)| -> 118552002 |Number fraction (property) (qualifier value)|,
370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|,
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|,
704325000 |Relative to (attribute)| -> 52501007 |Leukocyte (cell)|,
704327008 |Direct site (attribute)| -> 119297000 |Blood specimen (specimen)|
}Decision Support Errors: Clinical decision support tools may provide incorrect or outdated recommendations if they refer to inactive or changed concepts.
Reporting errors: missing the inclusion of concepts that do not match ECL selections
Stakeholder collaboration: Work with national health agencies, SNOMED International, and terminology service providers to ensure smooth transitions and updates.
National Extensions often include locally defined reference sets that may be linked to specific versions of the SNOMED CT International Edition.
If the LOINC Extension relies on an older or newer International Edition, these reference sets may contain outdated or inactive concepts, impacting decision support systems and automated processing.
Historical tracking and concept mapping
SNOMED CT provides robust historical tracking mechanisms, allowing users to identify inactive concepts and their replacements.
Using built-in SNOMED CT tooling, users can identify whether any inactive concepts within the LOINC Extension need to be mapped to newer active concepts in the National Edition.
Data interoperability and exchange
Differences in dependencies can affect interoperability between systems using different National Editions and LOINC Extensions.
Users should evaluate whether discrepancies lead to misinterpretation of coded data in electronic health records (EHRs), data analytics, or interoperability workflows.
Impact on Clinical Decision Support (CDS)
If SNOMED CT concepts referenced by the LOINC Ontology are inactive in the National Edition, decision support tools relying on those concepts may malfunction or provide inaccurate suggestions.
Organizations should review decision support rules that involve LOINC Ontology concepts and adjust them accordingly.
Workflow and implementation strategies
Organizations deploying the LOINC Ontology should determine whether discrepancies require immediate resolution or can be addressed through routine updates.
Depending on the workflow, a decision should be made whether to accept inactive concepts temporarily or proactively align the National Edition with the latest SNOMED CT International Edition.
2. Reference Set Consistency
Analyze reference sets to identify outdated or inactive concepts.
^ (< ){{ C active=0}}
Note that this ECL only retrieves the members of simple type reference sets. If other types are required, the concept id for those types can be applied.
3. Historical Tracking and Concept Mapping
Identify inactive concept references in maps.
^ (<
Simple map from SNOMED CT type reference set (foundation metadata concept)
4. Data Interoperability and Exchange
Assess interoperability risks due to dependency mismatches.
N/A
Based on historical interoperability data, it would be possible to verify the recorded frequency of use of the concepts with incorrect references. Finding that a very common concept has incorrect references with the new dependencies might lead to the need to take remedial actions in a new local release.
5. Impact on Clinical Decision Support (CDS)
Identify inactive or missing concepts in CDS rules.
N/A
Existing Clinical Decision Support rules should be analyzed to identify if they directly reference an inactive concept or a concept affected by references to inactive concepts.
6. Workflow and Implementation Strategies
Decide whether to temporarily accept inactive concepts or proactively align the National Edition with the latest SNOMED CT version.
N/A
It is possible to include fixes in a new release of the national or local extension for mismatches between the LOINC Extension and the International Edition.
However, after careful evaluation of the existing mismatches, implementers can decide to go forward with a deployment of the terminology that includes a limited number of incorrect references.
Conduct pre-implementation processing to resolve references to inactive concepts
Benefit: The LOINC Extension will fully align with the current SNOMED CT version.
Challenge: Requires SNOMED CT expertise, services for identifying replacements, and services for publishing the updated extension.
Category
Action
Query Example
Description
Concept Availability and Integrity
Identify concepts with inactive parents and check if replacements are available.
<! ( * {{ C effectiveTime>=
Identify concepts with inactive parents
This query is satisfied by the direct parents (<!) of any (*) concept in the substrate , where those concepts have an effectiveTime greater than or equal to the specified date, and an active value of false (i.e. only inactive concepts are returned)
Note that 20250101 is just provided here as an example.
* {{ C moduleId = 11010000107 active=0}}< 363787002 |Observable entity (observable entity)| {{ C moduleId = 11010000107 active=0}}* {{ C moduleId = 11010000107 active=1}}< 363787002 |Observable entity (observable entity)| {{ C moduleId = 11010000107 active=1}}


900000000000012004 | SNOMED CT model component module (core metadata concept)|
The LOINC Ontology builds on SNOMED CT by incorporating Alternate Identifiers, aligning LOINC codes with SNOMED CT concepts. Its content resides within the 11010000107 | LOINC Extension module (core metadata concept) |.
Each version of the LOINC Ontology depends on a specific version of the SNOMED CT International Edition, and the LOINC Ontology cannot function independently. Any implementation of the LOINC Ontology requires the SNOMED CT International Edition for proper use.
SNOMED CT Extension Format:
The extension is published as a standard SNOMED CT extension and adheres to the format specifications outlined by SNOMED International (at snomed.org/rfs and snomed.org/extpg).
This ensures that the extension maintains consistency with the core SNOMED CT release format and other compatible extensions.
LOINC Codes Modeled as SNOMED CT Concepts
LOINC terms are integrated into the extension ensuring a precise semantic alignment between the two terminologies.
Each LOINC term included in the LOINC Ontology is represented as a SNOMED CT concept, with its explicitly defined according to SNOMED CT’s logical framework and concept model.
Alternative Identifiers:
The LOINC codes are assigned as alternative identifiers to the SNOMED CT concept representing the equivalent meaning as the LOINC code.
These alternative identifiers are maintained in the Identifier File of the extension in compliance with the SNOMED CT Identifier File Specification.
This template is employed when the LOINC term involves an observation that is specified with a system, but not a component
This template is documented in Confluence here: Quality observable with Inheres in (System, no Component) for LOINC (observable entity) - v1.0
The java implementation of this template can be found here.
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
[PROPERTY] of [SYSTEM] at [TIME] by [METHOD] using [DEVICE] [CHALLENGE]
Some slots are optional, and are then tidied up along with any linking words (eg 'using')
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
This template is employed when the LOINC term involves an observation that specifies a process or an outcome of a process
This template is documented in Confluence here: Process Observable for LOINC (observable entity) - v1.0
The java implementation of this template can be found here.
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
LOINC Component: Specifies the SNOMED CT process output.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
Some slots are optional, and are then tidied up along with any linking words (eg 'using')
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
The SNOMED CT Implementation Guide for the LOINC Ontology offers comprehensive guidance for implementing and using the LOINC Ontology; an extension to SNOMED CT that bridges structured clinical terminology with laboratory and observation data.
Developed collaboratively by SNOMED International and the Regenstrief Institute, the guide supports terminology implementers, system developers, and clinical informaticians in achieving interoperable, computable healthcare data. It explains the structure, purpose, and integration of LOINC into SNOMED CT, detailing how LOINC-coded observations are modeled using SNOMED CT’s concept model, attributes, and classification system.
The guide introduces the LOINC Extension and its benefits for clinical applications, such as standardized lab results, structured documentation, and improved decision support. Practical implementation strategies cover data integration, terminology binding, HL7 FHIR approaches, and system compatibility across EHRs and lab systems. It also outlines methods for accessing and maintaining the LOINC Ontology, managing version control, and aligning with SNOMED CT updates.
By adopting the LOINC Ontology within SNOMED CT-enabled systems, organizations can enhance data consistency, analytics, and clinical decision-making, creating a more standardized and interoperable healthcare ecosystem.
This page outlines the key clinical scenario/workflow where SNOMED CT and the LOINC Ontology are essential for standardizing and structuring healthcare data. The workflows described are examples, and may not apply in all countries.
The integration of laboratory test data between Electronic Health Records (EHR) and Laboratory Information Systems (LIS) is crucial for ensuring efficient, accurate, and consistent patient care. To achieve this, healthcare systems leverage standardized coding systems such as SNOMED CT and LOINC. SNOMED CT provides a comprehensive clinical terminology for describing patient data, while LOINC offers a universal standard for identifying lab tests and their results.
Ordering Lab Tests
Clinicians use SNOMED CT codes to search and select tests in the EHR system.
The selected tests are associated with LOINC codes, ensuring standardized data for lab orders.
Transferring Orders to the Lab
The EHR system sends lab orders to the LIS using a structured message format (e.g., FHIR or similar standards), including SNOMED CT and LOINC codes.
This ensures the lab receives clear and consistent instructions on the required tests.
Performing the Tests
The lab uses the LOINC codes to identify the exact tests to be performed.
SNOMED CT is used to provide detailed descriptions, such as specimen types and any relevant clinical observations.
Generating and Analyzing Test Results
The lab performs the tests and records results, standardizing the data using LOINC codes.
SNOMED CT may be used to document clinical conditions or observations associated with the results.
Transferring Results Back to the EHR
Test results, along with associated LOINC and SNOMED CT codes, are transferred from the LIS to the EHR using a structured message format.
This allows for seamless integration of lab results into the patient’s records.
Using Lab Data
The standardized lab data is then used for clinical decision-making, research, and analytics, such as evaluating the effectiveness of treatments for conditions like diabetes.

The Identifier File associates LOINC codes to semantic equivalent SNOMED CT concepts.
Each entry in the Identifier File specifies:
The SNOMED CT concept ID.
The corresponding LOINC code as the alternate identifier.
Metadata such as effective dates, active status, and module identifiers.

481481010000105
2211751010000113
US: P
Appearance of Cerebral spinal fluid
ci
481481010000105
2211771010000117
US: A
Appearance (CSF)
CS
481481010000105
2211781010000119
US: A
Observation:Aper:Pt:CSF:Nom
CS
481481010000105
2211741010000111
US: A
Appearance of cerebrospinal fluid at point in time
ci
Pt
LP6960-1
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|
System
CSF
LP7156-5
704319004 |Inheres in (attribute)| -> 258450006 |Cerebrospinal fluid specimen (specimen)|
Scale
Nom
LP7750-5
370132008 |Scale type (attribute)| -> 117362005 |Nominal value (qualifier value)|
481481010000105
2211761010000110
US: P
Appearance of cerebrospinal fluid at point in time (observable entity)
Property
Aper
LP6779-5
370130000 |Property (attribute)| -> 718498007 |Appearance (property) (qualifier value)|
ci
Time
483131010000100
2220821010000111
US: P
Metanephrine [Mass/time] in 24 hour Urine by LC/MS/MS
CS
483131010000100
2220851010000116
US: A
Metanephrine:MRat:24H:Urine:Qn:LC/MS/MS
CS
483131010000100
2220841010000118
US: A
Metanephrine LC/MS/MS (24H U) [Mass/Time]
CS
483131010000100
2220811010000117
US: A
Mass rate of excretion of metanephrine in 24 hours in urine by lC/MS/MS
cI
24H
LP6924-7
704323007 |Process duration (attribute)| -> 123027009 |24 hours (qualifier value)|
704322002 |Process agent (attribute)| -> 64033007 |Kidney structure (body structure)|
704321009 |Characterizes (attribute)| -> 718500008 |Excretory process (qualifier value)|
Component
Metanephrine
LP14463-1
704324001 |Process output (attribute)| -> 24427005 |Metanephrine (substance)|
System
Urine
LP7681-2
704327008 |Direct site (attribute)| -> 122575003 |Urine specimen (specimen)|
Scale
Qn
LP7753-9
370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|
483131010000100
2220831010000114
US: P
Mass rate of excretion of metanephrine in 24 hours in urine by lC/MS/MS (observable entity)
Property
Type
LP6886-8
370130000 |Property (attribute)| -> 118544000 |Mass rate (property) (qualifier value)|
cI
Time
=== 363787002 |Observable entity (observable entity)| :
{
[S1] 370130000 |Property (attribute)| -> 718498007 |Appearance (property) (qualifier value)|,
[S1] 370132008 |Scale type (attribute)| -> 117362005 |Nominal value (qualifier value)|,
[S1] 370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|,
[S1] 704319004 |Inheres in (attribute)| -> 258450006 |Cerebrospinal fluid specimen (specimen)|
}<<< 363787002 |Observable entity (observable entity)| :
{
[S1] 370130000 |Property (attribute)| -> 118544000 |Mass rate (property) (qualifier value)|,
[S1] 370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|,
[S1] 704323007 |Process duration (attribute)| -> 123027009 |24 hours (qualifier value)|,
[S1] 704321009 |Characterizes (attribute)| -> 718500008 |Excretory process (qualifier value)|,
[S1] 704322002 |Process agent (attribute)| -> 64033007 |Kidney structure (body structure)|,
[S1] 704324001 |Process output (attribute)| -> 24427005 |Metanephrine (substance)|,
[S1] 704327008 |Direct site (attribute)| -> 122575003 |Urine specimen (specimen)|
}[PROPERTY] of [COMPONENT] in [SYSTEM] at [TIME] by [METHOD] using [DEVICE] [CHALLENGE]Introduction
What is LOINC?
When a concept in one system can be considered equivalent to some other concept in another code system, we can express that in a mapping between those two code systems. However, in the case of the SNOMED LOINC Extension we are not saying that two separate concepts can be considered equivalent; we are instead stating that the SNOMED CT concept is exactly the same entity as the LOINC concept that it is expressing. The SNOMED CT concept is an alternative representation of the LOINC concept, and can be considered to have two identifiers - a SNOMED CT SCTID and a LOINC code - which could theoretically be used interchangeably; software challenges notwithstanding.
The LOINC identifier in this case is called an Alternate Identifier in the SNOMED CT LOINC Extension. This is an RF2 file that specifies the LOINC identifier for each LOINC Term that has been expressed in a SNOMED CT format, along with the SCTID which has been assigned. The two identifiers are considered to be of equal standing and are displayed, for example, with equal prominence in the SNOMED CT Browser.
Note that the link between the entity expressed as LOINC and expressed in a SNOMED CT format remains true even if a LOINC Term should be deprecated.
The Alternate Identifier is populated in the LOINC Extension and will be named something like Snapshot/Terminology/sct2_Identifier_Snapshot_INT_20250321.txt
The layout of the file is described in the RF2 Specification in the Identifier File Specification.
SNOMED CT identifiers are not random numbers, they follow a number of rules in their format and a well trained eye can determine a lot of information about them.
If we consider the identifier for the LOINC Extension module - 11010000107, we can split that up into 4 parts: 1 | 1010000 | 10 | 7 which take the following meanings reading from right to left:
The number 7 here is the Verhoeff checksum digit, which will alert systems to any simple mistakes in manual entry or spreadsheet mangling of SCTIDs
The partition identifier identifier 10 tells us firstly that the next 7 numbers will indicate a namespace identifier and secondly that this SCTID was created to be applied to a concept, rather than a description or relationship
1010000 is the Namespace given to the LOINC Extension. Every SNOMED component created for the LOINC project which is assigned an SCTID will contain this namespace sequence. That is bound to that component for its lifetime, so even if a concept should subsequently be promoted up to the International Edition (through some agreement between Regenstrief and SNOMED International), that identifier would remain unchanged, and its origin in the LOINC Extension would remain clear.
30051010000102
480111010000101
100046-2
20250321
1
11010000107
30051010000102
480121010000107
100057-9
20250321
1
11010000107
30051010000102
480131010000105
100058-7
20250321
1
11010000107
30051010000102
480141010000102
100059-5
20250321
1
11010000107
30051010000102
480151010000100
The most lefthand set of numbers after the namespace represent a sequence number. In this case the first concept created for the SNOMED LOINC Extension was the module concept itself - this is extremely satisfying to those of us who care about such attention to detail.
100042-1
20250321
1
11010000107
When ordering laboratory tests, FHIR provides specific resources to support this process. This page outlines the key FHIR resources involved in ordering laboratory tests, focusing on how SNOMED CT and/or LOINC can be bound to these resources to ensure standardized and accurate documentation within electronic health records (EHRs) and other clinical systems. These resources help ensure that lab test orders are transmitted, processed, and documented consistently across different healthcare systems.
The diagram below illustrates how the integration of SNOMED CT and LOINC can be utilized in laboratory test ordering and processing, using FHIR ServiceRequest to support interoperability between SNOMED CT-enabled Electronic Health Records (EHRs) and LOINC-enabled Laboratory Information Systems (LIS).
In this process, a laboratory test request is encoded using SNOMED CT within the EHR system. If needed, the corresponding LOINC code is derived using the LOINC Ontology. The request is then transmitted via FHIR ServiceRequest, containing either the SNOMED CT concept alone or both the SNOMED CT concept and its corresponding LOINC code.
On the receiving end, if only the SNOMED CT concept is provided, the LIS derives the appropriate LOINC code using the LOINC Ontology. The laboratory system then identifies and processes the request based on LOINC.
The FHIR ServiceRequest resource is used to represent a request for a service to be performed, such as laboratory tests, imaging studies, or procedures. It facilitates standardized communication between healthcare systems, ensuring that test orders and service requests are accurately transmitted and processed.
In the context of laboratory test ordering, the ServiceRequest.code element is used to specify the requested test. This field can contain either a SNOMED CT code, a LOINC code, or both, depending on how the ordering system captures and transmits test requests.
When SNOMED CT is used, the code element holds the SNOMED CT concept representing the requested test.
When LOINC is used, the code element contains the appropriate LOINC code that corresponds to the requested laboratory test.
In cases where both SNOMED CT and LOINC are included, SNOMED CT provides a structured clinical representation, while LOINC ensures compatibility with laboratory systems that primarily use LOINC for test identification.
By supporting both SNOMED CT and LOINC within the ServiceRequest.code element, FHIR enables flexible and interoperable test ordering workflows, ensuring accurate and efficient exchange of laboratory test requests across healthcare systems.
More information on the FHIR Service Request Resource can be found here:
Below is an example of a FHIR ServiceRequest resource that uses both the SNOMED CT concept and the associated LOINC code 51459-6 for a request to measure the arbitrary concentration of antibodies to hepatitis E virus in serum:
status: Set to “active,” indicating that the request is currently in progress.
intent: “order” reflects that this is a formal request.
code:
coding: Uses the SNOMED CT conceptId 72641010000107
By leveraging the LOINC Ontology, it is possible to automatically derive the corresponding LOINC code for the SNOMED CT concept 72641010000107 |Arbitrary concentration of antibody to hepatitis E virus in serum at point in time (observable entity)|, see image below. The corresponding LOINC code is 51459-6, which represents the same clinical concept in the LOINC terminology system.
This page provides an overview of key use cases for the LOINC Ontology
Description: When clinicians order laboratory tests, ensuring clarity and accuracy is essential to avoid errors, miscommunication, and delays in patient care. Clear identification of tests and consistent communication between systems are crucial for seamless workflows.
Clinical Example: A physician orders a blood glucose test for a patient. The test is selected using a SNOMED CT code in the EHR and the corresponding LOINC code is automatically derived to ensure accurate transmission to the laboratory using a code system applied by the Laboratory Information System.
Clinical Benefits:
Precision in test ordering and communication.
Standardized data reduces ambiguity and errors.
Improved workflow efficiency and patient safety.
Description: The integration of LOINC with SNOMED CT enables the standardization of laboratory test results by converting SNOMED CT-encoded data to corresponding LOINC codes. This ensures uniform reporting across healthcare systems and facilitates seamless data exchange between different terminologies.
Clinical Example: A clinician orders a lipid panel test using SNOMED CT codes. When the lab completes the test, the results are encoded in SNOMED CT and automatically converted to LOINC codes for consistent reporting and sharing with other healthcare providers.
Clinical Benefits:
Enhanced data interoperability between healthcare systems.
Consistent and accurate lab test reporting.
Reduces discrepancies in data representation.
Improves clinical decision-making and patient care by ensuring standardized results.
Description: The integration of SNOMED CT and LOINC empowers healthcare professionals to perform seamless cross-terminology queries for laboratory data. SNOMED CT's formal definitions and hierarchical structure serve as the engine that enables effective retrieval and interpretation of LOINC-encoded data. This allows healthcare systems to access relevant lab information regardless of whether the data was initially recorded in SNOMED CT or LOINC.
Clinical Example: A researcher studying diabetes queries electronic health records for glucose-related tests. Using SNOMED CT's hierarchical definitions, the system identifies and retrieves all relevant lab data encoded in both SNOMED CT and LOINC. This ensures a comprehensive dataset for analysis, capturing tests, measurements, and observations related to glucose levels.
Clinical Benefits:
Efficient retrieval of lab data across different coding systems, powered by SNOMED CT's formal definitions and hierarchies.
Supports comprehensive research and analysis by ensuring no relevant data is overlooked.
Facilitates data-driven insights and evidence-based care by integrating diverse datasets.
Enhances data interoperability for healthcare applications through the alignment between SNOMED CT and LOINC.
Description: Linking SNOMED CT and LOINC ensures standardized reporting of laboratory procedures and observations. This consistency improves documentation, communication, and compliance with reporting requirements across healthcare organizations.
Clinical Example: A hospital uses SNOMED CT to document lab procedures during diagnostic tests. The LOINC codes are automatically derived for standardized reporting to insurance providers and public health agencies.
Clinical Benefits:
Improves accuracy and consistency in lab reporting.
Facilitates clear communication among healthcare stakeholders.
Supports regulatory compliance and reimbursement processes.
Reduces variability and ambiguity in lab documentation.
Description: Integrating LOINC with SNOMED CT enhances Clinical Decision Support Systems (CDSS) by ensuring seamless use of laboratory data. This integration allows CDSS to generate accurate, evidence-based recommendations and alerts for clinicians.
Clinical Example: In a primary care setting, a CDSS uses SNOMED CT-encoded patient diagnoses to identify potential issues. It retrieves relevant lab results encoded in LOINC to generate alerts for abnormal findings and provides clinical recommendations.
Clinical Benefits:
Enhances clinical decision-making with timely alerts and recommendations.
Supports interoperability between diagnostic and decision-support systems.
Improves patient safety by ensuring abnormal results are identified promptly.
Facilitates evidence-based interventions for better patient outcomes.
Description: The alignment between SNOMED CT and LOINC supports the seamless interoperability of tests and results using a single ontology, regardless of whether the source is LOINC or SNOMED CT. This linkage enables the standardized exchange of laboratory results across different healthcare systems, promoting continuity of care, improving coordination, and enhancing population health management.
Clinical Example: A patient’s lab tests are ordered using LOINC codes to specify the tests, while the results are captured using SNOMED CT codes for findings. Because the source data can be represented in either SNOMED CT or LOINC, systems that utilize either code system can seamlessly share data. This integration allows healthcare providers to analyze test results within a unified, common ontological framework, ensuring consistency and accuracy in clinical decision-making and follow-up care.
Clinical Benefits:
Promotes interoperability by enabling consistent data exchange.
Supports care coordination across different healthcare providers.
Facilitates population health management through standardized data.
Ensures continuity of care by providing accurate and timely lab results.
Description: Effective follow-up care is essential for managing chronic conditions and ensuring patients receive timely monitoring. Automating follow-up processes reduces missed appointments and improves health outcomes.
Clinical Example: A patient diagnosed with hyperlipidemia is scheduled for follow-up lipid panel tests at regular intervals. The initial diagnosis (SNOMED CT) and follow-up tests (LOINC) are linked to automate scheduling.
Clinical Benefits:
Automated follow-ups ensure continuity of care.
Reduces missed appointments.
Improves patient compliance and health outcomes.
Description: Accurate coding of lab orders and diagnoses is crucial for insurance processing, reimbursement, and financial management in healthcare. Standardized data helps ensure efficient claim approvals and billing.
Clinical Example: A clinician orders a diagnostic test for anemia. The diagnosis (SNOMED CT) and corresponding test result (LOINC) facilitate accurate insurance claim submission.
Clinical Benefits:
Efficient reimbursement and claims processing.
Reduces coding errors and claim denials.
Ensures financial transparency and compliance.
Description: The design of SNOMED CT, combined with available terminology services, enables systems to efficiently and accurately support the entry of both LOINC and SNOMED CT content. This integration enhances data entry, search capabilities, and the standardized storage of lab data, improving the accuracy and efficiency of clinical workflows.
Clinical Example: A clinician uses a system powered by SNOMED CT’s advanced search and terminology services to quickly identify and select appropriate lab tests. The system leverages the integration between SNOMED CT and LOINC, allowing the clinician to find tests using intuitive search terms while capturing the test orders with associated LOINC codes and storing the results using codes from either or both SNOMED CT and LOINC. This ensures standardized, accurate, and efficient data entry, facilitating seamless clinical documentation and interoperability.
Clinical Benefits:
Improves data entry accuracy and efficiency.
Facilitates consistent storage and retrieval of lab results.
Enhances overall workflow efficiency in clinical settings.
coding: Uses the LOINC code 51459-6
subject: Refers to the patient for whom the test is being ordered.
requester: Indicates the practitioner making the request.
performer: Specifies the organization or laboratory that will perform the test.
specimen: Points to the serum sample to be tested.
note: Includes additional instructions or details related to the test.
serviceRequest.code
Binds to the members of the simple type reference set containing the references to the SNOMED CT concepts representing a LOINC Orderable term

{
"resourceType":"ServiceRequest",
"id":"service-request-hev-antibody-test",
"status":"active",
"intent":"order",
"priority":"routine",
"code":{
"coding":[
{
"system":"http://snomed.info/sct",
"code":"72641010000107",
"display":"Arbitrary concentration of Hepatitis E virus antibody in serum at point in time by immunoassay (observable entity)"
},
{
"system":"http://loinc.org",
"code":"49776-8",
"display":"Hepatitis E virus Ab [Units/volume] in Serum by Immunoassay"
}
],
"text":"Hepatitis E Virus Antibody Concentration Test"
},
"subject":{
"reference":"Patient/example",
"display":"John Doe"
},
"authoredOn":"2025-01-28",
"requester":{
"reference":"Practitioner/example",
"display":"Dr. Smith"
},
"performer":[
{
"reference":"Organization/lab-example",
"display":"Example Diagnostic Laboratory"
}
],
"specimen":[
{
"reference":"Specimen/example-serum",
"display":"Serum Sample"
}
],
"note":[
{
"authorString":"Dr. Smith",
"time":"2025-01-28T10:00:00Z",
"text":"Please measure the concentration of antibodies to hepatitis E virus."
}
]
}LOINC Terms are primarily represented within the Observable Entity hierarchy of SNOMED CT for several reasons. Firstly, LOINC terms predominantly capture observable clinical phenomena, such as laboratory test results, measurements, observations, and assessments, which align closely with the scope of observable entities in SNOMED CT. This conceptual alignment ensures that many LOINC terms fit naturally within SNOMED CT’s structure, facilitating their integration into the broader clinical terminology framework. Additionally, LOINC terms often require a detailed representation of properties, scales, units, methods, and other attributes associated with clinical observations.
However, it is important to note that certain areas of LOINC, such as document-related terms or results of observations, may be more appropriately represented in other SNOMED CT hierarchies.
SNOMED CT’s structured framework supports this flexible approach, enabling precise representation of LOINC concepts and ensuring that all relevant attributes are accurately documented.
LOINC Parts are represented as SNOMED CT attribute values to enable the definition of LOINC Terms using SNOMED CT's logical foundation while retaining the meaning represented in LOINC. This approach ensures a granular representation of defining attributes like properties, scales, methods, components, and systems, facilitating precise documentation of clinical concepts. Additionally, leveraging SNOMED CT's semantic framework maintains consistency, accurately associating each component with the appropriate context and contributing to standardized clinical information representation.
To express LOINC terms as SNOMED CT concepts, a structured process was established. This ensures efficient development efforts resulting in content with a high level of consistency and accuracy throughout.
Here's a breakdown of the process and its objectives:
Utilizing latest LOINC Parts: The process begins by utilizing the latest list of LOINC Parts.
Mapping LOINC Parts: LOINC Terms are modeled based on various LOINC Parts, with specific instructions provided for each property type.
Assigning Attributes: Attributes necessary for modeling LOINC Terms are determined based on the LOINC Property type. Templates are provided for different scenarios, such as observable with component, observable with component and relative to, observable with inheres in, and susceptibility observable. These templates and their criteria for selection are described in the sub-pages listed below.
Modeling: LOINC axes (Property, Scale, Time, System, Method, Component, etc.) are mapped to appropriate SNOMED CT attributes.
Terming and Description: The Fully Specified Name (FSN) and a SNOMED CT–compliant acceptable description are created based on a defined set of rules. The Preferred Term (PT) corresponds to the LOINC long common name. Panels and Impression observables are handled as exceptions to these rules and follow different naming conventions.
Validation: Where a mapped attribute is not available for a given LOINC Part, depending on the axes it may be that the concept can be considered valid (although primitive and not fully defined), or in the case of some essential part like 'component', the concept cannot be considered fit for use and is suppressed - not included in the output of the process.
Creation and Review: New observable entity concepts are created in the LOINC Extension project (and updates are made to previously modeled content as required), and they undergo quality assurance (QA) review, classification, validation, etc., to ensure accuracy and consistency.
Modeling Examples: Examples are provided to illustrate how the content should be structured and how LOINC identifiers and descriptions should be integrated into SNOMED concepts.
The following pages describe the applied templates and provide examples.
The driving philosophy of the SNOMED LOINC Extension is to faithfully translate LOINC content into a SNOMED CT representation without adding, removing or modifying any term, and without the need for additional manual intervention. However, there are a small number of additional SNOMED CT concepts that were required in order to make the transition from a LOINC structure to a SNOMED one:
This is the concept that represents the LOINC Extension module itself. All SNOMED CT components are considered to be "in" a module, and every RF2 row in the LOINC Extension release files will show this identifier in the moduleId column.
This concept is used in the alternate identifier file to indicate that the code appearing in the first column of that file is a LOINC Term identifier.
It was decided that observables that represented a ratio between two quantities needed a primitive grouper.
This concept represents the simple reference set (or ValueSet) of the LOINC Terms which are considered orderable. That is, the LOINC.csv file ORDER_OBS column holds a value of either "Orderable" or "Both" for this term. "Both" here means that the LOINC Term is both orderable and observable, and - in our implementation - this means that it will appear in both of these reference sets.
This concept represents the simple reference set (or ValueSet) of the LOINC Terms which are considered observable.
This section contains a high-level overview of LOINC with some additional information in areas of direct relevance to subsequent chapters of this guide. For a more complete introduction to LOINC and supporting resources see http://loinc.org/get-started.
Logical Observation Identifiers Names and Codes (LOINC®) is a terminology standard for identifying laboratory tests and other measurements. It specifies universal codes, names, and other attributes for laboratory results as well as clinical reports, physical exam findings, survey instruments and other observations. It was developed to enable the exchange and pooling of results from diverse sources in order to enhance clinical care, outcomes management and research.
LOINC codes include laboratory and other clinical observations. The laboratory portion of LOINC includes measurements made on specimens, such in chemistry, hematology, serology, microbiology (including parasitology and virology), toxicology, cell counts, antibiotic susceptibilities, and more. The clinical portion of LOINC includes codes for observations made on patients and populations. LOINC has codes for observations like vital signs and a wide range of other clinical observations. Vital signs and anthropomorphic measurement are included in the scope of the cooperation agreement. Other clinical domains are not currently included in the scope of the agreement with IHTSDO.
LOINC includes codes that identify test observations (e.g. blood culture, antibiotic sensitivity). Other code systems, including SNOMED CT, often provide values that can be applied to represent results (e.g. Staphylococcus, amoxicillin). If we consider the observation as a question and the observation values as answers, LOINC provides codes for the questions and SNOMED CT provides codes for many of the non-numeric answers.
LOINC is owned, maintained, and licensed by the Regenstrief Institute, Inc. (RII). RII is a non-profit medical research organization associated with Indiana University School of Medicine. LOINC is available free of charge subject to the license conditions and terms of use . Updated versions are released twice a year. The LOINC web search tool is available at The LOINC database and a free browsing and mapping program, the Regenstrief LOINC Mapping Assistant (RELMA®), can be downloaded from
LOINC is widely adopted, and the user community continues to grow rapidly. The worldwide LOINC community presently has more than 34,000 users in 195 countries (see ).
Within the USA, LOINC has been adopted by large reference laboratories, health information exchanges, healthcare organizations, insurance companies, research applications, and several national standards initiatives and programs. In particular, LOINC was adopted as the standard for laboratory orders and results as part of the Centers for Medicare and Medicaid Services Electronic Health Record (EHR) "Meaningful Use" incentive program as specified in the Standards and Certification Criteria.
Outside the USA, LOINC has also been adopted as a national standard in more than 25 countries. In addition, there are many large data exchanges using LOINC around the world.
Each test is represented by a formal part LOINC name and assigned a LOINC code, which is a number with a check digit (see Table 1). Each code is also assigned an observation class (e.g., chemistry, hematology, and radiology); related names (to assist searches of the database); and other attributes.
For most classes of laboratory observations, there is also a "short name" (less than 40 characters long), and a Long Common Name that is more clinician friendly.
LOINC fully-specified names (including laboratory test results, clinical measurements, and results of other diagnostic studies) are defined in terms of six major axes as exemplified in the table below.
1. Component name
2. Property
3. Time
4. System
The fully-specified (formal) LOINC name must include entries for the first five major axes; the method axis is included only when the method distinction makes an important difference to the clinical interpretation of the result.
Four additional elements are represented as subparts of the main axes: challenge conditions (e.g., substance, route, and timing); adjustments; supersystem (e.g., fetus, blood product); and time operators (maximum, minimum, last, first), which are only used when relevant. The challenge axis is the most complex among these and may include details such as the amount, route, and timing (e.g., oral glucose tolerance test), but can also represent simpler conditions (e.g., fasting, sitting). Further details about these components can be found in the LOINC Users’ Guide.
Examples of LOINC terms are shown in this table
LOINC creates only those combinations that have clinical relevance in laboratory medicine. Terms are not created by blind permutations. Regenstrief (with guidance from the LOINC committee) reviews new code requests carefully to make sure that only meaningful LOINC codes that can be pragmatically used by the LOINC community are added to the database.
The atomic elements that comprise a fully-specified LOINC name are called LOINC "Parts". Each fully-specified name will consist of 5 or 6 parts (depending on whether the Method is important for interpreting the result), each with a part type corresponding to one of the major axes described above. Each LOINC Part is also assigned an identifier (that begins with the prefix "LP"), and internally Regenstrief maintains links between the full LOINC term and the Parts that comprise it. Regenstrief uses LOINC Parts in many aspects of LOINC development, such as: adding synonymy, building hierarchies, creating alternate display names, linking descriptive text, and more.
The Parts and their linkages are not distributed as part of the main LOINC table, but they are part of the content used by the RELMA program.
LOINC "part" concepts (e.g. sodium) serve as building blocks for the description of tests and observations, in association with a set of semantic relations. For example, Sodium:SCnc:Pt:Ser/Plas:Qn, the laboratory test in which the molar concentration of sodium is measured in the plasma (or serum) is identified by 2951-2.
The list of relations of this concept to other concepts ("parts") is shown in the examples below. For example, the "part" concept Sodium is linked to this test by the relationship component.
The LOINC terminology does not use description logic. However, the formal definitions provided by LOINC all conform to the 6-axis template and make use of named semantic relations.
In addition to creating codes for single tests, measurements, or observations, LOINC also defines concepts to represent collections of discrete elements such as panels (batteries), forms, and answer lists.
For example, a CBC/FBC test (complete/full blood count) is expected to deliver a set of results for different components including leukocytes, erythrocytes, hemoglobin, hematocrit, etc.
Regenstrief creates hierarchies to organize LOINC terms based on a structured arrangement of LOINC elements (also known as parts).RELMA has 5 selectable hierarchy trees that are commonly used to narrow the search limits returned:
Class
Multiaxial (component/system)
System (specimen)
Component
The LOINC hierarchy group LOINC concepts by specifying the parent-child relationship between the elements used in one (or more of the axes).
Most often, the hierarchies are used to restrict searches performed using RELMA.
The Multiaxial hierarchy organizes LOINC codes based on more than one of the LOINC name axes. For laboratory tests, it organizes first by the Component and then by the System. The Multiaxial Hierarchy is distributed as an accessory file that is part of the LOINC release.
The new LABORDERS.ONTOLOGY class introduces concepts to improve organization and allow for abstract, order-level granularity, addressing limitations of the LOINC Ontology used as a SNOMED CT Extension. These concepts serve two needs: grouper concepts for browsing a large list, and abstract order codes (requested by LOINC and SNOMED communities) that are less specific than result codes.
The new codes contain unique combinations of Component, System (specimen), and a new, abstract Property (measurement). They do not include scale or timing parts.
Crucially, these new concepts must not be used as result codes in result messages.
A LOINC panel is a grouping of related laboratory tests or observations often performed together or reported as a single entity. Components of a LOINC panel include:
Panel name: Describes the group of tests or observations being measured
Example: "Basic Metabolic Panel"
Component tests: Lists individual tests or observations included in the panel, each with its corresponding LOINC code.
This example demonstrates how LOINC codes, panels, and their respective parts and terms work together to identify and describe medical measurements and observations in a standardized and easy-to-understand manner.
LOINC Code: 8480-6 (Systolic blood pressure)
LOINC Panel: Basic Metabolic Panel (LOINC Code: 51990-0)
Component Tests: Glucose (LOINC Code: 2339-0), Electrolytes (LOINC Code: 55231-5), Kidney function tests (LOINC Code: 6299-2), etc.
A LOINC Answer List is a predefined set of possible answers associated with a LOINC term, typically used for representing qualitative or categorical results. These lists are often tied to laboratory tests, surveys, or other clinical observations where the result is selected from a finite set of options.
For example, the LOINC code 30324-8 (Cryptococcus sp Ag [Presence] in Serum by Latex agglutination) uses an answer list that includes values such as “Positive” and “Negative” to indicate the presence or absence of an antigen to Cryptococcus in serum by latex agglutination.
LOINC Answer Lists help standardize the possible responses for specific clinical concepts, ensuring consistency in how test results or observations are recorded and interpreted across systems.
LOINC Answer Values are the specific entries or responses within a LOINC Answer List. These values represent the standardized options clinicians or systems can choose from when documenting the result of a test or clinical observation. For example, in a LOINC Answer List for the code 72166-2 (Smoking status), possible answer values might include “Never Smoked”, “Former Smoker”, and “Current Smoker”. These predefined answer values ensure that responses are recorded uniformly, reducing ambiguity and facilitating the comparison of data across different systems and contexts.
6. Method
2164-2
CREATININE RENAL CLEARANCE:VRAT:24H:UR:QN
1514-9
GLUCOSEˆ2H POST 100 G GLUCOSE PO:MCNC:PT:SER/PLAS:QN
3665-7
GENTAMICINˆTROUGH:MCNC:PT:SER/PLAS:QN
17863-2
CALCIUM.IONIZED:MCNC:PT:SER/PLAS:QN
2863-9
ALBUMIN:MCNC:PT:SNV:QN:ELECTROPHORESIS
System
The specimen, body system, patient, or other object of the observation. E.g. cerebral spinal fluid, urine, radial artery.
(Type of) Scale
The scale or precision that differentiates among observations that are quantitative, ordinal (ranked choices), nominal (unranked choices), or narrative text.
(Type of) Method
An optional axis that identifies the way the observation was produced. It is used only when needed to distinguish observations that have clinically significant differences in interpretation if made by different methods.
Time
LP6960-1
Pt [Point in time (spot)]
System
LP7576-4
Ser/P1as [Serum or Plasma]
Scale
LP7753-9
Qn
Method
Time
LP6960-1
Pt [Point in time (spot)]
System
LP7681-2
Urine
Scale
LP7750-5
Nom [Nominal]
Method
LOINC code: Provides a unique identifier for the entire panel, facilitating standardized reporting and integration into electronic health records (EHRs) and healthcare information systems.
Example:
Code: 51990-0
Term: Basic Metabolic Panel
Properties:
Component: Basic metabolic panel
Property: -
Time: Pt (Point in time)
System: Bld (Blood)
2951-2
SODIUM:SCNC:PT:SER/PLAS:QN
2955-3
SODIUM:SCNC:PT:UR:QN
2956-1
Component name
The analyte or attribute being measured or observed. E.g., sodium, body weight.
(Kind of) Property
Differentiates kinds of quantities relating to the same substance. E.g., mass concentration, catalytic activity.
Time (Aspect)
LOINCTerm
2951-2
Sodium [Mass or Moles/volume] in Serum or Plasma
Component
LP15099-2
Sodium
Property
LP6860-3
LOINC Term
5778-6
Color of Urine
Component
LP 442509-8
Observation
Property
LP443403-3



SODIUM:SRAT:24H:UR:QN
Identifies whether the measurement is made at a point in time or a time interval. E.g. 24H for a urine sodium concentration.
SCnc [Substance Concentration]
Color
Scale: Qn (Quantitative)
The integration of LOINC observable entity concepts into SNOMED CT follows a structured yet distinct approach, wherein LOINC concepts are incorporated as subtypes of |Observable entity| but maintain a flat hierarchical structure.
In the LOINC Ontology browser, the flat structure becomes evident, when searching for the concept |observable entity| and then exploring the large number of direct children of this concept.
While this design ensures comprehensive coverage of LOINC concepts, it inherently limits the effectiveness of simple subsumption-based retrieval, as concepts are not deeply nested within a hierarchical framework. However, this challenge is mitigated by the rich semantic modeling of LOINC concepts within SNOMED CT, which includes well-defined attributes and explicit logical definitions.
To facilitate efficient retrieval of LOINC concepts within SNOMED CT, the Expression Constraint Language (ECL) serves as a robust querying mechanism. ECL enables users to construct precise and attribute-driven queries, leveraging core LOINC attributes such as component, property, system (specimen), time aspect, and method. This capability allows for highly granular and targeted data extraction, supporting advanced clinical decision-making, analytics, and interoperability within healthcare systems.
For a detailed introduction and guidance to the SNOMED CT Expression Constraint Language, please refer to Expression Constraint Language.
The simplest form of an expression constraint consists of a focus concept, optionally preceded by a constraint operator. The focus concept represents a specific SNOMED CT term, while the constraint operator refines the selection. Simple expression constraints enable precise retrieval of concepts based on hierarchical relationships, making them fundamental for querying SNOMED CT data.
Examples
→ Retrieves the exact concept |Mass concentration of glucose in blood at point in time (observable entity)|
<<
&#xNAN;→ Retrieves the exact concept |Mass concentration of glucose in blood at point in time (observable entity)| and all its descendants
Expression constraints with refinements extend simple expression constraints by specifying additional criteria to refine the selection of concepts. A refinement consists of an attribute-value pair, where the attribute represents a defining characteristic, and the value specifies the required condition. This allows for more precise querying of SNOMED CT concepts.
In the LOINC Ontology, expression constraints with refinements allow for more precise retrieval of LOINC terms based on specific attributes, such as Component, Site, or Technique. A refinement consists of an attribute-value pair, where the attribute defines a characteristic, and the value specifies the required condition.
Refinement Example
<< 363787002 : 370130000 = 117363000
→ Retrieves all Observable entity (363787002) terms where Property (370130000) is Mass concentration (117363000), such as Glucose [Mass/volume] in Blood.
The following page of the Specification and Guide details the different kinds of refinements that are supported by the Expression Constraint Language:
By applying refinements, users can precisely query LOINC-based Observable entities in SNOMED CT, ensuring they meet specific laboratory or clinical criteria.
The table below lists example ECL queries that can be performed to retrieve a set of concepts that matches the criteria delineated in the ECL expression.
Expression constraints with filters enhance concept selection by applying additional conditions based on metadata or external attributes rather than defining characteristics. Filters enable more flexible and targeted queries by constraining results based on criteria such as term status, module, effective time, or description type.
In the LOINC Ontology, expression constraints with filters allow for refined retrieval of LOINC terms based on metadata attributes such as versioning, language, or active status. By applying filters, users can narrow down results to match specific implementation requirements, ensuring more relevant and precise data retrieval.
The following pages of the Specification and Guide details the different kinds of filters that can be used to refine a query:
The table below provides some examples of key filters for querying the LOINC Ontology content
To execute expression constraints using the SNOMED LOINC Browser, please follow these instructions:
Navigate to the LOINC Ontology browser:
Enter the "Expression constraints Queries" in the panel to the right, as shown here:
Copy an expression constraint from the examples above
Paste the expression constraint into the Expression Constraints Query text box, as shown here:
Click Execute (green button below the textbox)
View results
Self
The expression constraint is satisfied only by the specified concept
Retrieves only the specified concept
593081010000107 |Aldosterone and renin activity panel - Plasma (observable entity)|
< : = *
Query for all observable entity concepts which have a
>7000 concepts including:
<< : = << AND = <<
Module Filter
<< {{ C moduleId = }}
This ECL is satisfied by all concepts that are descendants or self of observable entities belonging to the LOINC extension module. Applying this module filter will ensure that only concepts belonging to the LOINC extension are returned.
Description Filter
<< {{ term = "glucose"}}{{ C moduleId = }}

*
Any
Any concept in the substrate
All LOINC Ontology concepts (incl. concepts in dependent modules)
<
Descendant of
Retrieves all descendants (subtypes) of the specified concept
< 540081010000107 |Panel (observable entity)|
<<
Descendant or self of
Retrieves all descendants (subtypes) of the specified concept including the concept itself
<< 363787002 |Observable entity (observable entity)| → Includes all Observable entities
<!
Child of
Retrieves all children (immediate subtypes) of the specified concept excluding the concept itself
<! 363787002 |Observable entity (observable entity)| → Direct children like "Laboratory test result"
<<!
Child or self of
Retrieves all children (immediate subtypes) of the specified concept including the concept itself
<<! 363787002 |Observable entity (observable entity)| → "Laboratory test result" and itself
>
Ancestor of
Retrieves all ancestors (supertypes) of the specified concept excluding the concept itself
> 234567001 (Hemoglobin measurement) → Retrieves "Laboratory test result"
>>
Ancestor or self of
Retrieves all ancestors (supertypes) of the specified concept including the concept itself
>> 234567001 (Hemoglobin measurement) → Retrieves itself and ancestors
>!
Parent of
Retrieves all parents (immediate supertypes) of the specified concept excluding the concept itself
>! 123456001 (Blood glucose level) → Retrieves "Laboratory test result"
>>!
Parent or self of
Retrieves all parents (immediate supertypes) of the specified concept including the concept itself
>>! 123456001 (Blood glucose level) → Retrieves itself and immediate parent
^
Member of
Retrieves the referencedComponentId of all (active) members of a reference set
^ 735981007 (LOINC Reference Set in SNOMED CT) → Retrieves all members of the LOINC refset
Query for all observable entity concepts where
>8400 concepts including:
<< : = << AND =
Query for all observable entity concepts where
>629 concepts, including:
>
Query for all ancestors of
3 concepts, including:
>!
Query for parent of
<
Query for all descendants of
4 concepts including:
<< : = <<
Query for all observable entity concepts where the property attribute is (or a subtype)
~11000 concepts including
< {{ C definitionStatus = defined }}
Query for all sufficiently defined observable entity concepts
>18000 concepts including:
< {{ C definitionStatusId = }} : = <<
Query for all primitive observable entity concepts where the property is (or a subtype thereof)
>1200 concepts, including:
<< : = << OR = <<
Query for all observable entity concepts with a component of some sort of Immunoglobulin G or M
~4100 concepts including
<< : = << AND != <<
Query for all observable entity concepts with a component as some sort of Immnunoglobulin G, but NOT a subtype or self of
>2800 concepts, including:
<< : [1..1] = *, [1..1] = *, [1..1] = *, [0..0] = *, [0..0] =*
Query for LOINC Groupers: By using cardinality to require Property, Direct site, and Component, and exclude Scale type and Time aspect, this query identifies generalized observables (), defining shared features without constraining time or scale.
>2100 concepts, including:
This ECL adds the description filter {{ term = "glucose"}}.
This ECL is satisfied by all concepts that are descendants or self of observable entities belonging to the LOINC extension module and has a description including the term 'glucose'
Description Filter
Word-prefix-any-order
<< {{ term = "hydr uri"}} {{ C moduleId = }}
This ECL adds the description filter {{ term = "hydr uri"}}.
This example demonstrats the word-prefix-any-order search that is the default behaviour:
By default, term filters match using a word-prefix-any-order match technique. This means that each string value in the search term must match the start of a word in the concept's description term, but that these words may appear in any order.
If the LOINC Ontology has been loaded in a relational database using a model that complies with the RF2 specification for tables and column names, the content can be accessed using SQL queries in line with the examples below. To Set up SNOMED CT in a relational database, please follow the guidance and instructions provided in the SQL Practical Guide.
Get all members of the reference set
The reference set used in this example is:
635111010000100 |Logical Observation Identifiers Names and Codes Orderable Reference Set (foundation metadata concept)|
for example
Returns the ids of all the concepts or descriptions that are the members of the reference set.
Test if a concept is a member of the reference set
The concept used in this example is: 141951010000102 |Mass concentration of neopterin in urine at point in time (observable entity)|
for example
Returns:
0 : if the candidate component is not in the reference set.
1 : If the candidate component is a member of the reference set
Some types or reference set can include the same component more than once, so any value greater than zero indicate the component is a member of the references set.
SELECT referencedComponentId FROM snap_refset_simple WHERE active=1 AND refsetId=[refsetId];SELECT referencedComponentId FROM snap_refset_simple WHERE active=1 AND refsetId=635111010000100;SELECT count(referencedComponentId) FROM snap_refset_simple WHERE active=1 AND refsetId=[refsetId] AND referencedComponentId=[candidateComponentId];SELECT count(referencedComponentId) FROM snap_refset_simple WHERE active=1 AND refsetId=635111010000100 AND referencedComponentId=141951010000102;This template is utilized for LOINC terms representing susceptibility observations, such as microbial susceptibility tests.
This template is documented here: Susceptibility observable for LOINC (observable entity) - v1.0
The java implementation of this template can be found here.
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
LOINC Component: Specifies the target organism or substance towards which the susceptibility is observed
Note the three angle brackets at the start of this concept expression, indicating that the concept is primitive.
This will be because no attribute mapping was available for the "system" part.
This is also reflected in the terms below, where the LOINC system "Isolate.meningitis" has been used directly.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
Some slots are optional, and are then tidied up along with any linking words (eg 'using')
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
LOINC Term
<<< 363787002 |Observable entity (observable entity)| :
{
370130000 |Property (attribute)| -> 118588007 |Susceptibility (property) (qualifier value)|,
370132008 |Scale type (attribute)| -> 117365007 |Ordinal OR quantitative value (qualifier value)|,
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|,
704319004 |Inheres in (attribute)| -> 410607006 |Organism (organism)|,
704320005 |Towards (attribute)| -> 372840008 |Ciprofloxacin (substance)|
}[PROPERTY] of [COMPONENT] in [SYSTEM] at [TIME] by [METHOD] using [DEVICE] [CHALLENGE]481741010000108
2213311010000110
US: P
Susceptibility to ciprofloxacin in isolate.meningitis at point in time (observable entity)
Component
Ciprofloxacin
LP15380-6
704320005 |Towards (attribute)| -> 372840008 |Ciprofloxacin (substance)|
ci
481741010000108
2213301010000112
US: P
Ciprofloxacin [Susceptibility] for meningitis
CS
481741010000108
2213331010000118
US: A
Ciprofloxacin:Susc:Pt:Isolate.meningitis:OrdQn
CS
481741010000108
2213321010000116
US: A
Ciprofloxacin (Isolate.meningitis) [Susc]
CS
481741010000108
2213291010000111
US: A
Susceptibility to Ciprofloxacin in isolate.meningitis at point in time
ci
Property
Susc
LP6870-2
370130000 |Property (attribute)| -> 118588007 |Susceptibility (property) (qualifier value)|
Time
Pt
LP6960-1
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|
Scale
OrdQn
LP7752-1
370132008 |Scale type (attribute)| -> 117365007 |Ordinal OR quantitative value (qualifier value)|
This template is employed when the LOINC term involves an observation that inherently exists within or is associated with something else.
This template is documented in Confluence here: Quality observable with Inheres in for LOINC (observable entity) - v1.0
The java implementation of this template can be found here.
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
LOINC Component: Specifies what the observation inherently exists within or is associated with.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
[PROPERTY] of [COMPONENT] in [SYSTEM] at [TIME] by [METHOD] using [DEVICE] [CHALLENGE]
Some slots are optional, and are then tidied up along with any linking words (eg 'using')
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
=== 363787002 |Observable entity (observable entity)| :
{
370130000 |Property (attribute)| -> 410656007 |Type (property) (qualifier value)|,
370132008 |Scale type (attribute)| -> 117362005 |Nominal value (qualifier value)|,
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|,
704319004 |Inheres in (attribute)| -> 16951006 |Antigen in Rh blood group system (substance)|,
704327008 |Direct site (attribute)| -> 119297000 |Blood specimen (specimen)|
}481471010000107
2211701010000114
US: P
Type of antigen in Rh blood group system in blood at point in time (observable entity)
Component
Rh
LP14541-4
704319004 |Inheres in (attribute)| -> 16951006 |Antigen in Rh blood group system (substance)|
cI
481471010000107
2211691010000114
US: P
Rh [Type] in Blood
CS
481471010000107
2211721010000118
US: A
Rh:Type:Pt:Bld:Nom
CS
481471010000107
2211711010000112
US: A
Rh Nom (Bld)
CS
481471010000107
2211681010000111
US: A
Type of antigen in Rh blood group system in blood at point in time
cI
Property
Type
LP6886-8
370130000 |Property (attribute)| -> 410656007 |Type (property) (qualifier value)|
Time
Pt
LP6960-1
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|
System
Bld
LP7057-5
704327008 |Direct site (attribute)| -> 119297000 |Blood specimen (specimen)|
Scale
Nom
LP7750-5
370132008 |Scale type (attribute)| -> 117362005 |Nominal value (qualifier value)|
The workflow below outlines key considerations for adopting the SNOMED CT Ontology for laboratory test orders and results. A thorough understanding of how lab tests are currently ordered and recorded, along with the specific benefits sought, is essential before making this decision.
The process begins by evaluating the organization’s use of LOINC or SNOMED CT and determining whether transitioning to the LOINC Ontology would improve standardization and interoperability. It then provides a structured implementation approach, including deploying terminology servers, updating terminology bindings, and managing legacy data.
By adopting the SNOMED CT Ontology, organizations can streamline terminology management, enhance data accuracy, improve analytics, and facilitate seamless data exchange. This structured approach supports informed decision-making and ensures alignment with organizational goals.
The first step in setting up the LOINC Ontology is to install it in a SNOMED CT-enabled terminology server. The deployment process includes loading the latest release of the LOINC Ontology including required versions of the international and/or national edition, as described in 6.3 Deploying the LOINC Ontology. Using standardized APIs like FHIR Terminology Services ensures smooth data exchange between different systems, making lab test orders and results more standardized and interoperable.
Most healthcare systems currently use direct LOINC codes for lab tests. However, moving to the LOINC Ontology with SNOMED CT improves flexibility and automation. The SNOMED CT Expression Constraint Language (ECL) allows dynamic queries to fetch relevant codes instead of manually mapping them one by one. To migrate, organizations should first identify where LOINC codes are used and create ECL rules that match appropriate SNOMED CT concepts included in the LOINC Ontology. This approach reduces manual work, improves consistency, and makes terminology updates easier to manage in the future. Chapter 5.2 Terminology Bindings suggests bindings that may be relevant for such migration.
To ensure a smooth transition to the LOINC Ontology, it is crucial to first analyze how your system currently represents laboratory test orders and results. This involves identifying all locations in the data model where SNOMED CT, LOINC, or other code systems are applied and understanding how they interact with existing workflows and data exchange processes. By mapping out these connections, organizations can determine whether the current implementation is consistent, accurate, and aligned with best practices.
The goal of this analysis is to identify whether these codes should be updated to use concepts from the LOINC Ontology. This step helps optimize terminology bindings, improve interoperability, and ensure a more structured approach to laboratory data management. Using terminology auditing tools and automated reports can assist in detecting inconsistencies, redundant mappings, or areas where refinements are needed.
Once the LOINC Ontology is deployed, the next step is to evaluate the benefits of replacing direct LOINC terminology bindings with updated LOINC Ontology / SNOMED CT bindings that can take advantage of techniques like ECL Expressions. This is an optional step that can facilitate the maintenance and precision of the bindings.
Older lab test records still contain historical LOINC codes or SNOMED CT identifiers, so ensuring they remain usable after the transition is important. This means mapping old codes to their closest equivalent in the LOINC Ontology while keeping track of changes for future reference. Automated conversion tools can help in bulk updating records while maintaining historical integrity. A phased approach, starting with testing in a controlled environment before full deployment, ensures a smooth transition while avoiding data loss or inconsistencies.

This template is used when the LOINC term involves a component and is relative to something else as a ratio, such as a reference point or another component.
Note that Ratio concepts are given a parent of 540131010000107 |Ratio observable (observable entity)| to group them together.
This template is documented in Confluence here: Quality observable with Component and Relative to for LOINC Ratios (observable entity) - v1.0
The java implementation of this template can be found here.
LOINC Property: Represents the property of the observation, such as mass concentration or presence.
LOINC Scale: Describes the scale type, like quantitative or qualitative.
LOINC Time: Indicates the time aspect of the observation, e.g., single point in time.
LOINC System: Specifies the direct site of the observation.
LOINC Method: Describes the technique used for the observation.
LOINC Component: Represents the specific component being measured or observed.
LOINC Divisor: Specifies what the observation is relative to.
Template slots are filled by taking the preferred term of the relevant value from the model and making the initial character lower case, if allowed by the case significance setting of the preferred term.
Some slots are optional, and are then tidied up along with any linking words (eg 'using'). The SEPARATOR is determined programatically and might be "to" or a "/" symbol.
The LOINC Long Common Name is specified as the Preferred Term and the LOINC Short Common Name is also included unchanged as an acceptable synonym. Finally a terse form of the LOINC Parts is added, with all part names specified, separated by colons.
In the case of the example below, this results in the following terms:
LOINC Term
=== 540131010000107 |Ratio observable (observable entity)| :
{
[S1] 246093002 |Component (attribute)| -> 1166006 |Titanium (substance)|,
[S1] 370130000 |Property (attribute)| -> 118545004 |Mass ratio (property) (qualifier value)|,
[S1] 370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|,
[S1] 370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|,
[S1] 704325000 |Relative to (attribute)| -> 15373003 |Creatinine (substance)|,
[S1] 704327008 |Direct site (attribute)| -> 122575003 |Urine specimen (specimen)|
}[PROPERTY] of [COMPONENT] + SEPARATOR + [DIVISORS] in [SYSTEM] at [TIME] by [METHOD] using [DEVICE] [CHALLENGE]483251010000104
2216711010000115
US: P
Mass ratio of titanium to creatinine in urine at point in time (observable entity)
Component
Titanium
LP16839-0
246093002 |Component (attribute)| -> 1166006 |Titanium (substance)|
ci
483251010000104
2221411010000114
US: P
Titanium/Creatinine [Mass Ratio] in Urine
CS
483251010000104
2221431010000117
US: A
Titanium/Creatinine (U) [Mass ratio]
CS
483251010000104
2221441010000113
US: A
Titanium/Creatinine:MRto:Pt:Urine:Qn
CS
483251010000104
2221391010000114
US: A
Mass ratio of titanium/creatinine in urine at point in time
ci
483251010000104
2221401010000111
US: A
Mass ratio of titanium to creatinine in urine at point in time
ci
Divisors
Creatinine
LP32035-5
704325000 |Relative to (attribute)| -> 15373003 |Creatinine (substance)|
Property
MRto
LP6834-8
370130000 |Property (attribute)| -> 118545004 |Mass ratio (property) (qualifier value)|
Time
Pt
LP6960-1
370134009 |Time aspect (attribute)| -> 123029007 |Single point in time (qualifier value)|
System
Urine
LP7681-2
704327008 |Direct site (attribute)| -> 122575003 |Urine specimen (specimen)|
Scale
Qn
LP7753-9
370132008 |Scale type (attribute)| -> 30766002 |Quantitative (qualifier value)|