A language may contain thousands of words. A conversation only needs the ones that belong in that moment.
The same is true in healthcare.
A CodeSystem may contain an enormous number of concepts, but that does not mean every concept is relevant for every form, workflow, register or clinical decision.
A ValueSet defines which codes may be used within a particular context.
It may contain the possible answers to a question, the permitted diagnoses for a registration, the observations available in a form or the substances that can be selected within a specific workflow.
This is why a ValueSet is more than a convenient shortlist.
It represents a decision about context.
Which concepts belong here? Which ones do not? How specific should the available choices be? And who determines when that selection needs to change?
A CodeSystem provides the wider language. A ValueSet determines which part of that language is appropriate for this particular conversation.
That selection has consequences.
When a ValueSet is too broad, users may choose codes that are technically valid but clinically inappropriate. When it is too narrow, important distinctions may no longer be expressible. And when different organisations use different ValueSets for what appears to be the same question, their data may look compatible while representing different choices.
The challenge is therefore not simply selecting codes.
It is making the reasoning behind that selection visible and maintainable.
Because every ValueSet quietly shapes what a system allows people to say.
And sometimes, what it prevents them from saying.
Next week: ConceptMap
Two concepts can be connected without meaning exactly the same thing.
#SemanticWeekly #ValueSet #SemanticInteroperability #HealthInformatics #Terminology
