Using post-coordinated SNOMED codes with FHIR


Just trying to clarify some of the data modelling in my mind. How do post-coordinated SNOMED expressions get used within FHIR?

When storing a CodeableConcept, do you store both the root code and qualifier codes in there? Also what do you do if the qualifier has overlap with concepts stored in FHIR?

So the obvious first-case is recording laterality. Would you place both the code for the condition and the qualifier code for laterality in the codeableconcept?

Then to give a real-world example of where there may be overlap, I need to record ‘suspected stroke’ early on as the chief complaint for the episode (because the data we are recording relates to modelling a suspected stroke clinical pathway, where patients are treated by a stroke team until the diagnosis is confirmed or refuted.

So - I create a Condition object I can use the verification status to indicate provisional/refuted.

Would you use the SNOMED code 230690007 (cerebrovascular accident, disorder), with a qualifier value (415684004) as two stored codes within the clinicalconcept? Or just the condition without the qualifier?

I’d definitely appreciate a few pointers on this area!

Best wishes,


From FHIR’s perspective, a post-coordinated code is just a code string, the same as any other code. Only constraint is that, with SNOMED, the recommendation is to send the post-coordinated codes without the “human readable” aspect, as that interferes with matching by those systems that don’t understand how to parse SNOMED expressions (which will probably be the majority of them).

So the clinical concept would have a single code which would include both the base code and the qualifier. (In the same way, you’d send the UCUM unit “mg” as a single code string, not as some complex construct consisting of separately communicated codes “m” and “g”.