Introducing SNOMED to a FHIR audience and FHIR to a SNOMED Audience!Explanation of 4 levels of binding.
Code, Coding, Codeable Concept as specific to SNOMED CT (include link to introduction and points about display terms & multiple languages).
▪Is the goal (a) homogenous population of resources or (b) permissive guidance to cater for greater flexibility?
▪Do we restrict value sets to ensure that the same information cannot be represented in 2 different ways
▪The same semantics can’t be included in 2 data elements
▪The same semantics can’t be included in 2 resources
▪How widely do we require/recommend SNOMED CT is used across each resource (e.g. vital signs, statuses)
▪Which of these are potentially in scope?
▪Restricting value sets to specific subhierarchies
▪New value sets for elements not using SNOMED CT
▪Restricting cardinalities to reduce ambiguity
▪Splicing to align with SNOMED CT concept model
▪Mapping FHIR value sets to SNOMED CT (e.g. status)
▪Defining SNOMED CT templates to support transformations
Many resources specify a "code" element which is the obvious location for a SNOMED CT code and this should be used where feasible. However, other fields may exist (often with multiple cardinality) that could potentially conflict or extend the meaning given by the code field. For example, in the Procedure Resource as well as the code, a message can supply (potentially multiple) bodysite codeable concepts.
So where a body site is NOT a child of the body site specified in code, what behaviour is expected?
Comment - issues with lack of relationship grouping (eg device with bodysite where multiple exist) and inability to specify whether the site is being accessed in a direct or indirect manner. We could, potentially, suggest enhancements to FHIR to bring its model into line with that of SNOMED to allow it to accurately state meaning using SNOMED CT concepts in an atomic manner, but what benefit would this give (plus ongoing maintenance overhead) when compared to using SNOMED CT in the first place?
The following options could be considered to handle the semantic overlap between, say, Condition code and bodySite: