Short answer: In FHIR, a Coding is one code from one code system: a system (the URL of the code system), a code and a human display. A CodeableConcept is the concept as a whole: a list of Codings that mean the same thing in different systems, plus text, the words the clinician or the lab actually used. Diagnoses, tests, medicines and allergies are all CodeableConcepts.
Why several codings
A lab may send its own local code and a LOINC code for the same test; a diagnosis may carry SNOMED CT and ICD-10. Keeping all of them lets each receiving system pick the one it understands, and keeping text preserves what was written.
"code": {
"coding": [
{"system": "http://loinc.org", "code": "2160-0", "display": "Creatinine [Mass/volume] in Serum or Plasma"},
{"system": "https://lab.example.org/codes", "code": "CREA"}
],
"text": "Creatinine"
}
Mistakes to avoid
- A
codewithout asystem: the code is meaningless outside your database. - Invented system URLs for standard terminologies: LOINC is
http://loinc.org, SNOMED CThttp://snomed.info/sct, UCUMhttp://unitsofmeasure.org. - Dropping the original
textwhen you map to a standard code. - Treating
displayas the identifier: systems match on system + code.
In Anpheros
Anpheros keeps the original name from the report as text and adds the standard coding (LOINC, ATC, ICD-10, SNOMED CT) so data stays readable to people and systems. Developers: FHIR code systems and normalizing medical data.
Related pages
- What is a LOINC code? The number behind each test on your lab report
- What is SNOMED CT? Clinical terms as codes, explained simply
- UCUM units in lab results
Sources
Frequently asked questions
What is the difference between Coding and CodeableConcept?
A Coding is one code from one system; a CodeableConcept is a concept with one or more Codings and the original text.
What is the system URL for LOINC?
Should I keep local codes?
Yes, next to the standard coding. They help trace data back to the source.
Is display used to match codes?
No. Matching uses system and code; display is for people.
Try it free in the sandbox
Your first FHIR call in 5 minutes. An HL7 FHIR R4 API with the patient's consent built in: try it in the sandbox, then connect your own app or clinic system.
Free · 30 synthetic patients · no card

The more you log, the clearer your record
Your health history in one place, under your control.
Free · Works in your browser · No card
