A ValueSet is a FHIR resource that defines a curated, intentionally limited set of codes drawn from one or more CodeSystem resources. It specifies exactly which codes are allowed for a particular data element in a specific clinical context, such as restricting a gender field to 'male', 'female', and 'other' from the broader administrative gender code system.
Glossary
ValueSet

What is ValueSet?
A ValueSet is a FHIR resource that defines a curated, intentionally limited set of codes drawn from one or more code systems, intended for use in a specific clinical context or data element.
ValueSets are the mechanism that powers terminology binding in FHIR, linking a coded element to its permissible values. They can be defined intensionally via rules (e.g., 'all codes descending from a SNOMED CT concept') or extensionally by explicitly listing each code. A FHIR validator uses a ValueSet to enforce conformance, ensuring exchanged data uses only the expected terminology.
Key Features of a ValueSet
A ValueSet is a curated collection of codes that defines the allowed values for a specific data element in a FHIR resource. It is the mechanism that enforces semantic consistency across interoperable systems.
Compositional Definition
A ValueSet is defined by a set of rules, not just a static list. It can be intensionally defined using logical filters (e.g., 'all codes that are descendants of a specific SNOMED CT concept') or extensionally defined by explicitly enumerating every allowed code. This compositional approach allows a single ValueSet to dynamically include hundreds of codes from a large terminology like SNOMED CT without manual curation.
Multi-CodeSystem Aggregation
A single ValueSet can draw codes from multiple, disparate code systems to represent a single clinical concept. For example, a ValueSet for 'Diabetes Mellitus' might include:
- SNOMED CT code
73211009for clinical diagnosis - ICD-10-CM code
E11.9for billing classification - LOINC code
4548-4for a lab result like Hemoglobin A1c This aggregation bridges the gap between clinical, administrative, and laboratory terminologies within one data element.
Binding Strength
When a ValueSet is linked to a FHIR element, the binding strength dictates how strictly the code must match. The four levels are:
- required: The element MUST use a code from the ValueSet.
- extensible: The element SHOULD use a code from the ValueSet, but a local code is allowed if a suitable one doesn't exist.
- preferred: A code from the ValueSet is encouraged, but any valid code is acceptable.
- example: The ValueSet is just a suggestion for implementers.
Authoring and Governance
ValueSets are not static; they require a lifecycle. Tools like FHIR Shorthand (FSH) allow authors to define ValueSets as code, which is then compiled into the formal FHIR resource. Governance workflows manage versioning, deprecation, and the periodic synchronization of ValueSets with the underlying code systems, such as when a new ICD-10 code is released annually.
Context-Specific Curation
A ValueSet's primary purpose is to constrain a generic terminology for a specific use case. The code system for SNOMED CT contains over 350,000 concepts, but a ValueSet for 'Chief Complaint' in an emergency department EHR might only contain 50 relevant codes. This curation prevents data entry errors and ensures that downstream analytics and decision support rules operate on a predictable, clean data set.
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Frequently Asked Questions
Clear, technically precise answers to the most common questions about the FHIR ValueSet resource, its mechanics, and its role in healthcare interoperability.
A ValueSet is a FHIR resource that defines a curated, explicitly enumerated or rule-based set of codes drawn from one or more CodeSystem resources, intended for use in a specific clinical context or data element. It acts as a terminology binding target, answering the question: 'What are the allowed values for this field?' A ValueSet does not define the codes themselves; it selects and constrains them from an underlying code system like SNOMED CT, LOINC, or RxNorm. For example, a ValueSet for 'Diabetes Mellitus Types' might include specific SNOMED CT concept codes like 44054006 (Type 2 diabetes mellitus) while excluding unrelated endocrine disorders. The resource can define its content either by explicitly listing individual codes in a compose element or by using logical inclusion and exclusion criteria that dynamically resolve against a terminology server.
Related Terms
Mastering ValueSets requires understanding their relationship to the broader FHIR terminology infrastructure. These concepts form the foundation for semantic interoperability in healthcare data exchange.
CodeSystem
The source of truth that formally defines all valid concepts and their associated codes within a terminology. A CodeSystem resource enumerates every code—such as 195967001 for 'Asthma' in SNOMED CT—along with its display name, definition, and hierarchical relationships. ValueSets draw their codes from one or more CodeSystems, making the CodeSystem the foundational vocabulary that ValueSets curate and constrain for specific use cases.
Terminology Binding
The mechanism that links a coded FHIR element to a ValueSet, defining precisely which codes are allowed for that element. A binding specifies:
- Strength: required, extensible, preferred, or example
- ValueSet URI: the canonical reference to the constraining ValueSet
For example, the MedicationRequest.status element is required-bound to a ValueSet containing only active, on-hold, cancelled, and other defined status codes. This ensures every system sending a medication order uses identical status values.
ConceptMap
A resource that defines a semantic mapping between concepts in different code systems, enabling terminology translation. Unlike a ValueSet which simply enumerates codes, a ConceptMap specifies equivalences:
- equal: identical meaning
- wider: target is broader
- narrower: target is more specific
- unmatched: no equivalent exists
This is critical when converting data from a legacy system using ICD-9 to a FHIR system requiring SNOMED CT, ensuring clinical meaning is preserved across terminology boundaries.
FHIR Implementation Guide
A published set of rules, profiles, and ValueSets that defines how FHIR must be used to solve a specific interoperability problem. Implementation Guides—such as US Core or Da Vinci PDex—define the exact ValueSets that must be used for particular clinical data elements. For instance, the US Core Implementation Guide mandates a specific ValueSet for Observation.code when exchanging vital signs, ensuring every EHR system uses the same LOINC codes for blood pressure, heart rate, and temperature.
FHIR Validator
A software tool that checks FHIR resources against profiles and terminology bindings to ensure conformance. When validating a resource, the validator:
- Confirms coded elements contain codes from the bound ValueSet
- Checks binding strength: required bindings must match exactly
- Flags invalid codes with detailed error messages
This is the enforcement mechanism that ensures ValueSets are not merely documentation but active constraints that prevent non-conformant data from entering the healthcare ecosystem.

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us