Only this pageAll pages
Powered by GitBook
1 of 43

SNOMED CT Postcoordination Guide

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Requirements

A terminology server supporting postcoordination should support the general features of a SNOMED CT-enabled terminology server, and additionally, support the features required to manage and use postcoordinated expressions. This involves an expression repository to store the postcoordinated expressions, and a set of services to access, process and query the expressions in the same way as pre-coordinated SNOMED CT content. This section provides an overview of the general requirements of an expression repository and the associated services.

Provide Feedback

Expression Repository Requirements

Overview

The table below provides an overview of key requirements for an expression repository. Additional requirements may be relevant for certain use cases, and this overview should, therefore, be used as a minimum set. The definition of the terms used in this table can be found below.

Requirement
Description
Priority

Close-to-user form expression

The expression repository must store the expression as it was entered by the user

The following three expression forms may be supported by the expression repository:

  • Close-to-user form

    • The CTU represents the expression as it was entered or created

    • The CTU is the primary stored and communicated view of the expression

When included, the CTU, CF, and NNF should be stored in the expression repository in their canonical form. The canonical form is produced by applying a set of rules to the SNOMED CT expression to ensure a single unique representation of the expression.

The expression repository should support the unique identification of all expressions in the expression repository. The Canonical Close-to-user Form of an expression may be used to identify itself, but some implementations may require the storage of a fixed length, unique identifier for expressions used in an operational environment.

Some clinical systems have a limitation on the number of characters that can be used to identify clinical meanings in their databases. In systems that limit the length of these clinical meaning representations to 18 digits or less, postcoordinated expressions that are longer than this must be stored using a globally unique and unambiguous identifier containing 18 digits or less. A maximum of 18 digits is considered appropriate for this requirement, as this is the maximum length of standard SNOMED CT concept identifier. Therefore, any clinical system which supports SNOMED CT precoordinated concepts must support this number of characters.

The expression repository should support version history. Although there will only ever be one version of the CTU, there is likely to be many versions of the CF and NNF over time. Versioning is therefore required to allow lookup and analysis of previous versions of expressions. This involves the representation of the effective time and the substrate.

For each version of an expression, the date should be recorded to enable the lookup of an expression for a particular point in time.

For each version of the expression, the substrate used to generate the expression should be stored.

The substrate is the SNOMED CT content used for creating the expression. Because medical knowledge is constantly changing, and SNOMED CT evolves to reflect these changes, the concepts used to create an expression may be impacted over time. Therefore, it is important that the substrate is kept current to ensure that the meaning of the expression can be interpreted. With this in mind, both the SNOMED CT edition and the specific version of that edition (released on a given date) need to be included when determining the SNOMED CT substrate for an expression.

The defines a common format of URIs for identifying various SNOMED CT artefacts, including components and RF2 releases. This includes URIs for formally identifying the SNOMED CT international edition, national editions, and any specific versions thereof and can, therefore, be used to represent the substrate for the repository.

The CTU is immutable, i.e. it will not change even though the repository is updated to new versions of SNOMED CT
  • Classifiable form

    • The CF expression is a syntactically valid and concept model compliant representation of the close-to-user form expression

    • The CF serves as the input to the classifier, enabling expressions to be classified together with other SNOMED CT content

    • The CF may change when an expression repository is updated to a new version of SNOMED CT

    • When multiple classifiable forms exists for a CTU, these will be considered as different axioms when generating the NNF

  • Necessary normal form

    • The NNF is the output of classifying the CF expression with a given SNOMED edition

    • The NNF represents the necessary relationships used for querying, so this becomes part of your substrate when you’re running an Expression Constraint query

    • The NNF includes refinements representing inferred relationships, without any redundant refinements or relationship groups

    • For each CTU, there will be one NNF

  • Mandatory

    Classifiable form expression

    The expression repository should store the expression in a form that can be used as input to the classifier when generating the necessary normal form

    Optional

    Necessary normal form expression

    The expression repository should store the expression in a form that is suitable for querying

    Optional

    Expression id

    The expression repository should store a unique identifier that can provide an easy reference to the expression

    Optional

    Effective Time

    The expression repository must store an effective time for each version of an expression. Although the CTU will never change, the CF and NNF may.

    Mandatory

    Substrate

    The expression repository must include a reference to the SNOMED CT content used to generate the expression.

    Mandatory

    Details

    Expression Forms

    Identification

    Versioning

    Effective Time

    Substrate

    SNOMED CT URI Standard
    Provide Feedback

    SNOMED CT Expressions

    This chapter provides an introduction to SNOMED CT expressions and covers several aspects related to their representation and use.

    It begins by outlining the key differences between pre- and postcoordination, including their relative benefits and limitations. It covers the syntax used to represent expressions, providing a detailed overview of the various expression parts and operators that are used. The chapter introduces the different forms that expressions can take, and it discusses the role of the concept model and editorial guidance required to ensure the accuracy and consistency of expressions.

    Provide Feedback

    Storing Patient Data using Expressions

    Storing Patient Data using Expressions

    When implementing postcoordinated SNOMED CT expressions, there are different approaches to storage that may be considered.

    • Store the full expression in the same way as you would store any coded data item

    • Reference the expression in the record storage using a local expression identifier, and hold the expressions in a separate expression repository

    These approaches are described in the following pages.

    Use Cases

    There is a range of use cases in which it may be helpful to use postcoordination, including:

    Capture new clinical meanings in a health record, message structure, or query specification

    • To support situations where clinicians need to record and share a clinical meaning, which has not been defined in any release of SNOMED CT. This applies to direct data entry, coding values in UIs, or other clinical situations. SNOMED CT postcoordinated expressions can be used to represent a new clinical meaning as an alternative to concept authoring.

    Enable interoperability between different structural representations of the same clinical meaning

    Expressions in the EHR

    This part of the guide describes one way in which postcoordination might be applied in an EHR. This involves introducing the steps involved with setting up an expression repository, including approaches taken to create and add expressions to the repository.

    This section also introduces how postcoordination can be implemented to support essential EHR tasks including entering, storing, displaying, querying, and communicating expressions. In addition, references to the terminology services required to support these approaches will be provided to function as a practical source of reference for implementers wishing to enable postcoordination in their EHR.

    To support transformation between different representations within a clinical system or while exchanging data between systems. The postcoordinated expression is a common representation of clinical meaning. It can be exchanged and compared between models and shared as part of interoperability standards like HL7 FHIR.

    Represent maps from other code systems or from interface terms to an equivalent representation of the meaning in SNOMED CT

    • To map other code systems to SNOMED CT may require the representation of new meanings or combinations of meanings already represented in SNOMED CT. In these cases, when a suitable precoordinated concept is not available, postcoordination offers an alternative to concept authoring.

    Support Natural Language Processing

    • To transform the meaning of free text into structured SNOMED CT expressions. Postcoordination allows the representation of specific context or a greater amount of detail in the free text than you can capture with a single precoordinated code

    Provide Feedback

    Store the expression parts individually in separate fields
    Provide Feedback
    Provide Feedback
    Components and services required to enable postcoordination in an EHR

    Implementation

    This guide does not mandate a particular way to meet the requirements and the design of an expression repository as outlined in Requirements and Design. However, to ensure that terminology servers supporting postcoordination are implemented in a way that doesn't compromise terminological integrity and clinical safety, this section presents considerations important for the implementation of an expression repository. Also, different approaches to implementations are be presented.

    Ensuring Safety

    When implementing a terminology server supporting postcoordination with SNOMED CT, careful considerations must be taken to ensure that the approach taken doesn't compromise safety. As a combined effort between the terminology server and the client, the following criteria for expressions must, therefore, be ensured:

    • All expressions should conform to the concept model when represented in their classifiable form

    • No ambiguity is allowed, i.e. the transformation of the expression into its classifiable form must not result in a modification of the intended meaning of the expression

    Meeting these criteria can be done in several ways and depends on the responsibility taken by the terminology server and client respectively.

    Each terminology server designed to enable postcoordination with SNOMED CT should clearly specify the level of transformation supported, to enable requirements to be specified for the client side, and to support decisions about the use of postcoordination for the specific implementation. The diagram below illustrates four levels of support for postcoordination. At each level, the sum of restrictions provided by the terminology server and the client must ensure that the criteria for 'safe' postcoordinations are met.

    Level
    Description
    CTU
    CF

    Store the Full Expression

    With this approach, the full expression is stored in a single field, in the same way as the storage of single concept identifiers.

    The following image illustrates the principle of storing the full expression in the expression repository.

    Principles of storing the complete, full expression in the expression repository

    The canonical version of the compositional grammar expression is recommended for the storage of the full expression, because this has a minimum of syntactic noise and specified sort order for the elements within the expression.

    To use this approach, the health record must be able to record codes that are as long as the longest expression linked to one of the interface terms. The codes must also allow non-numeric values to be included, such as the colon and equal signs that are used in most expressions.

    Some clinical systems, however, may have limits on the length or datatype of the codes that may be recorded in their health records. So, in these cases, a unique local identifier can be assigned to each expression, so that this shorter expression id can be stored in the health record in the place of the full expression (see Store Expression Identifier).

    Terminology services

    Storing the full expression in the EHR record requires the EHR to ensure that the stored expression represents a valid SNOMED CT expression. For this purpose, the following services may be required:

    • Validate and Transform Expression (note, that for this purpose the CTU expression form of the expression should be used for data storage )

    In conjunction to the EHR data storage, this process may also require the expression being added to an expression repository, which require the following services

    • Lookup Expression

    • Add Expression

    Precoordination and Postcoordination

    SNOMED CT can be considered as a knowledge graph (direct acyclic graph), where each concept is represented as node in the graph structure, and the position of each node corresponds to its meaning and relationship to other concepts in the graph. These positions can be thought of as coordinates. Precoordinated concepts are predefined and accurately placed in the graph, while postcoordinated expressions require coordination into the graph by a description logic classifier. This is necessary to ensure that the combined concepts are positioned correctly in the graph to represent their relationships, and to allow for effective search and retrieval of the resulting concepts. In this context, the use of coordinates refers to the position of nodes in the SNOMED graph, and precoordination and postcoordination refer to the placement of concepts in the graph at a certain moment in time.

    A SNOMED CT concept represents a clinical idea with a unique SNOMED CT identifier that is distributed as part of a SNOMED CT release. Concepts are linked to terms by descriptions, which provide a human-readable representation of the meaning of the concept. Additionally, they are related to each other by relationships, where each relationship represents a defining property of the concept being the source of the relationship. These defining relationships provide a machine-processable representation of the concept’s meaning.

    Aside from the human-readable representation, all released SNOMED CT concepts can be represented in various ways, three of which are:

    More information about the Terminology Services requirements please see: Terminology Services Requirements

    Provide Feedback

    CTU should be fully MRCM compliant or conform to close-to-user form patterns

    Generated by transformation

    Level 2

    The transformation logic for these levels has not yet been agreed. At this stage, postcoordinations and transformation logic beyond the patterns described at level 1 are, therefore, not recommended.

    N/A

    Level 3

    N/A

    N/A

    N/A

    Level 0

    The terminology server will classify the expression without transformation.The client is responsible for ensuring that expressions are fully MRCM-compliant.

    CTU should be fully MRCM compliant

    Same as CTU

    Level 1

    Transformation Levels

    Terminology server transformations supported at the different levels

    Provide Feedback
    Figure 5.3-1: Overview of the four levels for support of postcoordination.

    The terminology server behaves as in level 0 if the expression is fully MRCM compliant. The terminology server will apply transformations based on known close-to-user form patterns to generate the classifiable form.The client is responsible for ensuring that expressions are fully MRCM-compliant or conform to allowed close-to-user form patterns.

    their concept identifier, which uniquely identifies the concept

  • their stated view, represented through the explicit representation of their defining properties as stated by the author of the concept

  • their inferred view, which represents the formal definition of concepts as logically derived by applying a description logic classifier to the stated view

  • Please explore the example below which provides an example of three different views that can be used to refer to the clinical meaning 'appendicitis'

    Relationships

    Relationships

    To support a standardized and computer-processable way of representing and referring to clinical meanings in SNOMED CT, irrespective of whether this involves a single concept identifier, or a combination of concept identifiers, SNOMED CT supports expressions.

    A SNOMED CT expression is a structured combination of one or more concept identifiers that represents a single clinical idea. SNOMED International distinguish between two main types of expressions, i.e. precoordinated expressions and postcoordinated expressions.

    Precoordinated Expression
    Postcoordinated Expression

    An expression containing a single concept identifier

    An expression containing two or more concept identifiers

    A precoordinated expression is the simplest form of an expression. It contains a single concept identifier, and optionally one of the terms associated with the concept to make the expression human readable. For example, a precoordinated expression, which means “fracture of tibia” can be as represented as “31978002”, optionally followed by the term ‘fracture of tibia’ placed in vertical bars known as ‘pipes’. This means that all available concepts in SNOMED CT can be represented as precoordinated expressions, by using the assigned concept identifier.

    Examples of precoordinated expressions are:

    • 74400008 |Appendicitis (disorder)|

    • 765472003 | Excision of left kidney (procedure)|

    • 108365000 | Infection of skin (disorder)|

    Postcoordinated expressions contain two or more concept identifiers and are used to specify a clinical meaning by referencing existing SNOMED CT concepts.

    For example, the clinical meaning "Pain in left arm" can be represented by the following expression including three SNOMED CT concepts:

    Another example is the clinical meaning of "Edema of right lung", which can be represented as:

    The SNOMED CT Compositional Grammar is used as the syntax for expressions, and the SNOMED CT Concept Model rules determine how concepts can be combined. These topics are elaborated in the subsequent pages of this guide.

    Postcoordinatied expressions are useful to support the authoring of new concepts in SNOMED CT, but they may also be created to support specific implementation use cases, e.g. when no precoordinated concept is available for a specific clinical meaning, or when an information model or implementation strategy requires a certain representation of the clinical meanings.

    The ability to create postcoordinated expressions greatly increases the depth of detail that SNOMED CT can represent without having to include every possible specific site for every possible disorder via a released concept.

    Provide Feedback

    Precoordination and Postcoordination

    Concepts and Expressions

    102556003 |Pain in upper limb| : 272741003 |Laterality| = 7771000 |Left|
    267038008 |Oedema| : 363698007 |Finding site| = 3341006 |Right lung structure|

    Example

    SNOMED CT Expressions

    Expression Types

    Precoordinated Expression

    Postcoordinated Expression

    Expression Forms

    Semantic Forms

    Similar to the stated and inferred view of precoordinated concepts, as described in Precoordination and Postcoordination, the meaning represented by postcoordinated expressions can also be represented in different ways. When enabling postcoordinated expressions within a system, it is important to be support these different views and understand why they are needed.

    Close to User Form

    The Close to User Form (CTU) Expression is the faithful representation of the clinical meaning as it was entered by the user. It is the{ primary stored and communicated view of the clinical information that’s encoded using SNOMED CT. The CTU Expression includes any refinement that was applied by the system, based on the selections made in a data entry form, or those made explicitly.

    And, importantly, it does not include any additional relationships that are added, based on classifier rules to make the expression complete or to normalize it. It only includes the parts of the clinical meaning that were specifically intended by the user.

    Classifiable Form

    The Classifiable Form (CF) expression is a syntactically valid and concept model compliant representation of the CTU expression. It serves as the input to the classifier, enabling expressions to be classified together with other SNOMED CT content.

    And in the classifiable form, any ungrouped attributes and role groups have been validated and appropriately applied to the definition of the focus concept.

    The Necessary Normal Form (NNF) expression is the inferred view of the expression, and it includes all the relationships that are necessarily true, with redundancy removed. This is the output of the process that took the classifiable form expression and classified it with a given SNOMED edition. The NNF represents the necessary relationships used for querying, so this becomes part of your substrate when you’re running an Expression Constraint query.

    The NNF includes refinements that represent inferred relationships, without any redundant refinements or redundant relationship groups.

    Within the released SNOMED CT content, the stated definitions of SNOMED CT concepts are represented as Description Logic OWL axioms, and these are the clinical definition that SNOMED authors state when they define the meaning of a concept. For postcoordinated expressions, the CTU expression can be compared to the stated concept definition, as it represents the expression as it was created.

    When querying SNOMED CT concepts , the inferred definitions are used. The inferred definition of a concept is derived (or inferred) by classifying the stated definitions using a Description Logic reasoner. The output of this classification process is represented in the release using the relationship table and includes the necessary normal form for each concept. The necessary normal form represents the set of ‘necessary’ inferred relationships. For more information on concept definitions, please refer to Appendix D of the release file specification: . In the same way as for precoordinated concepts, the inferred view, or the NNF expressions, needs to be generated to support querying over postcoordinated expressions, see the image below.

    To enable the classification of the CTU expression, a transformation is required to provide a form that can serve as input to a Description Logic reasoner. Such reasoner requires a form which is syntactically valid and complies to the concept model rules. This is why all support for postcoordination also requires the ability to generate the CF of each expression.

    Although the Compositional Grammar syntax supports a standard way of representing SNOMED CT expressions, expressions that contain exactly the same concept identifiers and refinements, may still differ from one another in the following ways:

    • Inclusion of whitespace between elements

    • Inclusion of specific terms associated with identified concepts

    • The order in which focus concepts, refinements, attributes, and attribute groups appear

    The canonical form of an expression is a serialized representation produced by applying a set of rules that ensure a single unique representation for any expression.

    Original Expression
    Canonical Form

    Alternatives to Postcoordination

    Before you launch into a postcoordinated solution it’s important to understand that in some cases there are alternatives to postcoordination that may be easier to implement.

    The two main alternatives to postcoordination are:

    Create extension concepts:

    • Firstly, and perhaps the most obvious alternative to postcoordination is to add the new clinical meanings to an extension, as precoordinated content. This approach enables the use of standard SNOMED authoring tools to classify the concepts and distribute them in a way that supports queries. However, this alternative is not an option for everyone, and in those cases, postcoordination may be considered.

    Use information model structure:

    • The second alternative is to define the postcoordination structure using the information model, using separate coded data elements for the focus concept, and each of the refinement values in the expression. For example, rather than using an expression for ‘fracture of the foot’, two separate data elements could be applied, one for the SNOMED CT concept for 'fracture' and the other for the SNOMED CT concept for 'foot'. This approach has good accuracy for data capture but introduces significant limitations for the execution of semantic queries over the clinical data, as the focus concept is separated from the refinements and is not combined into a single SNOMED expression. In some situations where data is captured separately and follows the SNOMED CT concept model, post-processing can be applied to convert information models into postcoordinated expressions, after data capture.

    Appendixes

    Provide Feedback
    Appendix A: Techniques for Autogenerating Display Terms
    Appendix B - Videos
    Provide Feedback
    387458008 | Aspirin (substance)|
    73211009 | Diabetes mellitus (disorder)|
    423827005 | Endoscopy (procedure)|
    31978002 |Fracture of tibia (disorder)|
    64572001
    74400008 |Appendicitis (disorder)|

    : { = , = }

    64572001:{116676008=72704001,363698007=12611008}

    195967001 |Asthma| : 246112005 |Severity| = 24484000 |Severe|

    195967001:246112005=24484000

    417076003 |Dislocation of shoulder joint| : 272741003 |Laterality| = 24028007 |Right|

    417076003:272741003=24028007

    71388002 |Procedure| : { 405815000 |Procedure device| = 122456005 |Laser device| , 260686004 |Method| = 129304002 |Excision - action| , 405813007 |Procedure site - direct| = 15497006 |Ovarian structure| }

    71388002:{260686004=129304002,405813007=15497006,405815000=122456005}

    Necessary Normal Form

    Objective of Different Semantic Forms

    Examples

    Provide Feedback
    Expression forms compared to the representations of precoordinated content.

    Design

    This part of the guide introduces the design features of a terminology server supporting postcoordination with SNOMED CT.

    This design meets the requirements outlined in and includes:

    Requirements
    Expression Repository Design
    Terminology Services Design
    Provide Feedback
    64572001 |Disease|
    363698007 |Finding site|
    12611008 |Bone structure of tibia|
    116676008 |Associated morphology|
    72704001 |Fracture|

    Query Expressions

    When postcoordinated expressions are used to represent clinical information, this data needs to be queried and analyzed in the same way as data recorded using precoordinated concepts.

    Systems supporting postcoordination should thus ensure that analytics features are enabled to take advantage of SNOMED CT's hierarchy and explicit representation of defining properties. Furthermore, this facility should allow queries to be generated that combine SNOMED CT-specific selection criteria with other health record criteria.

    Key analytics features that should be supported include:

    • Subsumption which involves the determination of whether one concept (or expression) is a kind of another concept (or expression) is the fundamental capability enabled by SNOMED CT. For example, answering the question 'Which patients have an infectious disease?' involves finding all the patients with any kind of infectious disease (e.g. viral pneumonia, tuberculosis).

    • Selective retrieval which involves using the properties (relationships) derived from classification to retrieve concepts (or expressions) matching specified criteria.

    Subsumption testing between expressions tests to see if the candidate expression (often recorded in a patient record) is subsumed by a predicate expression (typically part of the query being run across the patient record). To enable subsumption testing it is necessary to ensure that the expression is processed in the same way as the precoordinated content. This requires the expression to be positioned in the right coordinates of the SNOMED CT hierarchy (aka coordinated), as illustrated in the diagram below.

    Subsumption testing may be performed to test if this expression is a subtype of the concept . This test could be required to identify a cohort of patients who have been diagnosed with some kind of lump in a body structure.

    However, to enable systems to perform this test, the expression first needs to be classified with the precoordinated content to generate an inferred subtype hierarchy including both the postcoordinated expression and the query concept. If a classification is not performed, the software will not be able to automatically derive where the expression belongs in the SNOMED CT hierarchy relative to the query concept.

    As illustrated in the image below, the candidate expression is subsumed by the predicate expression.

    Systems supporting postcoordination should provide a mechanism to allow users to specify retrieval requirements based on the inferred properties of an expression. Attribute relationships in conjunction with the subtype hierarchies provide an efficient mechanism for specifying query criteria, e.g. a query for "all diseases with a of and an of ". As illustrated in the diagram below, the inferred properties can be used to identify the concepts and expressions matching these query criteria. However, as for subsumption testing, this kind of query feature demands for the expressions to be classified with the precoordinated concepts in order for the expressions to infer all necessary properties correctly.

    Enabling queries over expressions to be performed requires the availability of the following terminology services:

    • Query Expression - Including both services to perform subsumption testing and selective retrieval of expressions

    Prepopulated Expressions

    When using pre-populated expressions, the user is presented with a list of clinical phrases (‘interface terms’), using a pick list, checkboxes, or another type of data entry control.

    The essence of this approach is that the user is presented with a clinical phrase representing a specific clinical meaning, and in the backend of the system, this clinical phrase is associated with a postcoordinated expression (instead of a precoordinated concept).

    In the example shown in the image below, the user interface includes a list of phrases such as “Open fracture of left radius”, and “Open fracture of right radius”. Some of these phrases may be associated with precoordinated content (either via mapping or the released SNOMED CT descriptions), while other phrases may be associated with postcoordinated expressions. In this example, the phrase “Open fracture of left radius” and “Open fracture of left ulna” is associated with postcoordinated expressions.

    Options displayed in a user interface may be associated with a postcoordinated expression

    This approach requires the expressions to be created and mapped to an interface term by a SNOMED CT implementer. This occurs as part of the terminology binding process in the design stage of the implementation. Different approaches to the creation of the expressions exist and depend on the tools available. These approaches are described in the following pages.

    Using postcoordinated expressions for items in a prepopulated list, or predefined values in a UI, each expression is associated with one field on the user interface. For precoordinated concepts, the best practice is to record the concept identifier as the code, and the term that was displayed or selected by the user as the original text.

    The recommended approach to the storage of predefined postcoodinated expressions is similar to the storage of precoordinated concepts. This means that the display term used for the expression should be recorded in the health record, but the ‘code’ should either be the terse form of the full expression (i.e. the expression with the terms and spaces removed), or the unique identifier associated with the expression when this was added to the expression repository.

    Terminology services

    Enabling prepopulated expressions in the EHR requires the EHR to access expressions already created in the expression repository. For this purpose, the following services may be required:

    Expressions in a Terminology Server

    To enable postcoordination within electronic health records a terminology server is required that provides the services needed to validate and process expressions.

    The terminology services required for postcoordinated expressions are similar to the ones used when authoring content within a published SNOMED CT edition.

    When submitting postcoordinated expressions to a terminology server, the expressions can be seen as a derivative, or a supplement, to the SNOMED CT Edition content available in the terminology server. Postcoordinated content lives alongside and can only be interpreted or understood in the context of a specific SNOMED CT Edition version.

    Because of the dependency on a versioned SNOMED CT Edition, the successful implementation of expressions involves services to continuously ensure validity and traceability. Similar to the approach to creating SNOMED CT extensions containing clinical concepts, postcoordinated expressions, therefore, need to follow the general principles for extensions, including validation, classification, and versioning.

    As illustrated in the image below, the terminology server should, therefore, be designed to hold the given versioned SNOMED CT Edition, and an expression repository to hold the postcoordinated expressions. Furthermore, in addition to the services required by the EHR to use the content and derivatives of released SNOMED CT Editions (see Terminology Services Guide), services are required to support the use of the postcoordinated content.

    The following pages will elaborate on the requirements, overall design, and implementation of a SNOMED CT-enabled expression repository, and present the services needed for supporting expressions in a terminology server.

    Form-based Entry of Expressions

    With the form-based approach, the combination of values recorded in different data entry controls results in specific expressions to be formed.

    With this approach, using an expression template can help to ensure that the selected values are added in the appropriate places within the expression.

    The example shown in the image below illustrates how an expression template is used to apply a laterality to a selected diagnosis. In this example, if a user enters the values Open fracture of radius as the diagnosis, and the value left in the side field, the values entered are then used to populate the slots in the expression template and form an expression representing the meaning of an 'open fracture of radius with a laterality of left'.

    Expression templates associated with a data entry form should be created during the design phase of the implementation, and then populated with values at run time, when the user selects values in each field. Please see section /expression template for details on expression templates.

    When using the form-based approach for entering postcoordinated expressions in an EHR, it is recommended to store the data in an information structure that matches the fields on the form and to record the concept identifier and display term for each of the fields, within that information structure. This enables the system to efficiently display health records that have been recorded previously, and also provides full traceability of what the user selected at the point of data entry. It also enables the possibility of re-generating a postcoordinated expression at a later date that is potentially different from that which was originally generated, e.g. if an error were found in the original template or if structural changes in SNOMED force a redesign of the expression template.

    Preparing Expression Repository

    Enabling postcoordination in an EHR may involve the preparation of an expression repository. This involves the actual creation of the expression repository and often the addition of a set of postcoordinated expressions to be included in the value sets of the EHR.

    To enable expressions to be stored and accessed in the terminology server, the expression repository first needs to be created.

    A SNOMED CT-enabled expression repository is not a standalone artifact. The expression repository is tightly coupled with the terminology repository in the sense that all expressions represented in the expression repository are composed of concepts included in the applied terminology repository, i.e. a specific version of a SNOMED CT Edition. The terminology content on which the expression repository depends is also referred to as the substrate. When a terminology repository is updated to include a new version of SNOMED CT, the expression repository will equally need to be updated to align with the applied terminology content.

    Depending on the choices made as part of a SNOMED CT implementation project, the addition of expressions to an expression repository may be done at various stages of implementation and by different users. For example:

    Displaying Expressions in an EHR

    The approach to the display of postcoordinated expressions will depend on how they are created, stored, and exchanged.

    But the general recommendation is to display the expressions in the same way as they were entered or confirmed by the user. For example, if the expression has been constructed from the selections made in a form, the display of the expression would involve rendering the selected terms with an indication of the context in which the value was selected. Some situations may, however, require a single term to be constructed for an expression, e.g. to support data exchange.

    The following pages introduce general approaches to the creation of display terms for postcoordinated expressions.

    Expression Repository Design

    The logical design of an expression repository includes the entities required to hold the data relevant for an expression version.

    The image in this page illustrates an expression repository contains one or more expression versions.Each expression version must contain the following data:

    • Versioning data , to represent the time and substrate of the given version of the expression

    • A Close-to-user form expression , to represent the expression as it was stated upon creation

    Manual Creation of Display Terms
    Automatic Creation of Display Terms
    Provide Feedback
    Provide Feedback
    Overall EHR design with a terminology server supporting postcoordination.

    In addition to the storage of the individual concept identifiers, the derived expression (in terse form) may also be stored to meet specific EHR-requirements. Generating the derived expression may be done using an expression template.

    Terminology services

    Enabling form-based entry of expressions in the EHR requires the EHR to dynamically access at runtime SNOMED CT concepts as determined by the terminology binding specified for each data element. At the point of data entry, no specific services for postcoordination are required, however, if the resulting expression is stored as a single expression, or subsequently communicated, terminology services are required to add the expression to the expression repository. For this purpose, the following services are required:

    • Add Expression (including required sub-services)

    Provide Feedback

    https://github.com/SNOMED-Documents/snomed-postcoordination-guide/blob/main/4-expressions-in-the-ehr/4.1-preparing-expression-repository/4.1.3-creating-expressions.md#id-4.1.3.3-expression-templates
    In this example, the value of the 'diagnosis' field and the value of the 'side' field are used to represent different parts of the resulting expression.
    Lookup Expression
    Search Expression
    Get Display Term
    Provide Feedback

    Subsumption

    Consider the expression:

    Selective Retrieval

    Terminology services for Querying Expressions

    More information about the Terminology Services requirements please see: Terminology Services Requirements

    300848003 |Mass of body structure (finding)|
    | Finding site|
    | Shoulder region structure|
    | Associated morphology|
    | Edema|
    Provide Feedback
    Subsumption testing of expressions requires the expressions to be processed as if they were part of the released (precoordinated) SNOMED CT content.
    Illustration of the principles of how the inferred properties of concepts and expressions can be utilized to specify query criteria selectively.
    372244006 |Malignant melanoma| :
    { 363698007 |Finding site| =
    ( 16982005 |Shoulder region structure| : 272741003 |Laterality| = 24028007 |Right| ) }

    Some implementations may restrict the creation of expressions to only during the implementation stage, where

    • Expressions are created by people involved with the implementation

    • Expressions are added to the expression repository to be made available for end users in the same way as precoordinated SNOMED CT content. By this approach, the end users can not themselves directly create new postcoordinated expressions

  • Some implementations may enable runtime creation of postcoordinated expressions by end users, where

    • Expressions are created by end-users as part of the data entry process

    • Expressions are added to the expression repository as part of saving patient data in the EHR record store.

  • Provide Feedback

    Creating and Expression Repository

    The services required by a terminology server to create an expression repository are described in Create Expression Repository The overall requirements for updating an expression repository are described in Update Expression Repository

    Adding Expressions to Repository

    The services required by the terminology server to add expressions to an expression repository are described in .

    Each expression version should contain the following data:
    • An expression identifier , if this is required to uniquely identify the expression

    • A Classifiable form expression , to enable the generation of the NNF expression

    • A Necessary Normal Form expression , to support querying the expression

    All SNOMED CT concepts referenced by expressions in the repository at a particular point in time should all be included, and active, in a specific versioned edition of SNOMED CT. General expression repository design.

    General expression repository design.

    Provide Feedback

    Store Expression Identifier

    In some cases, it may be preferred or required to use a single identifier to represent the stored expression. With this approach, a unique local identifier is assigned to each expression, so that this can be stored in the health record in the place of the full expression. This approach may be selected if the clinical system has a limit on the length of the codes that are recorded in their health records.

    When local expression identifiers are used, these are then linked to the corresponding full expression and display term within an Expression Repository, as illustrated in the image below.

    This image illustrates the principles of storing postcoordinated expressions in an expression repository. The EHR data store uses local expression identifiers which are linked to a SNOMED CT expression and display term within the expression repository

    Terminology services

    Storing an expression identifier requires the expression to first be added to the expression repository, and assigned a unique identifier. The resulting identifier will be stored in the EHR data store. For this purpose, the following services may be required:

    • Lookup Expression- to get the identifier of the expression to be stored.

    • Add Expression. This is only required in cases where the expression does not already exist in the expression repository.

    Expression Repository with HL7 FHIR

    This page summarizes the implementation of an Expression Extension using the HL7 FHIR Terminology Services API. This approach is in the process of being implemented and supported by the Snowstorm FH

    To represent an expression repository using FHIR terminology services, the required solution will depend on what approach is taken to uniquely refer to the expressions:

    • The expressions themselves may be used as an identifier

      • With this approach, a CodeSystem Supplement will be created and function as the expression repository

    Manual Creation of Display Terms

    Manual Creation of Display Terms

    When a postcoordinated expression is created during the implementation process, this may involve the manual creation of a display term for each expression. Two scenarios for the manual creation of display terms can be outlined:

    1. The list of clinical phrases is developed first, based on user requirements or an existing library of clinical phrases, and then these will be mapped to SNOMED expressions

    2. A set of postcoordinated expressions are created first to represent the clinical meanings that are required, and a display term is created for each expression

    Implementation Examples

    Implementation Examples

    The following pages provides examples of how specific terminology servers support the implementation of expression repositories.

    Expression Repository in RF2
    Expression Repository with HL7 FHIR
    Provide Feedback
    Add Expression

    More information about the Terminology Services requirements please see: Terminology Services Requirements

    Provide Feedback

    This supplements the applied SNOMED CT CodeSystem

  • A separate identifier is created for each expression

    • With this approach, the following FHIR terminology resources are required

      • a CodeSystem Supplement to function as the expression repository

        • This supplements the applied SNOMED CT CodeSystem

      • a to hold the expression identifiers

      • a to hold the association between the expression identifiers and the expressions

  • Design of an expression repository within an HL7 FHIR enabled terminology server

    With this implementation, the defined operations for CodeSystems and ConceptMaps can be utilized to support the services required for an expression repository. Please refer to the HL7 FHIR documentation for further details:

    • CodeSystem

      • $lookup

      • $validate-code

    • ConceptMap

    Creating an expression repository using a FHIR Terminology Server involves the creation of the following structures:

    • A CodeSystem supplement (expRep): This functions as the actual expression repository and is used to hold the expressions

    • A CodeSystem (expId): This code system is used to hold the unique expression identifiers

    • A ConceptMap: This is used to map between the expressions in the expRep CodeSystem supplement and the expId CodeSystem. The ConceptMap enables the translation of expressions to (and from) shorter codes for systems with restricted code lengths

    Workflow for creating an expression repository within an HL7 FHIR Terminology Server.
    Service
    Description
    Input

    Create Code System Supplement

    POST /CodeSystem

    Create the CodeSystem supplement.

    This operation must specify a version URI that uses the snomed.info xsct URI with a specific module but no version.

    This resource must supplement a specific version of a SNOMED CT edition.

    The example supplements the International Edition of SNOMED CT (900000000000207008), version Jan 2023 (20230131).

    {

    Create SNOMED Exp IDs Code System

    POST /CodeSystem

    (Only needed if EHR cannot store expressions)

    If needed, create a CodeSystem for expression identifiers.

    Service
    Description
    Input

    GET /CodeSystem/{id}

    Get the details of the Code System using the provided ID; it is the same operation for the supplement or the Exp. IDs code system.

    Service
    Description
    Input

    PATCH /CodeSystem/{id}

    Adds an expression in the Code System Supplement using a patch operation.

    The display value can be generated from the expression, or the expression itself could be used in this field.

    This operation should run validation on the expression being inserted into the supplement.

    (Source: https://fhirblog.com/2019/08/13/updating-a-resource-using-patch/)

    Service
    Description
    Input
    Output

    GET /CodeSystem/{supplementId}/$lookup?code={CTU}

    GET /CodeSystem//$lookup?system={versionUri}&code={CTU}

    Lookup Expression in the supplement

    • versionUri

    • CTU: close-to-user expression

    GET /ConceptMap/{snomed-exp-id-map}/$translate?system={versionUri}&code={CTU}

    Example

    GET /ConceptMap/snomed-exp-id-map/$translate?system=http://snomed.info/xsct/1234007 &code=87971000:272741003=7771000

    Use an implicit value set with ECL.

    A display term should be returned in the response of the lookup operation. The display term may be generated in a very simple way by just concatenating.

    This should happen when the expression is inserted into the code system.

    This should happen when the expression is inserted into the code system.

    Service
    Description
    Input

    Expression subsumption test

    GET /CodeSystem/$subsumes

    Test the subsumption between a pair of expressions or an expression and a code.

    {

    Provide Feedback

    Under development

    This section is still under active development, and the API examples will change as reference implementations mature and this is discussed with the community of practic

    Solution Overview

    Services

    Create expression repository

    Get repository details

    Add expression

    Lookup expression

    Search for expression

    Get display term

    Create Classifiable Form

    Create Necessary Normal Form

    Subsumption

  • This approach may be assisted by Natural Language Generation technologies and techniques to automatically suggest appropriate terms for each expression

  • The challenge associated with the creation of terms for expressions is that the meaning represented in the term may differ from the meaning of the expression itself. This deviation may arise due to limitation of the concept model or implementation constraints. Implementers should, therefore, consider if they want to support the creation of terms for expressions and in which case they should implement a process to assure the quality of the created terms.

    The goal of assigning a term to an expression is to select a term that is an accurate synonym for the meaning conveyed by the expression, ensuring semantic equivalence between the two. If the display term does not fully capture the meaning expressed in the expression, the expression should be labeled as a primitive ('<<<') to indicate that some aspects of the term's semantics are not reflected in the expression.

    Source term
    Target expression
    Definition status

    Bleeding from larynx

    === [ 131148009

    Bleeding

    Bleeding from larynx requiring transfusion

    <<< [ 131148009

    To avoid inconsistency between the display term and the expression, the recommended approach for providing a human-readable term for an expression is to automatically generate a display term. This approach, even though it may require human validation, ensures that the terms used in the display term are derived from terms approved as part of the authoring of the concepts referred to by the expression.

    Provide Feedback

    Concept Model and Editorial Guidance

    SNOMED CT Concept Model

    The SNOMED CT Concept Model is a set of rules that govern the ways in which SNOMED CT concepts are permitted to be modelled using relationships to other concepts. These rules are critical to the consistent modelling of SNOMED CT content, which in turn determines the extent to which reproducible logical inferences can be drawn. These logical inferences are the foundation for effective use of SNOMED CT for retrieval and reuse of clinical information.

    For each attribute (relationship type) defined in SNOMED CT, the concept model specifies a set of rules to support the proper application of SNOMED CT attributes, including:

    • Attribute Domain : The set of concepts to which the attribute may be applied

    • Attribute Range : The set of concepts which may be used as the value for the attribute

    • Attribute Cardinality : The minimum and maximum number of times that the attribute may appear in a concept definition

    • Attribute Grouping : Whether an attribute may or may not belong to a relationship group

    • Attribute In-group cardinality : The minimum and maximum number of times that the attribute may appear in each relationship group

    The Machine Readable Concept Model (MRCM) represents rules of the SNOMED CT concept model in a form that can be read by a computer and applied to test that concept definitions and expressions comply with the rules.

    The diagram below shows a few example of concept model rules, as they can be derived from the MRCM reference sets.

    Given the machine processable nature of SNOMED CT, the Compositional Grammar and the MRCM, postcoordinated expressions may be tested against the rules specified in the MRCM, for example to validate the expression, or to support the creation of MRCM-compliant expressions.

    To support the creation and validation of SNOMED CT postcoordinated expressions, the following MRCM process can be used:

    1. Determine which domains the expression belongs to using the

      • An expression belongs to a given domain if any focus concept is either:

        1. Valid when tested against the associated domainConstraint ; or

    Please note that in the above process only rules with a contentType = << should be used. Rules with a ruleStrength of should be enforced when authoring and cause an error during validation, while rules with a ruleStrength of should be used as a recommendation for authoring and result in a warning during validation.

    An alternative approach to authoring and validating postcoordinated expressions is to use the domainTemplateForPostcoordination from the to ensure compliance with the full set of attribute rules. The domainTemplateForPostcoordination can also be specialized into an expression authoring template that meets the needs of a particular use case, while still conforming to the overall rules of the domain.

    In addition to the concept model, SNOMED International also rely on editorial principles when authoring the content of SNOMED CT. The SNOMED CT Editorial Guide covers a wide range of topics, including the principles of SNOMED CT, and the structure and organization of the terminology. In addition, it documents guidelines for the modelling of content within specific domains and sub-domains that and it defines the role of the attributes available. The SNOMED CT Editorial Guide plays a critical role in ensuring the quality of SNOMED CT content, as it documents the authoring principles that require human analysis and interactions to ensure that concepts are accurate, consistently modelled, and clinically relevant.

    Implementing postcoordination with SNOMED CT is similar to authoring SNOMED CT concepts, as it involves creating clinical meanings by combining existing concepts. However, it is crucial to ensure that the implementation of postcoordination does not impact clinical safety.

    It is essential to involve relevant stakeholders such as clinicians, informaticians, and quality assurance personnel to ensure that the approach taken is appropriate and safe for use in clinical practice. Thorough testing and evaluation of the postcoordinated expressions can help identify potential safety concerns early in the implementation process, ultimately leading to safer and more effective healthcare.

    Benefits and Challenges

    Postcoordination with SNOMED CT offers significant benefits for users who need to capture and express clinical meanings accurately. Postcoordination enhances the flexibility and expressivity of SNOMED CT, making it more adaptable to current clinical practice. However, postcoordination also presents a variety of challenges, encompassing both human and technical issues that are crucial to handle as part of an implementation, ensuring that postcoordination is used judiciously and consistently to maximize its benefits while minimizing its potential drawbacks.

    Benefits

    Two overall benefits can be described for postcoordination:

    Postcoordination supports the ability to express or capture new meanings or clinical ideas that are not already in SNOMED CT

    SNOMED CT implementers without the means to create and manage a proper extension may require clinical meanings to be represented using SNOMED CT without being dependent on specific precoordinated concepts existing. In such cases, postcoordination may be considered as part of a SNOMED CT implementation.

    Postcoordination supports the ability to compose clinical meanings from separate input values and then classify to identify existing precoordinated content

    Some SNOMED CT implementations are dependent on a fixed information structure, user requirements may enforce a specific way of entering clinical data, or new clinical meanings are created dynamically (for example within a natural language processing tool). These are cases in which implementations may require clinical meanings to be represented as expressions.

    To realize the benefits of postcoordination, careful analysis of the following described challenges needs to be undertaken and solutions need to be implemented.

    Tooling and guidance in the area of postcoordination are still in a developmental stage

    A key challenge for the implementation of postcoordination is the lack of mature or well-developed tools and practical experience within this area.

    Creating expressions, in a way that conforms to all the rules and consistent with existing content in order to classify correctly, is not simple!

    As described in and , expressions that represent the desired semantics must follow both terminological and editorial principles of SNOMED CT. In addition, expressions should be consistent with the modeling applied for the released SNOMED CT content. Therefore, the creation of expressions should be performed by people with the required knowledge, or assisted by tools that facilitate the proper creation of expressions.

    Expressions are tied to a specific SNOMED CT release and upgrading that release requires maintenance

    Maintenance processes need to be established to ensure that the expressions used in the system continue to work properly with the updated version of SNOMED CT.

    Interpretation by humans is a challenge

    Generated expressions may not use natural language

    Task of manually assigning terms that accurately represent the meaning of expressions require training and is cognitively demanding

    Interpretation by machines is a challenge

    Advanced tooling is required to create, maintain, understand and use expressions

    • When expressions are communicated to other systems:

      • Interpretation in the receiving system is not guaranteed

      • The burden of advanced tooling is put upon the receiving system

    Appendix B - Videos

    This playlist brings together all videos on Postcoordination with SNOMED CT from the SNOMED International Implementation Course. The videos introduce key concepts, practical implementation considerations, and real-world examples to help you understand how to enable Postcoordination with SNOMED CT.

    Open playlist on YouTube:

    👉 Click here to view the full playlist on YouTube

    If you would like the full e-learning experience, you can enroll in the , which is self-paced and allows you to mix and match topics of interest. The course is free for participants from SNOMED International Member countries.

    How to navigate the playlist in GitBook

    When a YouTube playlist is embedded in GitBook, only one video is shown on the page at a time, but all playlist videos are still available.

    • Use the forward () and back () arrows on the video player to move between videos in the playlist

    Bleeding

    Challenges

    2.2 Expression Syntax
    2.3 Concept Model and Editorial Guidance
    Provide Feedback

    Valid when tested against the associated proximalPrimitiveConstraint and all required refinements in the proximalPrimitiveRefinement either match a defining relationship on the given focus concept, or match a refinement condition added to the expression being authored;

  • Determine the set of valid attributes for the given domains using the | MRCM attribute domain reference set| and allow refinements to be added using attribute concepts from this set;

  • For each attribute used to define the concept, ensure that the grouping and cardinality are valid according to the rules specified in | MRCM attribute domain reference set| for the given attribute and parent domain;

  • Determine the valid range for each attribute using the rangeConstraint in | MRCM attribute range reference set| .

  • Machine Readable Concept Model

    Examples of Use

    Editorial Guidance

    | MRCM domain reference set|
    723595009 | All postcoordinated SNOMED CT content|
    | Mandatory concept model rule|
    | Optional concept model rule|
    | MRCM domain reference set|
    Provide Feedback

    Create Concept Map for Exp Ids

    POST /ConceptMap

    (Only needed if EHR cannot store expressions)

    Create the ConceptMap to map expressions in the code system supplement to expression identifiers in the Exp. Ids code system. This will be populated manually.

    {
            "resourceType": "ConceptMap",
        "url": "http://snomed.info/snomed/exp-id-map",
        "status": "active",
        "source": {
      a0  a0  a0  a0"sourceUri": "http://snomed.info/xsct/1234007?fhir_vs"},
        "target": {
      a0  a0  a0  a0"targetUri": "http://snomed.info/snomed/exp-id/1101234?fhir_vs"}
      }

    Lookup Expression Identifier from Expression

    • versionUri

    • CTU: close-to-user expression

    GET /ConceptMap/{snomed-exp-id-map}/$translate? reverse=true&system={versionUri}&code={expId}

    Example

    GET /ConceptMap/snomed-exp-id-map/$translate? reverse=true&system=http://snomed.info/snomed/exp-id/1101234&code=101101234165

    Lookup Expression from Expression Identifier

    • versionUri

    • expId: expression identifier as defined pr. implementation

        "resourceType": "CodeSystem",
        "url": "http://snomed.info/info",
        "version": "http://snomed.info/xsct/11000003104",
        "content": "supplement",
        "supplements" : "http://snomed.info/sct|http://snomed.info/sct/900000000000207008/version/20230131"
    }
    {
        "resourceType": "CodeSystem",
        "url": "http://snomed.info/snomed/exp-id/1000003",
        "status": "active",
        "content": "complete"
    }
    Code System ID, provided in the response of the code system creation
    [
      { 
        "op": "add", 
        "path": "/concept", 
        "value": {
          "code": "359817006 |Closed fracture of hip (disorder)| : 
           272741003 |Laterality (attribute)| = 182353008 |Side (qualifier value)|",
          "display": "Right closed fracture of hip"
        } 
      }
    ]
        "resourceType": "CodeSystem",
    CodeSystem
    ConceptMap
    $subsumes
    $translate
    $closure
    SNOMED CT Implementation Course

    Free-text with Natural Language Processing

    Except where agreed business processes require structured and standardised recording, using free text fields are often a necessity to support the clinical documentation and established work processes. Free text in Electronic Health Records enables the user to enter information using the terms and phrases of his/her own choice.

    With this approach, the clinical user enters the information in a dedicated text box, and the text is subsequently analyzed by a natural language processing (NLP) tool. The NLP tool is designed to codify the key terms as SNOMED CT concepts, and the rules specified in the Machine Readable Concept Model (MRCM) may be applied to help identify the relationships between these key terms, to form SNOMED CT expressions.

    The image below illustrates how the phrase "The patient has an open fracture of the left radius" is processed by an NLP tool to form the expression:

    With this approach, the expressions are usually created at run-time, as the user types in the free text. This requires the system to incorporate a SNOMED CT- enabled NLP service that works in the local dialect.

    System Components

    Enabling postcoordination in an Electronic Health Record (EHR) usually requires an EHR design that is prepared to support the use of expressions.

    When developing EHRs, these are usually designed with both a health record data store to record health-related information about each patient, and a terminology server to store the codes and terms that may be used in the health records as illustrated in the image below.

    A SNOMED CT-enabled terminology server stores the terminology content and provides the services required by the EHR to access the content. A terminology repository is included to hold the released terminology content, for example, a specific version of a national Edition of SNOMED CT plus any required SNOMED CT derivatives. When supporting postcoordination, the terminology server should support the storage of expressions, for example using an expression repository. In addition, dedicated services are required to enable the processing and use of the expressions in the same way as the released, precoordinated SNOMED CT content.

    The recommended approach to ensure efficient use of a SNOMED CT-enabled terminology server is to use a service-oriented approach where dedicated terminology services are provided via an API enabling access and processing of the content within the terminology and expression repository.

    Entering Expressions in an EHR

    When enabling postcoordination in an EHR, it is important to be aware of how the approach selected for entry of the expression impacts the storage and the display of the expression.

    There are three main approaches to entering postcoordinated clinical data into an electronic health record.

    Using the free-text approach with an NLP tool to generate the expressions, it is recommended, and often required for medicolegal reasons, to store both the free text as it was entered by the user, and also the coded expression that was generated by the NLP tool and confirmed by the user. You should also store the terms associated with the expression that was displayed to the user when they confirmed that it accurately reflects the meaning of the free text.

    Terminology services

    Enabling NLP with expressions in the EHR requires the EHR to add newly created expressions derived from the NLP algorithm. For this purpose, the following services may be required:

    • Lookup Expression

    • Add Expression

    • Get Display Term. This may be required to display a human readable representation of the generated expression, to enable the end-user to confirm the result of the NLP analysis.

    So, in this approach the expressions are usually created at run-time, as the user types in the free text. This requires the system to incorporate a SNOMED CT enabled NLP service that works in the local dialect. So, in this approach the expressions are usually created at run-time, as the user types in the free text. This requires the system to incorporate a SNOMED CT enabled NLP service that works in the local dialect.

    42945005 |Open fracture of radius| : 272741003 |Laterality| = 7771000 |Left| . 
    Using free text to enter postcoordinated expressions involves the free text to be transformed into a SNOMED CT expression using a SNOMED CT-enabled Natural Language Processing tool.

    The following pages will elaborate on each of these approaches and clarify key requirements for each. Furthermore, best practice approaches to the storage and display of expressions will also be presented.

    Prepopulated expressions
    Form-based selection of expression parts
    Overall design of an EHR supporting postcoordination. The EHR data store is used to hold the health related information recorded about each patient, and the terminology server includes the terminology content required by the EHR. This includes both a terminology repository for the released SNOMED CT content and an expression repository for the postcoordinated expressions.
    Free text with Natural Language processing to encode the free text with SNOMED CT
    Provide Feedback
    Provide Feedback
    Provide Feedback

    Expression Repository in RF2

    Expression Repository Extension

    Implementing an expression repository using the standard format specified by SNOMED International is comparable to the implementation of a SNOMED CT extension. As for SNOMED CT extensions, the content contained in the expression repository depends on a specific versioned Edition of SNOMED CT, and it requires ongoing maintenance to align with new versions of SNOMED CT.

    The difference between a common SNOMED CT Extension and an Expression Repository Extension can be summarized as follows:

    Difference in the representation of clinical meanings

    • Clinical meanings expressed in a common extension are represented as SNOMED CT concept components and require creation and management by SNOMED CT authors

    • Clinical meanings expressed in an expression repository extension are represented as SNOMED CT expression components

    Difference in the content included

    • A common SNOMED CT Extension may contain various components and derivatives (see )

    • An expression repository extension contains only the components and derivatives required to represent postcoordinated expressions Consequently, the following components and derivatives may be contained to meet the requirements outlined in :

      • Expression components to uniquely identify the expressions

    The image below illustrates the logical model of an expression repository extension.

    Implementing an expression repository involves the creation of expression components, where the expression identifier uses the partition id of '16'. For more information about SNOMED CT identifiers, please refer to the

    This identifier enables the unique identification of an expression and is used to establish a link between all required forms of the expression.

    • The expression identifier is:

      • Used as the id for the expression component

      • Referenced in the as the value of the referencedComponentId

    The moduleId attribute of the expression component refers to a concept that represents and names the module in which the expressions are maintained. This concept is a subtype of , and the terms associated with this concept should clearly indicate that this module is an expression repository, e.g. .

    The CTU is stored in a separate reference set which is of the type .

    Expressions in the close-to-user form will get an effectiveTime as soon as they are saved, this will match that of the current dependent code system version.

    The CF is stored in a separate reference set which is of the type .

    Members in the classifiable form reference set are given an effectiveTime. This will happen before the code system is upgraded to a new dependent version. Once these components are versioned they will keep the effectiveTime until the values of their fields are changed, via the transformation or classification processes. At this point changed components will have their effectiveTime cleared and will be versioned again when the code system is next versioned.

    Following the classification of the CF expression, the NNF of the expression is represented as relationships. In the same way as SNOMED CT concepts, expression components include subtype and attribute relationships to represent the properties of the expression.

    Components of expressions in the classifiable and necessary normal forms will have an effectiveTime set when the expression code system is versioned. This will happen before the code system is upgraded to a new dependent version. Once these components are versioned they will keep the effectiveTime until the values of their fields are changed, via the transformation or classification processes. At this point changed components will have their effectiveTime cleared and will be versioned again when the code system is next versioned.

    Maintaining Postcoordinated Expressions

    As SNOMED CT evolves with each new release, maintaining the relevance and accuracy of postcoordinated expressions becomes imperative. Postcoordinated expressions allow for detailed and nuanced clinical concepts by combining multiple SNOMED CT codes. However, without a robust maintenance process, these expressions can become outdated, leading to failures in subsumption by any concept in SNOMED CT and exclusion from Expression Constraint Language (ECL) results.

    • Concept Evolution : SNOMED CT regularly updates its content, which may include the addition of new concepts, modification of existing ones, or retirement of outdated concepts.

    • Accuracy in Clinical Representation : Expressions that reference inactive concepts will no longer effectively represent valid clinical meanings, leading to misinterpretation of patient data.

    A reference set to hold the CTU expressions

  • A reference set to hold the CF expressions

  • Expression relationships to represent the NNF of the expressions

  • A component annotation reference set to hold the display terms associated with the expression

  • Release process

    • Extensions are released

    • Expressions are not released

  • Referenced in the 1119468009 | Classifiable form expression reference set (foundation metadata concept)| as the value of the referencedComponentId
  • Used as the source of the expression relationships to represent the necessary properties of the expression

  • Logical Model

    Expression Component

    Canonical Close to User Form Expression Reference Set

    Classifiable Form Expression Reference Set

    Expression Relationship

    Practical Guides
    Requirements
    release file specification.
    1119435002 | Canonical close to user form expression reference set (foundation metadata concept)|
    900000000000443000 | Module|
    1234567890 | national extension expression repository module|
    1119435002 | Canonical close to user form expression reference set (foundation metadata concept)|
    Postcoordinated Expression Type Reference Set
    1119468009 | Classifiable form expression reference set (foundation metadata concept)|
    Postcoordinated Expression Type Reference Set
    Provide Feedback
    Overview of the logical model of a SNOMED CT Expression Repository

    Interoperability : Ensuring that the substrate and the expressions are up-to-date maintains interoperability between systems using the latest versions of SNOMED CT.

    • ECL Queries : Outdated expressions won't appear in ECL query results, hindering data analytics and reporting.

    • Clinical Decision Support : Inaccurate expressions can affect decision-making processes that rely on current clinical terminologies.

    • Non-Semantic Identifiers : Assign a unique, non-semantic identifier to each expression, such as:

      • A "16" partition SNOMED Identifier

      • A sequential number

      • A Universally Unique Identifier (UUID)

    • Version Control : Maintain a history of all changes to the expression's value over time while keeping the identifier constant.

    • Clinical Record Integrity : By preserving identifiers, clinical records remain consistent even as the underlying expressions are updated.

    • Post-Upgrade Audit : After upgrading to a new SNOMED CT edition, generate a comprehensive report listing expressions that require updates.

    • Identification Criteria : Expressions may need updating if they:

      • Contain references to retired concepts

      • No longer comply with updated SNOMED CT modeling principles

    • Actionable Insights : Use the report to prioritize and plan maintenance activities.

    • Leverage SNOMED CT Historical Data : Utilize historical associations provided by SNOMED CT to map outdated concepts to current ones.

    • Configuration of Confidence Levels :

      • High Confidence : Automatic replacements using "Same As" associations.

      • Moderate Confidence : Consider "Replaced By" or "Partially Equivalent To" associations but flag for review.

      • Low Confidence : Manual verification is required for associations with less certainty.

    • Automation Tools : Implement software capable of processing these associations to update expressions where appropriate.

    • Complex Cases : Not all expressions can be updated automatically due to:

      • Ambiguities in historical associations

      • Changes in clinical practice or terminology

      • Complex postcoordination that lacks direct replacements

    • Quality Assurance : Manual revisions of random samples can ensure that the process is working as expected.

    • Time and Effort : Manual reviews are time-consuming and require significant human resources.

    • Specialized Knowledge : Requires expertise in both clinical domains and SNOMED CT's structure and updates.

    • Evolving Concepts : Understanding the nuances of how concepts have changed or been restructured.

    • Interdependencies : Changes in one area may affect multiple expressions across different clinical domains.

    • Automation Boundaries : Current tools may not fully automate the update process, especially for complex expressions.

    • Reporting Accuracy : Generating accurate reports of outdated expressions can be challenging without sophisticated tooling or querying capabilities.

    Close to user form is a simpler form of an expression that is later transformed into a "classifiable form". Close-to-user form expressions include only the essential concepts required to convey the desired meaning, and fewer concepts in the expression means that it is less susceptible to be impacted by changes in the dependencies. The steps of automatic updates and manual reviews are much simpler to implement and execute when using close-to-user form expressions.

    Best Practices for Effective Maintenance

    • Regular Updates : Schedule maintenance activities aligned with SNOMED CT release cycles.

    • Store expressions using close-to-user form : the simpler expressions facilitate maintenance.

    • Comprehensive Documentation : Keep detailed records of changes made to expressions for future reference and auditing.

    • Stakeholder Engagement : In complex cases, a multidisciplinary team, including clinicians, terminologists, and IT professionals, is involved.

    • Continuous Training : Ensure staff are up-to-date with the latest SNOMED CT changes and maintenance methodologies.

    • Robust Testing : Validate updated expressions in a test environment before deploying to production systems.

    Provide Feedback

    Importance of Maintenance After Each Update

    Alignment with Latest SNOMED CT Versions

    Impact on Data Retrieval and Analytics

    Implementing the Maintenance Process

    Support Expression Versions

    Generate Reports of Outdated Expressions

    Attempt Automatic Updates Using Historical Associations

    Manual Review and Updates

    Challenges in the Maintenance Process

    Resource Intensiveness

    Complexity of Changes

    Tool Limitations

    Benefits of using Close to User Form

    Expression Syntax

    Compositional Grammar

    The syntax used to represent SNOMED CT expressions is called the Compositional Grammar. This is a formal grammar describing the symbols you can use and how the different parts of an expression can be constructed. Please refer to Compositional Grammar - Specification and Guide for the full detail on this.

    While alternative syntaxes are possible, the compositional grammar syntax is considered to be the normative standard for interoperability purposes. Therefore, the recommended practice for anyone supporting postcoordination within their clinical information system, is to represent expressions using this syntax.

    Structure

    The diagram below illustrates the key parts of a SNOMED CT expression through an example. The expression used in this example represents the stated view of the concept 16554361000119106 | PET CT of brain| .

    Figure 2.2-1: Expression parts.

    A SNOMED CT Compositional Grammar expression begins with an optional definition status, contains one or more focus concepts (represented by a concept identifier) and optionally has a refinement. Each refinement may contain grouped or ungrouped attributes (or both). An attribute consists of the attribute name (represented by a concept identifier) together with the value of the attribute. The attribute value is either an expression or a concrete value (i.e. string, integer, decimal or boolean). Please note that, in the context of an expression, the word 'Attribute' is used to refer to the name/value pair within a refinement. However, in the context of the SNOMED CT concept model, the word 'Attribute' is often used to refer specifically to the 'attribute name' (i.e. the concept used as the relationship type).

    Expression part
    Description
    General
    Recommendation for the implementation of postcoordination

    Overall, postcoordination may be performed to either refine or qualify the meaning of a SNOMED CT concept. The refinement part of a postcoordinated expression may thus represent either a 'refinement' or a 'qualification' of the stated focus concept.

    Refining the meaning of a focus concept is done by applying more specific values to particular attributes of the concept. The definition of the focus concept, therefore, determines the refinements that are possible for the concept.

    Consider the following expression representing the meaning 'Spiral fracture of tibia':

    The focus concept of this expression has the following stated definition:

    The attribute value of used in the expression (|Fracture, spiral (morphologic abnormality)|) is a subtype of the attribute-value present in the definition of the concept (|Fracture (morphologic abnormality)|), as shown below.

    Qualifying the meaning of a concept can be done by adding a qualifying characteristic to a concept, e.g. by applying and attribute-value pair to the focus concept, where that attribute-value pair does not refine an existing attribute-value pair present in the definition of the focus concept. If a particular qualifying characteristic is applied to a concept, the resulting expression represents a more tightly defined subtype of that concept. All attribute-value pairs stated to qualify a focus concept should fall within the acceptable domain and range determined by the SNOMED CT concept model.

    Examples of qualifications include:

    The concept may be qualified according to its clinical course (<< 288524001 |Courses (qualifier value)| ) or severity ( << 272141005 |Severities (qualifier value)| )

    The concept may be qualified according to its priority (<< 272125009 |Priorities (qualifier value)|) or intent (<< 363675004 |Intents (nature of procedure values) (qualifier value)|)

    Expression
    Type
    Inferred view of focus concept
    Description

    Transformation Level 0

    At this level, the terminology server requires all submitted expressions to already be in valid classifiable form. This form is a syntactically valid and concept model compliant representation expression that can be directly used as input to the classifier, enabling expressions to be classified together with other SNOMED CT content.

    To enable postcoordination at Level 0, it is important that the system used to create the expressions supports any transformation needed to represent the expressions in their classifiable form. This may be enabled using one of the following techniques:

    • Form-based Creation

    The part of a SNOMED CT expression that represents the primary clinical idea.

    According to the compositional grammar syntax, SNOMED CT expressions may contain multiple focus concepts. Often, the inferred view of a precoordinated concept includes multiple focus concepts, representing the direct parents of the concept.

    For the scope of this guide, all expressions may only contain a single focus concept.The reason for this is that multiple focus concepts in a single postcoordinated expression can lead to ambiguity and confusion. Restricting expressions to one focus concept supports clarity and precision of the clinical meaning being represented, making it easier for healthcare providers to understand and use the information accurately.

    Refinement

    The part of a SNOMED CT expression that modifies or adds defining properties to the focus concept.

    According to the compositional grammar syntax, the refinement of a SNOMED CT expression is everything to the right of the ':' .

    Postcoordinated expressions may include a refinement to specify either a refinement or a qualification of the focus concept.

    Attribute group

    An association between a set of attribute value pairs that causes them to be considered together within a concept definition or postcoordinated expression.

    An expression may contain multiple attribute groups, and each attribute group is surrounded by curly braces.When all attribute-value pairs in a refinement belong to the same attribute group the braces around the attribute group are optional.

    Systems enabling postcoordination may support specific transformations of expressions to ensure that appropriate groups are applied for certain attribute-value pairs or set of attribute-value pairs.Such patterns may be defined to support specific use cases while ensuring the correct inferred view of the expression.

    Attribute-value pair

    A combination of an attribute name and an attribute value used to specify a defining characteristic of a clinical idea or a concept.

    Each attribute-value pair represents a characteristic that applies to the meaning being expressed.

    Postcoordinated expressions may contain one or more attribute-value pairs.

    Attribute name

    The concept that represents the attribute type in a defining relationship or postcoordinated expression.

    Each attribute-value pair has a name which is represented by a concept. All of the concepts that can be used to name attributes are subtypes of the concept [410662002

    Concept model attribute (attribute)

    Attribute value

    A concept that represents the target of a relationship or the value of an expression refinement in a postcoordinated expression.

    An attribute name is associated with a value (that creates an attribute-value pair) when used in the definition of a concept or in a postcoordinated expression.The permitted range of values for an attribute depends on the rules specified in the SNOMED CT concept model.

    Attribute values should belong to the acceptable range for the selected focus concept and attribute.Note that although an attribute value fall within the range of the attribute, the focus concept of the expression may alter/constraint the acceptable range._For example, stating a

    === + + : { = , = }

    This expression adds a more specific procedure site value than the one used in the definition of the focus concept

    : =

    Qualification

    <<< : { = }

    This expression adds an attribute-value pair which does not represent or refines a defining property of the focus concept.

    : =

    Qualification

    === : { = }

    This expression adds an attribute-value pair which does not represent or refines a defining property of the focus concept.

    Definition status

    A SNOMED CT postcoordinated expression may be used to express a clinical meaning that is either equivalent to or a subtype of the given expression.

    '===' is used to state that the expression (on the right-hand side) is semantically equivalent to the left-hand side.'<<<' is used to state expression (on the right-hand side) is a subtype of the left-hand side

    For the scope of this guide, the default definition status for postcoordinated expressions is equivalent, i.e. '==='.This means that, unless stated otherwise, the expression represents the full semantics of what is being represented. This principle supports an unambiguous interpretation of the meaning of the expression.

    31978002 |Fracture of tibia (disorder)| : 116676008 |Associated morphology (attribute)| = 73737008 |Fracture, spiral (morphologic abnormality)|
    64572001 |Disease (disorder)| :
    { 363698007 |Finding site (attribute)| = 12611008 |Bone structure of tibia (body structure)| ,
    116676008 |Associated morphology (attribute)| = 72704001 |Fracture (morphologic abnormality)| }
    53084003 |Bacterial pneumonia (disorder)| : 263502005 |Clinical course (attribute)| = 385315009 |Sudden onset (qualifier value)|
    71651007 |Mammography (procedure)| : 363703001 |Has intent (attribute)| = 360156006 |Screening - procedure intent (qualifier value)|

    125605004 |Fracture of bone (disorder)| : 363698007 |Finding site (attribute)| = 12611008 |Bone structure of tibia (body structure)|

    Refinement

    === 284003005 |Bone injury (disorder)| : { 363698007 |Finding site (attribute)| = 272673000 |Bone structure (body structure)| , 116676008 |Associated morphology (attribute)| = 72704001 |Fracture (morphologic abnormality)| }

    This expression represents a refinement of the focus concept 125605004 | Fracture of bone (disorder)|, because the stated finding site value (12611008 | Bone structure of tibia (body structure)| ) is a subtype of 272673000 |Bone structure (body structure)|

    108022006 |Kidney excision (procedure)| : 405813007 |Procedure site - Direct (attribute)| = 18639004 |Left kidney structure (body structure)|

    Refinement Types

    Refinement

    Qualification

    Examples

    53084003 | Bacterial pneumonia (disorder)|
    71651007 |Mammography|
    Provide Feedback
    73737008 |Fracture, spiral (morphologic abnormality)| is a subtype of 72704001 |Fracture (morphologic abnormality)|.

    Focus concept

    Refinement

    Expression Templates

    These techniques will support the creation of expressions that fully comply with the concept model rules and avoid some of the common mistakes created. For example using attributes that are incorrect for the domain or incorrectly grouped.

    Consider the situation where the following expression is created to represent the meaning of a "Disorder of left lung":

    At level 0, this expression would not be accepted by the terminology server, because the MRCM only permits those concepts that are both within the << 91723000 |Anatomical structure (body structure)| domain and also listed in the 723264001 |Lateralizable body structure reference set| to be qualified using 272741003 |Laterality (attribute)| . The focus concept of the expression is neither.

    As a result of this rule, the action required to make the expression classifiable, is to add a nested expression where the laterality is applied to the value of the 363698007 | Finding site (attribute)| attribute that is part of the NNF for the same focus concept, 19829001 | Disorder of lung (disorder)| , as follows:

    Consider the situation where the following expression is created to express the meaning of a "Procedure on left lung":

    At level 0, this expression would not be accepted by the terminology server, because 363704007 | Procedure site (attribute)| is specified as being 'grouped', which requires a role group to be explicitly stated. As a result of this rule, the action required to make the expression classifiable, is to place the attribute in a group, as follows:

    Terminology servers at level 0 will reject any expressions not conforming to the classifiable form.

    The table below provides examples of a set of expressions with an indication of their acceptability and potential issues at level 0.

    Expression
    Classifiable
    Issues

    : { = }

    Yes

    Although this expression complies with the concept model rules, the expression will not classify as probably desired, as a subtype of The reason for this is that the stated group does not include the required attribute: =

    === : =

    No

    Attribute does not apply to the domain | Malignant melanoma of shoulder|

    Provide Feedback

    For more details on the Machine Readable Concept Model, please see Specifications.

    Implementation Advice

    === 19829001 |Disorder of lung (disorder)| : 272741003 |Laterality (attribute)| = 7771000 |Left (qualifier value)|
    === 19829001 |Disorder of lung (disorder)| : { 363698007 |Finding site (attribute)| = ( 39607008 |Lung structure (body structure)| : 272741003 |Laterality (attribute)| = 7771000 |Left (qualifier value)| )}
    === 71388002 |Procedure (procedure)| : 363704007 |Procedure site| = 44029006 |Left lung structure (body structure)|
    === 71388002 |Procedure (procedure)| : { 363704007 |Procedure site| = 44029006 |Left lung structure (body structure)| }

    Incorrect Attributes

    Incorrectly Grouped Attributes

    Examples

    108189003 |Abdomen excision (procedure)|
    175898006 |Kidney operation (procedure)|
    118959001 |Removal from urinary tract (procedure)|
    260686004 |Method (attribute)|
    129304002 |Excision - action (qualifier value)|
    405813007 |Procedure site - Direct (attribute)|
    64033007 |Kidney structure (body structure)|
    195967001 |Asthma (disorder)|
    263502005 |Clinical course (attribute)|
    424124008 |Sudden onset AND/OR short duration (qualifier value)|
    50043002 |Disorder of respiratory system (disorder)|
    363698007 |Finding site (attribute)|
    89187006 |Airway structure (body structure)|
    40733004 |Infectious disease (disorder)|
    363698007 |Finding site (attribute)|
    39937001 |Skin structure (body structure)|
    64572001 |Disease (disorder)|
    370135005 |Pathological process (attribute)|
    441862004 |Infectious process (qualifier value)|

    === 372244006 |Malignant melanoma| : { 116676008 |Associated morphology| = 1162635006 |Malignant melanoma| , 363698007 |Finding site| = 91775009 |Left shoulder| }

    Yes

    === 372244006 |Malignant melanoma| : { 116676008 |Associated morphology| = 1162635006 |Malignant melanoma| , 363698007 |Finding site| = ( 16982005 |Shoulder| : 272741003 |Laterality| = 7771000 |Left| )}

    Yes

    === 372244006 |Malignant melanoma| : 363698007 |Finding site| = ( 16982005 |Shoulder| : 272741003 |Laterality| = 7771000 |Left| )

    No

    Attribute 363698007 | Finding site| should be in a group

    === 372244006 |Malignant melanoma| : 363698007 |Finding site| = 91775009 |Left shoulder|

    No

    Attribute 363698007 | Finding site| should be in a group

    372244006 |Malignant melanoma|
    363698007 |Finding site|
    91775009 |Left shoulder|
    188060000 |Malignant melanoma of shoulder (disorder)|
    116676008 |Associated morphology (attribute)|
    1162635006 |Malignant melanoma (morphologic abnormality)|
    188060000 |Malignant melanoma of shoulder|
    272741003 |Laterality|
    7771000 |Left|
    272741003 | Laterality|

    Automatic Creation of Display Terms

    Automatic Creation of Display Terms

    Use Cases

    Some situations may require expressions to be displayed differently from how they were created. For example

    • Communication and display of expressions

      • When the information structures used to create the expression are different to those available for display or exchange

    • Design-time authoring of expressions

      • When postcoordinated expressions are created during the design of an EHR implementation

    Communication and Display of Expressions

    Autogeneration of display terms for postcoordinated expressions may be required when an expression is created in a different clinical system, or a different form on the same system, or it needs to be exchanged using a different information structure. In these cases, the information structure used to create the expression may be different to the ones available to display or exchange the expression and, therefore, the autogeneration of terms may be required.

    This situation is illustrated in the image below where the meaning of "open fracture of ulna" is captured in an information structure using two data elements and communicated to a target structure with only a single data element for the same meaning. In some settings, it may be applicable to support the display of the expression in the target system by automatically generating a term.

    Another situation where autogenerated terms may be useful is in systems used to create postcoordinated expressions during the design of an EHR implementation. At design time, an expression could be created using a form-based expression template, and then the system could suggest a display term that captures the meaning of the whole expression.

    This scenario is illustrated in the image below.

    Terminology services

    The techniques to generate a display term for the expressions may differ between implementations, but the following service is required by a terminology server supporting the automatic generation of a display term for an expression:

    • Get Display Term

    Appendix A: Techniques for Autogenerating Display Terms

    Three different approaches to automatically creating display terms for postcoordinated expressions are presented, ranging from the simplest to the more complex.

    1. Replace concept identifiers with terms

    2. Apply simple term rules

    Design-time Authoring of Display Terms for Expressions

    Provide Feedback
    Some situations require a term to be generated for an expression, e.g. when the expression parts are captured as individual items but communicated to a target system populating the meaning in a single item.
    Systems supporting the creation of postcoordinated expressions may automatically suggest a display term for the expression.
    Apply description templates and rules

    Please note that alternative, and more advanced approaches are possible.

    When deciding what approach to apply, the following questions need to be considered:

    • How close does the term need to match the spoken clinical language?

    • Are resources available to develop and maintain the transformation rules and templates?

    The simplest approach to generating display terms for a postcoordinated expression is to simply replace the concept identifiers with a term or description associated with the concept (preferably the preferred term of the applied language reference set). The result of this transformation leads to an expression that doesn't match the clinical language, but it may still be sufficient for the end-users to correctly interpret the semantics of the expression. The table below shows examples of this approach.

    In the following examples, the concept identifiers are replaced with the preferred term of each concept &#xNAN;(in the US language reference set)

    Expression
    Term

    397181002:363698007=23416004

    "|Open fracture|:|Finding site|=|Bone structure of ulna|"

    336863008:272741003=7771000

    “|Excision of cyst of lung|:|Laterality|=|Left|”

    To increase the human readability of the expressions, simple term rules can be applied in conjunction with the replacement of concept identifiers. Part of this involves avoiding the use of compositional grammar symbols in the terms, which can be achieved in different ways, e.g.

    • Replace symbols with predefined terms

    • Remove symbols and replace attributes with a ","

    The table below exemplifies the transformation rules that can be used to replace compositional grammar symbols.

    Symbol
    Term

    :

    with a / with an

    =

    of

    ,

    and

    In the following two examples, the following approach has been taken to generate the display term.

    • Concept identifiers are replaced with the preferred term of each concept (in the US language reference set)

    • Compositional grammar symbols are replaced with a predefined term

    Expression
    Display Term

    397181002:363698007=23416004

    "open fracture with a finding site of bone structure of ulna"

    336863008:272741003=7771000

    “excision of cyst of lung with a laterality of left”

    In the following two examples, the following approach has been taken to generate the display term.

    • Concept identifiers are replaced with the preferred term of each concept (in the US language reference set)

    • Compositional grammar symbols are removed and attributes are replaced with a ","

    Expression
    Term

    397181002:363698007=23416004

    "open fracture, ulna"

    336863008:272741003=7771000

    “excision of cyst of lung, left”

    In some situations, description templates may be applied to ensure that the display terms of the expressions match the clinically spoken language more closely. This approach may be particularly appropriate to consider in situations where the postcoordinated expressions were originally generated using an expression template. In these cases, a corresponding description template and associated term rules may be developed more easily than when the expression was built by another method.

    The following illustrates the expression template, description template and term rules for creating expressions that represent a disorder with a fracture morphology and a finding site of some bone structure. The description template specifies that the term associated with the morphology concept is always followed by the term associated with the bone structure concept, and these two terms should be separated by the term ‘of’. Associated with this description template is a set of term rules, but please note that in a real implementation, additional rules may be included to refine the transformation and ensure a proper transformation in all cases .

    Expression template
    Description template

    [[+id(<< 64572001 |Disease| @disorder]]:

    [[1..*]] {

    [[1..1]] 116676008 |Associated morphology| = [[+id(<< 72704001 |Fracture| @fractureMorphology]],

    [[1..1]] 363698007 |Finding site| = [[+scg (<< 272673000 |Bone structure|)

    [[$fractureMorphology]] of [[$boneStructure]]

    Expression Slot
    Term Rule

    $boneStructure

    • Use the FSN

    • Remove the semantic tag (body structure)

    • Remove prefix, such as:

    $fractureMorphology

    • Use the FSN

    • Remove the semantic tag (morphologic abnormality)

    • Remove the "," separating the morphologies, if two appear, and swap the terms

    The following two examples show of how a description template and a few term transformation rules can lead to human-readable display terms.

    Expression Slot
    Term Transformation

    @fractureMorphology

    fracture, open (morphologic abnormality) → open fracture

    @boneStructure

    bone structure of ulna (body structure) → ulna

    Expression Slot
    Term Transformation

    @fractureMorphology

    fracture, closed (morphologic abnormality) → closed fracture

    @boneStructure

    structure of distal ulnar epiphysis (body structure) → distal ulnar epiphysis

    Provide Feedback

    Replace Concept Identifiers with Terms

    Examples

    Simple Term Rules

    Examples

    Description Templates

    Templates

    Description Generation Rules

    Example: "open fracture of ulna"

    Example: "closed fracture of distal ulnar epiphysis"

    Practical Guide to Postcoordination

    SNOMED CT is a global clinical terminology that represents medical concepts with unique identifiers. These concepts can be combined into expressions to capture complex clinical meanings.

    A precoordinated expression includes a single concept. A postcoordinated expression combines multiple concepts based on SNOMED CT rules, allowing detailed clinical information to be recorded without creating a new concept for every possible detail.

    Postcoordination enables richer EHR documentation, supports data sharing, natural language processing, and interoperability with other code systems. However, it requires careful implementation, skilled staff, and specialized tools.

    To support postcoordination, EHR systems need to handle expressions just like standard SNOMED CT content. This also requires a terminology server that can store and process both regular SNOMED CT concepts and user-created expressions, linked to a specific SNOMED CT edition.

    Terminology servers can offer different levels of support. At Level 0, only fully valid expressions are accepted. Level 1 allows slightly more flexibility. Currently, it’s advised to stick to Level 0 or 1 to ensure data quality, as higher-level support still needs further development.

    @boneStructure
    ]] }
    'Bone structure of'
  • 'Structure of'

  • Remove postfix, such as:

    • 'structure'

  • +

    and

    © Copyright 2026 International Health Terminology Standards Development Organisation, all rights reserved.

    This document is a publication of International Health Terminology Standards Development Organisation, trading as SNOMED International. SNOMED International owns and maintains SNOMED CT®.

    Any modification of this document (including without limitation the removal or modification of this notice) is prohibited without the express written permission of SNOMED International. This document may be subject to updates. Always use the latest version of this document published by SNOMED International. This can be viewed online and downloaded by following the links on the front page or cover of this document.

    SNOMED®, SNOMED CT® and IHTSDO® are registered trademarks of International Health Terminology Standards Development Organisation. SNOMED CT® licensing information is available at . For more information about SNOMED International and SNOMED International Membership, please refer to or contact us at .

    Provide Feedback
    http://snomed.org/licensing
    http://www.snomed.org
    info@snomed.org
    Introduction
    SNOMED CT Expressions
    System Components
    Expressions in the EHR
    Expressions in a Terminology Server
    Appendixes

    Terminology Services Design

    Interacting with a terminology server is done via a set of supported services designed to meet key user requirements. The following pages provide details about the services required for a terminology server supporting postcoordination. Please note that the services designed to support an expression repository will often be used in conjunction with the services available to access precoordinated content. The general services of a SNOMED CT-enabled terminology server can be found in the Terminology Services Guide.

    Create Expression Repository

    Objective

    The objective of services for creating an expression repository is to set up the structures of the expression repository and provide an 'empty' expression repository.

    Description

    To set up an expression repository, it requires a terminology server with access to a SNOMED CT versioned edition. This is important because all concepts referenced by an expression must be interpreted in the context of a specific SNOMED CT Edition. To support processing of the expressions, access to information about the source concepts and to the particular version of the MRCM that is encoded within the version of the substrate is needed.

    Note the MRCM does not change very frequently: several different consecutive versions of the substrate will contain different sets of concepts and their stated relationships, but may contain essentially the same MRCM content and version.

    In addition to specifying the 'substrate' of the expression repository, it is important to specify the primary language, or languages, that should function as the default language for the repository. This is important to support the display of terms associated with the expressions. For the language configuration, it is recommended to specify which language reference set(s), available in the substrate, should be used as the default.

    Service
    Description
    Input Parameters
    Response

    To retrieve details about a generated expression repository. The details of the repository can be used when referring to the content of this specific expression repository, e.g. for adding and updating content in the expression repository.

    Service
    Description
    Input Parameters
    Response

    The objective of a service to update an expression repository is to support the ongoing maintenance and alignment with new versions of SNOMED CT used as the substrate for the expression repository.

    Updating an expression repository involves changing the substrate of an expression repository to a new, or another, substrate. Often, the new substrate will be to a new version of the expression repository substrate. Any changes made to the terminology between the SNOMED CT version being the current substrate and the SNOMED CT version that will become the new substrate may impact the content of the expression repository. For example, if a concept included in one of the expressions stored in the repository has been made inactive, the expression is no longer valid after applying the new substrate. Or, if concept model rules stated in the Machine Readable Concept model have been modified, expressions may no longer be concept model compliant.

    The services for updating of the expression repository needs, therefore, need to support

    1. Validate the CTU of all existing expressions against the new substrate

    2. Resolve any validation issues, e.g. by

      1. replacing inactive concepts with proper replacements

    Service
    Description
    Input Parameters
    Response

    The objective of the services described in this page is to enable the addition of a new expression in the expression repository.

    Adding an expression to an expression repository requires the validation of the expression and the storage of the expression as it has been entered by the user with the additional data and expression forms that are needed for subsequent access and use.

    The logical process of the add expression service is illustrated in the diagram below.

    Service
    Description
    Input Parameters
    Response

    The objective of this service is to validate a CTU expression and transform it into a classifiable form (CF) which can be used as input to the Description Logic classifier.

    This service involves both the validation and transformation of a CTU expression. Three types of validation are required, including syntactic validation, content validation, and MRCM validation. For expressions not fully compliant with the MRCM, a transformation is required to generate the classifiable form.

    The syntactic validation is performed to determine if the expression conforms to the SNOMED CT compositional grammar syntax (see section Parsing).

    Please refer to the (section Validating) for more details on the validation of expression, and the for details on the computer processable concept model rules.

    The content validation is performed to determine if all concept references included in the expression exists and are active in the version and edition of SNOMED CT which is the substrate for the given expression repository.

    The MRCM validation is performed to determine if the expression complies to the concept model rules as expressed in the SNOMED CT Concept Model and specified by the machine readable concept model (the version of the MRCM applying to the version and edition of SNOMED CT which is the substrate for the given expression repository)

    An expression that does not conform to the concept model cannot be relied upon to correctly classify. Therefore, it cannot be reliably tested for subsumption by another concept or inclusion in (or exclusion from) the results of an expression constraint or analytics query.

    Specific terminology services required to support MRCM validation are described in the general Terminology Services Guide here: SNOMED CT concept model

    Expressions that are fully compliant with the Machine Readable Concept will not need a transformation to be represented in the classifiable form. This means that for fully MRCM compliant expressions the close-to-user form and the classifiable form of the expression are the same.

    An expression may be invalid when tested against the concept model but may contain refinements that would be valid if correctly structured. There are several situations where predictable structural adjustments enable a valid expression to be constructed from an informal expression that does not fully conform to the concept model.

    Examples include:

    • Moving a loose attribute to an attribute group in which it is valid

    • Moving a loose attribute so it provides a nested refinement to the value of another attribute

    A loose attribute is an attribute that is included in the refinement of an expression without being placed in a group, although the concept model rules require it to be grouped.

    The extent to which a terminology server supports the transformation of non-MRCM compliant expressions into MRCM-compliant expressions may vary between terminology servers. Each terminology server should, therefore, clearly state the level of transformations supported for expressions that are not fully MRCM compliant. A recommended practice for this it to support an API call by which it is possible to determine the transformation level. For more detail on these levels, see

    The logical process of the service to transform and validate an expression is illustrated in the diagram below.

    Summary

    Service
    Description
    Input Parameters
    Response

    Objective

    The objective of this service is to support classification and Necessary Normal Form generation

    Related Use Cases

    Classification is required to enable the following use case: Query Expressions

    Description

    To enable postcoordinated expressions to be queried in the same way as pre-coordinated SNOMED CT concepts, the necessary normal form of the expression is required, as illustrated in the diagram below.

    Workflow

    Summary

    Service
    Description
    Input Parameters
    Response

    Objective

    The objective of this service is to get data associated with an identified expression.

    Description

    Services for retrieving data associated with an expression rely on an input pointing to the expression of interest. For this purpose, a unique identifier associated with the expression within an expression repository should be input to this service. If the CTU of the expression itself is used to uniquely identify the expression, this will be used for the lookup. If multiple versions of the expression exists, the service will return the most recent version of the expression.

    Workflow

    Objective

    The objective of this service is to enable text-based searching for expressions in the expression repository.

    Description

    As specified in , an expression repository includes the canonical form of the stored expressions. The canonical form excludes any terms associated with the referenced concepts.Consider storing a term associated with the expression to aid searching.Please note that this guide does not include guidance on the storage of a human-readable term for expressions, but it recommends implementing services to automatically generate a display term. Some implementations may choose to store an autogenerated display term for each expression in the repository as part of adding the expression. This may be chosen to support easy lookup of the terms associated with the expressions to support services for searching.

    Summary

    Service
    Description
    Input Parameters
    Response

    Objective

    The objective of services to get a display term for an expression, is to support the automatic generation of a term that can be used for the human-readable representation of the term, e.g for display or exchange.

    Description

    Three different approaches to automatically creating display terms for postcoordinated expressions is presented, ranging from the simplest to the most complex.

    1. Replace concept identifiers with terms

    2. Apply simple term rules

    3. Apply description templates and rules

    Please refer to for details on these approaches. Please note that alternative approaches may be equally valid for this task.

    Summary

    Service
    Description
    Input parameters
    Response

    Objective

    A terminology server should support services that are required for patient- and population-oriented data retrieval and analytics tasks. The objective of expression query services is to enable subsumption testing between expressions and enable selective retrieval of postcoordinated expressions satisfying stated criteria.

    Description

    Subsumption TestingWhen expressions are used, it is necessary to determine whether the meaning of a particular expression is a subtype of a specified concept or more generally is subsumed by a particular expression constraint. The terminology services required are similar to those described for testing concepts in sections 4.5 Get and Test Concept Subtypes and Supertypes.

    Selective Retrieval

    As for precoordinated concepts, expressions may be queried based on the inferred properties derived from the classification process. Expression constraints may be formulated and executed against the expression repository and the associated substrate to return both precoordinated concepts and expressions that match the specified constraint, see .

    Summary

    Service
    Description
    Input parameters
    Response

    Terminology Services Requirements

    This page introduces the users, use cases and resulting service requirements for a terminology server supporting postcoordination.

    Expression Repository Users

    Functional Requirements

    The tables below shows the set of services will enable users interacting with an expression repository to perform required tasks.

    Requirements for Information Managers

    Functional Requirement
    Service Requirements
    Functional Requirement
    Service Requirements

    Services should be available to support the creation of an expression repository, involving the creation of the structures required to hold the data of the expression repository, as described in . These services are required to provide an 'empty' expression repository.

    Services should be available for getting details about a generated expression repository. The details can be used when accessing content of this specific expression repository, e.g. when adding, updating or querying expressions.

    Services should be provided to support the addition of new expressions to the expression repository. These services should ensure that all data required to represent and process expressions are available.

    Services for adding expressions will often include the services for validating the expression, transforming the expression and generating the necessary normal form.

    Services should be provided to support transformation of the close-to-user form expression to a classifiable form which is required to generate the necessary normal form.

    Considerations and approaches to transformation are described in .

    Services should be available to check if the close-to-user form of the expression is syntactically valid and conforms to the concept model rules, or any allowed rules for postcoordination.

    Services should be provided to support the generation of the necessary normal form of the expression, which is a prerequisite for supporting expressions to be queried in the same way as pre-coordinated content.

    Considerations and approaches to the generation of the necessary normal form are described in .

    Services should be provided to support the updating of expressions while retaining full traceability of previous versions of the expression (similarly to the principles of updating precoordinated SNOMED CT content).

    Services should be provided to support the indication that an expression is no longer recommended for use. Although inactivated, the expression should be retained in the repository and full traceability of previous versions (similarly to the principles of inactivating precoordinated SNOMED CT content).

    Services should be provided to support access to details about the individual expressions in the repository.

    Services should be provided to support searches for expressions in the repository. Lexical searches should be supported based on the terms associated with the concepts included in the expression.

    Services should be provided to support a human-readable representation of the expression. This service is required to enable the display of expressions in user interfaces, or to support term searching.

    Services should be provided to test the subsumption relationship between a pair of expressions given the semantics of subsumption

    Services should be available to enable subsumption testing between expressions and enable the selective retrieval of postcoordinated expressions satisfying stated criteria. Query services should enable queries to be performed over the content of a specific expression repository plus the content of the versioned edition of SNOMED CT that the repository depends on.

    Should be able to store expressions in the EHR data store

    Add expression

    Should be able to share details about an expression, e.g. to support communication and exchange

    Lookup expression

    Should be able to query expressions in the same way as pre-coordinated concepts to support tasks such as reporting, clinical data analysis and decision support

    Query expressions

    Should be able to set up the expression repository when preparing for an implementation

    Create expression repository

    Should be able to retrieve details about the expression repository to enable referencing the content of this specific expression repository, e.g. for adding and updating content in the expression repository.

    Get repository details

    Should be able to add expressions to the repository when these are created prior to the implementation within an EHR

    Add expression

    Should be able to check if an expression constraint conforms to the concept model rules

    Validate expression

    Should be able to check if expressions exists in the repository, e.g. as part of exploring if new expressions should be created

    Lookup expression

    Should be able to view the details of each expression in the expression repository

    Lookup expression

    Should be able to search for expressions using term search

    Search for expression

    Should be able to retrieve expressions matching specific search criteria, e.g. as part of bulk edit features, expression reviews, etc.

    Query expressions

    Should be able to update expressions in an expression repository to enable correction of errors or to support updates to a new substrate

    Update expression

    Should be able to disable or inactivate expressions that are no longer recommended for use

    Inactivate expression

    Should be able to add expressions to the expression repository, e.g.when the EHR supports runtime creation of expressions using form-based data entry

    Add expression

    Should be able to see a term for an expression, e.g. when this is rendered as an option in a clinical user interface

    Get display term

    Should be able to search for expressions using text-based search, e.g. when expressions are included in a value set bound to a search field

    Search for expression

    Information Manager

    This user represents the people involved with the implementation of SNOMED CT-enabled systems and the maintenance of postcoordinated expression repositories

    This user group interacts with an Expression Management System, designed to support key tasks required to create and maintain postcoordinated expressions in an expression repository

    Clinical user

    This user represents the people involved with the entry of clinical data in an EHR system (or another type of clinical information system)

    This user represents the people involved with the entry of clinical data in an EHR system (or another type of clinical information system)

    Requirements for Clinical Users

    Service Requirements

    Create expression repository

    Get repository details

    Add expression

    Transform expression

    Validate expression

    Generate Necessary Normal form

    Update expression

    Inactivate expression

    Lookup expression

    Search for expression

    Get display term

    Subsumption testing

    Query expressions

    Expression Repository Requirements
    Implementation
    Implementation
    Provide Feedback
    Cover
    Cover
    adjusting expression to conform to the MRCM
  • Transform the updated expressions (update the classifiable form expressions)

  • Classify the expression repository against the new substrate, and where relevant, generate new versions of the necessary normal form

  • - repId: a unique reference to the expression repository

    - ecl: an expression constraint complying to the ​

    Success: Return a set of conceptIds and CTU expressions that conform to the expression constraintOptionally additional information such as the fully specified name or preferred term of each concept included in the expansion plus generated terms for included expressions​Failure: Return error message if expression constraint contains syntax errors​Return error message if any concept identifiers in the expression constraint are not present in the specified edition

    Create expression repository

    Creates a new repository

    - substrate : the base edition for this repository

    - languages (0-*): pairs of language refsetIds + language codes used to generate descriptions (optional)

    Success: True, with identifier of the generated repository

    Failure: False, with appropriate error message

    Get details about an expression repository

    Gets details of a repository

    - substrate: the base edition for this repository

    - repId: a unique reference to the expression repository

    Success: Return details of the selected expression repository and dependencies

    Failure: Return error message

    Update expression repository

    Creates a new version of a specific repository

    - substrate : the new base edition for this repository

    - repId : identifier of the repository to be updated

    - languages (0-*): pairs of language refsetIds + language codes used to generate descriptions (optional)

    Success: True

    Failure: False, with appropriate error message

    Add expression

    Adds a new postcoordinated expression to the expression repository

    - substrate: the base edition for this repository

    - repId: a unique reference to the expression repository - CTU: Close to user form expression

    Success: Return data associated with the expression

    • Expression identifier, if generated

    • CTU expression

    • CF expression, if generated

    • NNF relationships, if generated

    Failure: "Expression not added" plus an indication of the reason (e.g. transformation issue, classification issue, term generation issue)

    Validate and transform expression

    Check that the CTU is syntactically valid and conforms to the concept model rules, or allowed rules for postcoordination. Transforms the close-to-user form expression to a classifiable form

    - id: a unique reference to the expression repository - expId: CTU expression or expression id

    Success: True

    Failure: False, with validation error indication

    Generate NNF

    Classifies the expression (CF) and generates the necessary normal form of the expression

    - repId: a unique reference to the expression repository - CF: Classifiable form

    Success: As a minimum, returns the necessary normal form of the expression

    Failure: Display an appropriate error message

    Search for expression

    Find expression by term

    - repId: a unique reference to the expression repository

    - Search string

    - Search technique option (if required)

    - Search filtering or sorting options (if supported)

    Success: A collection of matching terms each of which is linked to an expression within the expression repository.

    • Display term (generated)

    • Expression identifier

    Failure: Return an appropriate error message

    Get term for expression

    Gets an autogenerated term for the expression using the technique supported by the terminology server

    - substrate: the base edition for this repository- id: a unique reference to the expression repository

    - expression: a unique reference to the expression

    - technique: if multiple techniques for generating terms exist, the technique to apply may be indicated

    Success: Return the generated display term(s)​Failure: Display an appropriate error message

    Query expression

    Subsumption - check if there is a subsumption relationship between two expressions

    - repId: a unique reference to the expression repository

    - source: CTU expression, expression id, or concept id

    - target: CTU expression, expression id, or concept id

    Success: Return data to inform which of the following outcomes are true:

    • Source is a subtype of target

    • Target is a subtype of source

    • No subsumption relationship between source and target

    Failure: Display an appropriate error message

    Query expression

    Summary

    Get Details of an Expression Repository

    Objective

    Summary

    Update Expression Repository

    Objective

    Description

    Summary

    Add Expression

    Objective

    Description

    Workflow

    Summary

    Validate and Transform Expression

    Objective

    Description

    Syntactic Validation

    Content Validation

    MRCM Validation

    Transformation

    Workflow

    Generate Necessary Normal Form

    Lookup Expression

    Search Expression

    Get Display Term

    Query Expression

    Compositional Grammar - Specification and Guide
    Compositional Grammar - Specification and Guide
    Machine Readable Concept Model
    Implementation
    Expression Repository Requirements
    Appendix A: Techniques for Autogenerating Display Terms
    Service Requirements
    Provide Feedback
    Workflow for the add expression service
    Workflow for the validate and transform expression
    Workflow for the service generating the Necessary Normal Form Expression
    Workflow for the expression Lookup service

    Get concepts and expressions that conform to an expression constraint

    Expression Constraint Language

    Store Expression Parts Individually

    When clinical data is entered in an EHR using a number of interconnected data elements, the composition of the individual data items may derive a postcoordinated expression. This is exemplified in the image below where three data entry controls are used to form the clinical meaning of "an excision of the appendix structure", see the image below.

    Form-based approach to data entry, where the expression parts are stored in separate fields.

    With this approach, it is recommended to store the data in an information structure that matches the fields on the form and to record the concept identifier and display term for each of the fields, within that information structure. This enables the system to efficiently display health records that have been recorded previously, and also provides full traceability of what the user selected at the point of data entry.

    Store Derived Expression

    Aside from storing the individual data items, the associated postcoordinated expression may also be generated using an expression template and stored, if this is needed for other EHR tasks. The principle of this approach is illustrated in the diagram below where the derived expression represents the combined meaning of the selected values. In this example, the concept id for | surgical procedure| replaces the @procedure slot in the expression template. The concept id of | Appendix| replaces the @site slot, and the concept id for | Excision| replaces the @method slot.

    The benefit of this approach is that changes to the modelling of a particular branch in SNOMED CT will only require an update to the applied expression, instead of every single expression.

    Some implementations may choose to store this derived expression, in addition to the individual values of each field, to support run-time querying or exchange.

    Provide Feedback
    Illustration of the principle of using an expression template to generate a postcoordinated expression from the data recorded using the form-based approach to data entry.

    Transformation Level 1

    Terminology servers at Level 1 will accept any expressions represented in valid classifiable form, as in Level 0. Additionally, some expressions that are not already in classifiable form will also be accepted. These will mainly be syntactically compliant expressions that are not MRCM compliant, but which the server can unambiguously transform to derived expressions that are MRCM compliant, using predefined automated transforms.

    Loose Attributes

    A loose attribute is any attribute within a CTU expression that is not in an attribute group AND the MRCM specifies:

    • that it should be grouped, or

    • that it is in the wrong domain

    Level 1 transformations of CTU expressions may apply to expressions meeting the following criteria.

    • Transformations can only apply where there is no definition status

    • There must be only one focus concept

    • Level 1 transformations can only apply to loose attributes (as defined above)

    Expression syntax, concepts being active and MRCM attribute-range validation should be applied before the transformation step. Implementations should fail fast if these are not met and not attempt transformation. This simplifies the preconditions for specific transformations.

    The process of applying the transformations is iterative. This includes: collecting the set of remaining loose attributes, then applying the next transformation, and repeating until each transformation has been applied once. When each specific transformation is applied it should be greedy and transform all the loose attributes that meet the conditions of that transformation.

    The list of transformations must be applied in a specific order; to ensure that the same classifiable expression is reached every time by all implementations.

    The allowed patterns can be summarized as follows:

    1. Refining Existing Attribute

    2. Adding a Self-grouped Attribute

    3. Adding Severity to Clinical Findings

    4. Lateralizing Clinical Findings

    The following sections elaborate on the preconditions and behaviour of each pattern.

    In this case, the terminology server will accept attributes-value pairs with the following characteristics:

    • The attribute is already present in the NNF of the focus concept

    • The attribute value stated in the expression is a subtype of the attribute value of the focus concept

    Important Notes

    • If no groups are stated in the CTU expression (i.e. attributes are declared as loose attributes), the terminology server will accept attribute-value pairs correctly belonging to role groups of the focus concept as follows:

      • The terminology server will accept attribute-value pairs that refine one or more of the attribute-value pairs of the focus concept, i.e.

        • The attribute type should be the same as, or a subtype of, an attribute that already exists in the NNF of the focus concept, for which

    CTU expression
    Evaluation
    Classifiable Form

    This transformation will be applied to all loose attributes that meet the following conditions:

    • The attribute applies to the MRCM domain of the focus concept (see table below)

    • Only one instance of the attribute is stated in the CTU expression

      • Although the MRCM allows multiple instances, this transformation condition aims to avoid misinterpretation of the intended meaning

    Clinical finding Attributes
    Procedure Attributes

    Please refer to the Editorial Guide for instructions on the use and the implied meaning of these attributes:

    • Clinical Finding Defining Attributes

    • Procedure Defining Attributes

    As part of the expression transformation process, the terminology server will place the attributes in groups on their own, as shown in the examples below.

    CTU Expression
    Evaluation
    Classifiable Form

    At level 1, the terminology server will accept CTU expressions matching the following pattern:

    This means that CTU expressions that includes the severity attribute will be accepted if the following criteria are met:

    • The focus concept is a subtype of |Clinical finding| (but not a subtype of )

    • The attribute value must be a subtype of

    • When applied as a loose attribute, only one instance of the attribute may be stated in the CTU expression

    As part of the transformation process, the terminology server will place the attribute in a group on its own, similar to the self-grouped attributes.

    The terminology server will accept CTU expressions matching the following pattern:

    The transformation of expressions following this pattern will include the following steps:

    1. Copy the defining properties and role groups of the focus concept (as present in the NNF) to the classifiable form expression

    2. Replace the value of the |Finding site| attribute with a nested expression:

    From:

    To:

    Important Notes

    When applying the concept as the value for the attribute, the transformation should be done in accordance with the modeling applied to the content in the International Edition of SNOMED CT.

    This means that the transformation steps described above should be applied twice; one for each lateral half, as illustrated in the example below.

    CTU Expression
    Evaluation
    Classifiable Form

    The terminology server will accept CTU expressions matching the following pattern:

    The transformation of expressions following this pattern will include the following steps:

    1. Copy the defining properties and role groups of the focus concept (as present in the NNF) to the classifiable form expression

    2. Replace the value of the |Procedure site| attribute (or any of its subtypes / @siteAttribute) with a nested expression:

    From:

    To:

    When applying the concept as the value for the attribute, the transformation should be done in accordance with the modeling applied to the content in the International Edition of SNOMED CT.

    This means that the transformation steps described above should be applied twice; one for each lateral half, as illustrated in the example below.

    CTU Expression
    Evaluation
    Classifiable Form

    At level 1, the terminology server will accept CTU expressions matching the following pattern:

    This pattern allows attributes applicable to the domain to be used to add contextual information to clinical finding concepts.

    The generated classifiable form must be based on the following expression with as the focus concept and the following default attributes and values unless otherwise specified by the CTU. The value of the Associated finding attribute will be replaced by the focus concept of the CF expression.

    Input Expression
    Evaluation
    Classifiable Form

    At level 1, the terminology server will accept CTU expressions matching the following pattern:

    This pattern allows attributes applicable to the domain to be used to add contextual information to procedures.

    The generated classifiable form must be based on the following expression with as the focus concept and the following default attributes and values, unless otherwise specified by the CTU. The value of the Associated procedure attribute will be replaced by the focus concept of the CF expression.

    CTU Expression
    Evaluation
    Classifiable Form

    When the expression contains a mixture of loose attributes and attribute groups, the attribute groups are effectively treated as for Level 1, so no transformation of these are attempted

    Lateralizing Procedures

  • Adding Context to Clinical Findings

  • Adding Context to Procedures

    • The attribute value may be the same as, or a subtype of, the existing attribute value

  • The terminology server will reject attribute-values, if this is a supertype of the attribute value used in the definition of the focus concept

  • If groups are stated in the CTU expression

    • The terminology server will accept groups that refine an existing role group of the concept, i.e. the group stated in the CTU should represent a subtype of the role group of the focus concept

  • : =

    Accept

    === : { = } { = } { = } { = }

    : =

    Accept

    === : { = , = }

    : =

    Reject

    N/A

    : =

    Accept

    === : { = , = , = } { = , = , = } { = , = , = }

    Either:
    • The attribute type is not already used in the necessary normal form of the focus concept

      • For example, if the focus concept already has a |Due to| attribute in the NNF then an expression including |Due to| would not be accepted

    • The attribute type is already used in the necessary normal form of the focus concept and the value is equal to or a subtype of the existing value

      • I.e. it represents a refinement

    due to

    clinical course

    temporally related to

    associated with

    : =

    Accept

    === : { = , = }, { = }

    The severity attribute is not already present in the definition of the focus concept

    : =

    Accept

    === :{ = ( : = )}

    : =

    Reject

    N/A

    : =

    Reject

    N/A

    : =

    Reject

    === : { = ( : = )} { = ( : = )}

    : =

    Accept

    === : { = ( : = ), = } { = ( : = ), = }

    : =

    Reject

    N/A

    : =

    Reject

    N/A

    : =

    Accept

    === : { = , = ( : = ), = } { = , = ( : = )}

    : =

    Reject

    N/A

    : = , =

    Accept

    === : { = , = , = , = }

    29477005 |Repair of fracture with sequestrectomy| : 405813007 |Procedure site - Direct| = 41111004 |Bone structure of shaft of femur|

    Accept

    === 29477005 |Repair of fracture with sequestrectomy| : { 260686004 |Method| = 129284003 |Surgical action| , 363704007 |Procedure site| = 272673000 |Bone structure| , 405816004 |Procedure morphology| = 72704001 |Fracture| } { 260686004 |Method| = 257903006 |Repair - action| , 405813007 |Procedure site - Direct| = 26107004 |Structure of musculoskeletal system| } { 260686004 |Method| = 129304002 |Excision - action| , 405813007 |Procedure site - Direct| = 272673000 |Bone structure| , 363700003 |Direct morphology| = 4857006 |Sequestrum| } { 260686004 |Method| = 129284003 |Surgical action| , 363704007 |Procedure site| = 41111004 |Bone structure of shaft of femur| , 405816004 |Procedure morphology| = 72704001 |Fracture| } { 260686004 |Method| = 257903006 |Repair - action| , 405813007 |Procedure site - Direct| = 41111004 |Bone structure of shaft of femur| } { 260686004 |Method| = 129304002 |Excision - action| , 405813007 |Procedure site - Direct| = 41111004 |Bone structure of shaft of femur| , 363700003 |Direct morphology| = 4857006 |Sequestrum| }

    118473000 |Treatment of complex fracture| : 260686004 |Method| = 410814006 |Surgical reduction - action|

    Accept

    === 118473000 |Treatment of complex fracture| : { 260686004 |Method| = 257903006 |Repair - action| , 405813007 |Procedure site - Direct| = 272673000 |Bone structure| } { 260686004 |Method| = 129284003 |Surgical action| , 363704007 |Procedure site| = 272673000 |Bone structure| , 405816004 |Procedure morphology| = 72704001 |Fracture| } { 260686004 |Method| = 410814006 |Surgical reduction - action| , 363704007 |Procedure site| = 272673000 |Bone structure| , 405816004 |Procedure morphology| = 72704001 |Fracture| }

    before

    priority

    during

    has focus

    after

    84229001 |Fatigue| : 255234002 |After| = 840539006 |COVID-19|

    Accept

    === 84229001 |Fatigue| : { 363714003 |Interprets| = 359755007 |Energy / stamina| } { 255234002 |After| = 840539006 |COVID-19| }

    397181002 |Open fracture| : 42752001 |Due to| = 57168000 |Operation on bone|

    Reject

    N/A

    [[+ (< 404684003 |Clinical finding| MINUS << 162465004 |Symptom severity| ) @finding]]:
    246112005 |Severity| = [[+ (<< 272141005 |Severities (qualifier value)| ) @severity]]

    16331000 |Heartburn| : 246112005 |Severity| = 24484000 |Severe|

    Accept

    === 16331000 |Heartburn| : { 363698007 |Finding site (attribute)| = 32849002 |Esophageal structure (body structure)| } { |Severity| = 24484000 |Severe| }

    25064002 |Headache| : 246112005 |Severity| = 162471005 |Symptom very severe|

    Reject

    N/A

    717933005 |Severe thinness in adulthood| : 246112005 |Severity| = 442452003 |Life threatening severity|

    Reject

    [[+ (< 404684003 |Clinical finding| ) @finding]]:
    272741003 |Laterality| = [[+ (< 182353008 |Side| ) @side]]
    @finding.363698007 |Finding site| = @bodySite
    363698007 |Finding site| = (@bodySite: |Laterality| = [[+ @side]] )
    CTU Expression
    301354004 |Pain of ear| : 272741003 |Laterality| = 51440002 |Right and left|
    Classifiable Form Expression
    === 301354004 |Pain of ear| :
    { 363698007 |Finding site| = ( 117590005 |Ear structure| : |Laterality| = 7771000 |Left| )},
    { 363698007 |Finding site| = ( 117590005 |Ear structure| : |Laterality| = 24028007 |Right| )

    274663001 |Acute pain| : 272741003 |Laterality| = 7771000 |Left|

    Reject

    N/A

    21522001 |Abdominal pain| : 272741003 |Laterality| = 7771000 |Left|

    Reject

    N/A

    [[+ (< 71388002 |Procedure| ) @procedure]]:
    272741003 |Laterality| = [[+ (< 182353008 |Side| ) @side]]
    @siteAttribute = @bodySite
    @siteAttribute = (@bodySite: |Laterality| = [[+ @side]] )
    CTU Expression
    | 52734007 |Total replacement of hip| : 272741003 |Laterality| = 51440002 |Right and left| |
    Classifiable Form Expression
    === 52734007 |Total replacement of hip| :
    { 363698007 |Finding site| = ( 117590005 |Ear structure| : |Laterality| = 7771000 |Left| )},
    { 363698007 |Finding site| = ( 117590005 |Ear structure| : |Laterality| = 24028007 |Right| )}

    14600001000004107 |Closure of wound of ankle with flap| : 272741003 |Laterality| = 7771000 |Left|

    Accept

    === 14600001000004107 |Closure of wound of ankle with flap| : { 260686004 |Method| = 129357001 |Closure - action| , 405813007 |Procedure site - Direct| = ( 344001 |Ankle region structure| : 272741003 |Laterality| = 7771000 |Left| ), 363700003 |Direct morphology| = 13924000 |Wound| , 424361007 |Using substance| = 256683004 |Flap| }

    449647000 |Reduction of open fracture of lower leg with internal fixation| : 272741003 |Laterality| = 7771000 |Left|

    Accept

    === 449647000 |Reduction of open fracture of lower leg with internal fixation| : { 260686004 |Method| = 129371009 |Fixation - action| , 405813007 |Procedure site - Direct| = ( 702468001 |Bone structure of lower leg| : 272741003 |Laterality| = 7771000 |Left| ), 363700003 |Direct morphology| = 52329006 |Fracture, open| , 363699004 |Direct device| = 31031000 |Orthopedic internal fixation system, device| } { 260686004 |Method| = 129427006 |Reduction - action| , 405813007 |Procedure site - Direct| = ( 702468001 |Bone structure of lower leg| : 272741003 |Laterality| = 7771000 |Left| ), 363700003 |Direct morphology| = 52329006 |Fracture, open| }

    [[<< 404684003 |Clinical finding| @finding]]:
    [[0..1]] 408729009 |Finding context| = [[+id(<< 410514004 |Finding context value| )@context]],
    [[0..1]] 408731000 |Temporal context| = [[+id(<< 410510008 |Temporal context value| )@time]],
    [[0..1]] 408732007 |Subject relationship context| = [[+id(<< 125676002 |Person| )@person]]
    === 413350009 |Finding with explicit context| :
    { 246090004 |Associated finding| = 404684003 |Clinical finding| ,
    408729009 |Finding context| = 410515003 |Known present| ,
    408732007 |Subject relationship context| = 410604004 |Subject of record| ,
    408731000 |Temporal context| = 410512000 |Current or specified time| }

    266987004 |History of cancer| : 408732007 |Subject relationship context| = 72705000 |Mother|

    Reject

    N/A

    363358000 |Lung cancer| : 408729009 |Finding context| = 415684004 |Suspected|

    Accept

    [[<< 71388002 |Procedure| @procedure]]:
    [[0..1]] 408730004 |Procedure context| = [[+id(<< 288532009 |Context values for actions| ))@context]],
    [[0..1]] 408731000 |Temporal context| = [[+id(<< 410510008 |Temporal context value| )@time]],
    [[0..1]] 408732007 |Subject relationship context| = [[+id(<< 125676002 |Person| )@person]]
    === 129125009 |Procedure with explicit context| :
    { 363589002 |Associated procedure| = 71388002 |Procedure| ,
    408730004 |Procedure context| = 385658003 |Done| ,
    408732007 |Subject relationship context| = 410604004 |Subject of record|
    408731000 |Temporal context| = 410512000 |Current or specified time| }

    42125001 |Excisional biopsy of breast mass| : 408730004 |Procedure context| = 410525008 |Needed|

    Accept

    === 129125009 |Procedure with explicit context| : { 363589002 |Associated procedure| = 42125001 |Excisional biopsy of breast mass| , 408730004 |Procedure context| = 410525008 |Needed| , 408732007 |Subject relationship context| = 410604004 |Subject of record| 408731000 |Temporal context| = 410512000 |Current or specified time| }

    74400008 |Appendicitis| : 408730004 |Procedure context| = 443390004 |Refused|

    Reject

    N/A

    Scope of Transformations

    Transformation Process

    Transformations

    Refining Existing Attribute

    The following table provides examples of CTU expressions candidate to this pattern, and their evaluation at level 1.

    Adding a Self-grouped Attribute

    Transformation Preconditions

    The following table shows the self-grouped attributes and the domain they apply to

    Examples of CTU expressions candidate to this pattern, and their evaluation at level 1.

    Adding Severity to Clinical Findings

    Important Notes: Please be aware that caution should be taken when adding |severity| to a focus concept, because severities are difficult to generalize and may be subject to individual interpretation, as stated in the Editorial Guide.

    Examples of CTU expressions candidates to this pattern, and their evaluation at level 1.

    Lateralizing Clinical Findings

    The terminology server will only accept expressions complying to this pattern if the focus concept of the CTU expression has the following characteristics:

    The focus concept

    • includes only one role group with a |Finding site| attribute OR

    • includes two or more role groups with a |Finding site| attribute WHERE

      • the value of the finding site attribute in each role group is the same concept

    • includes no attributes with values that are already lateralized anatomical structures (ie values whose own definitions already include a value for the 272741003|Laterality| attribute

    The value of the finding site attribute is a member of the

    • being a member of this refset means that the associated body structure is lateralizable, and does not already state a laterality other than 182353008 |Side|

    Transformation of bilateral findings

    Examples

    Lateralizing Procedures

    Important Notes

    The terminology server will only accept expressions complying to this pattern where the focus concept has the following characteristics:

    • The focus concept

      • includes only one role group with a @siteAttribute 363704007 |Procedure site| attribute (or any subtype of 363704007 |Procedure site|) OR

      • includes two or more role groups with a 363704007 |Procedure site| attribute (<< 363704007 |Procedure site|) WHERE

        • the @bodySite value is the same for all procedure site attributes

      • includes no attributes with values that are lateralized anatomical structures

    • The value of the procedure site attribute is a member of the

      • i.e. the associated body structure is lateralizable, and

      • the associated body structure does not already state a laterality

    Transformation of bilateral procedures

    Examples of CTU expressions and their evaluation at level 1.

    Adding Context to Clinical Findings

    Important Notes

    The terminology server will only accept expressions complying to this pattern if the focus concept of the CTU expression has the following characteristics:

    • The focus concept

      • is the concept 404684003 |Clinical finding| or a subtype hereof

    • For each expression, only one instance of each attribute is accepted

    • The value of the attribute must be within the allowed range of the attribute as specified by the MRCM

    Examples of CTU expressions and their evaluation at level 1.

    Adding Context to Procedures

    Important Notes

    The terminology server will only accept expressions complying to this pattern if the focus concept of the CTU expression has the following characteristics:

    • The focus concept

      • is the concept 71388002 |Procedure| or a subtype hereof

    • For each expression, only one instance of each attribute is accepted

    • The value of the attribute must be within the allowed range of the attribute as specified by the MRCM

    Examples of CTU expressions and their evaluation at level 1

    162465004 | Symptom severity (finding)|
    272141005 | Severities (qualifier value)|
    51440002 | Right and left|
    272741003 | Laterality|
    51440002 | Right and left|
    272741003 | Laterality|
    413350009 | Finding with explicit context (situation)|
    413350009 | Finding with explicit context (situation)|
    29125009 | Procedure with explicit context (situation)|
    29125009 | Procedure with explicit context (situation)|
    Provide Feedback

    N/A

    === : { = , = , = , = }

    723264001 | Lateralizable body structure reference set|
    723264001 | Lateralizable body structure reference set|
    281444001 |Loosening of total shoulder replacement|
    255234002 |After|
    733429004 |Prosthetic total arthroplasty of right shoulder|
    281444001 |Loosening of total shoulder replacement|
    363698007 |Finding site|
    85537004 |Glenohumeral joint structure|
    255234002 |After|
    31884000 |Implantation of joint prosthesis into shoulder joint|
    47429007 |Associated with|
    304125002 |Total shoulder replacement prosthesis|
    255234002 |After|
    733429004 |Prosthetic total arthroplasty of right shoulder|
    372130007 |Malignant neoplasm of skin|
    363698007 |Finding site|
    113179006 |Skin structure of nose|
    372130007 |Malignant neoplasm of skin|
    116676008 |Associated morphology|
    1240414004 |Malignant neoplasm|
    363698007 |Finding site|
    113179006 |Skin structure of nose|
    372130007 |Malignant neoplasm of skin|
    363698007 |Finding site|
    176752008 |Breast structure|
    6471000179103 |Transplantation of kidney and pancreas|
    405813007 |Procedure site - Direct|
    9846003 |Right kidney structure|
    6471000179103 |Transplantation of kidney and pancreas|
    260686004 |Method|
    410820007 |Surgical transplantation - action|
    405813007 |Procedure site - Direct|
    64033007 |Kidney structure|
    363701004 |Direct substance|
    420852008 |Kidney graft - material|
    260686004 |Method|
    410820007 |Surgical transplantation - action|
    405813007 |Procedure site - Direct|
    15776009 |Pancreatic structure (body|
    363701004 |Direct substance|
    421263007 |Pancreas graft - material|
    260686004 |Method|
    410820007 |Surgical transplantation - action|
    405813007 |Procedure site - Direct|
    9846003 |Right kidney structure|
    363701004 |Direct substance|
    420852008 |Kidney graft - material|
    80146002 |Appendicectomy|
    260870009 |Priority|
    394849002 |High priority|
    80146002 |Appendicectomy|
    260686004 |Method|
    129304002 |Excision - action|
    405813007 |Procedure site - Direct|
    66754008 |Appendix structure|
    260870009 |Priority|
    394849002 |High priority|
    301354004 |Pain of ear|
    272741003 |Laterality|
    7771000 |Left|
    301354004 |Pain of ear|
    363698007 |Finding site|
    117590005 |Ear structure|
    |Laterality|
    7771000 |Left|
    274279008 |Renal pain|
    272741003 |Laterality|
    7771000 |Left|
    16018431000119109 |Paresis of right lower limb|
    272741003 |Laterality|
    7771000 |Left|
    288228002 |Myalgia/myositis - forearm|
    272741003 |Laterality|
    7771000 |Left|
    288228002 |Myalgia/myositis - forearm|
    363698007 |Finding site|
    14975008 |Forearm structure|
    272741003 |Laterality|
    7771000 |Left|
    363698007 |Finding site|
    30608006 |Skeletal muscle structure of upper limb|
    272741003 |Laterality|
    7771000 |Left|
    449702005 |Cellulitis and abscess of lower limb|
    272741003 |Laterality|
    7771000 |Left|
    449702005 |Cellulitis and abscess of lower limb|
    363698007 |Finding site|
    61685007 |Lower limb structure|
    272741003 |Laterality|
    7771000 |Left|
    116676008 |Associated morphology|
    385627004 |Cellulitis|
    363698007 |Finding site|
    61685007 |Lower limb structure|
    272741003 |Laterality|
    7771000 |Left|
    116676008 |Associated morphology|
    44132006 |Abscess|
    11971000224104 |Dissection of lymph node|
    272741003 |Laterality|
    7771000 |Left|
    6471000179103 |Transplantation of kidney and pancreas|
    272741003 |Laterality|
    7771000 |Left|
    52734007 |Total replacement of hip|
    272741003 |Laterality|
    7771000 |Left|
    52734007 |Total replacement of hip|
    260686004 |Method|
    425362007 |Surgical insertion - action|
    405814001 |Procedure site - Indirect|
    182201002 |Entire hip joint|
    272741003 |Laterality|
    7771000 |Left|
    363699004 |Direct device|
    304120007 |Total hip replacement prosthesis|
    260686004 |Method|
    257903006 |Repair - action|
    405813007 |Procedure site - Direct|
    182201002 |Entire hip joint|
    272741003 |Laterality|
    7771000 |Left|
    443682009 |Total replacement of right knee joint|
    272741003 |Laterality|
    7771000 |Left|
    413350009 |Finding with explicit context|
    246090004 |Associated finding|
    363358000 |Lung cancer|
    408729009 |Finding context|
    415684004 |Suspected|
    408732007 |Subject relationship context|
    410604004 |Subject of record|
    408731000 |Temporal context|
    410512000 |Current or specified time|
    254837009 |Breast cancer|
    408731000 |Temporal context|
    410513005 |Past|
    408732007 |Subject relationship context|
    72705000 |Mother|
    413350009 |Finding with explicit context|
    246090004 |Associated finding|
    254837009 |Breast cancer|
    408729009 |Finding context|
    410515003 |Known present|
    408732007 |Subject relationship context|
    72705000 |Mother|
    408731000 |Temporal context|
    410513005 |Past|

    Introduction

    Background

    SNOMED CT is a clinical terminology with a global scope covering a wide range of clinical specialties and requirements. Each concept in SNOMED CT represents a clinical idea to which a unique concept identifier has been assigned. Some concepts represent atomic, or simple, meanings, such as |Edema (finding)| , or |Foot structure (body structure)| , while other concepts represent more complex clinical meanings, such as |Atypical mycobacterial infection of lung (disorder)| , or |Positron emission tomography with computed tomography of heart (procedure)| . SNOMED CT concepts are also referred to as precoordinated concepts or precoordinated expression.

    Aside from the unique concepts, meanings can also be represented in SNOMED CT through postcoordinated expressions, which are structured combinations of two or more concept identifiers. The ability of SNOMED CT to support postcoordination is important because it enables a wide range of clinical meanings to be captured in a record, without requiring the terminology to include a separate concept for every detailed combination of ideas that may potentially need to be recorded. Thus, postcoordination greatly increases the depth of detail that SNOMED CT can represent, while avoiding a combinatorial explosion of precoordinated concepts. The SNOMED CT concept model provides the rules for the kinds of relationships that can be specified between particular types of concepts when creating postcoordinated expressions.

    Objective and Scope

    The objective of this guide is to provide a practical point of reference for the best practice principles for enabling postcoordination with SNOMED CT.

    The chapters of this guide aim to answer the following questions:

    • What characterizes a postcoordinated expression?

    • What are the use cases for postcoordination?

    • What are the prerequisites for enabling postcoordination?

    Status

    The guide is intended to provide an overview of the preliminary work done to facilitate the safe use of postcoordination with SNOMED CT within Electronic Health Records. It offers guidance on the best practices and considerations for implementing postcoordination effectively, and outlines potential risks and benefits associated with this approach. We encourage initiatives to follow the implementation approaches outlined in this guide on a trial basis to evaluate their effectiveness and suitability for your specific use case.

    The document is a dynamic resource, and it will continue to advance as implementation experience and maturity expand. Its content will be regularly updated to reflect the latest advancements and insights in the domain. Users are encouraged to utilize this guide as a source for continuous learning and enhancement of their use of SNOMED CT and postcoordination.

    Out of Scope

    This document presents the design and technical implementation of an expression repository and terminology services required when enabling postcoordination in an EHR. However, some areas are not included in the current version, as they are still under investigation and will be added in the future as knowledge and experience in this are increase.

    The does not offer detailed maintenance documentation for the expression repository, and implementing postcoordinated expressions in a production environment, therefore, requires careful analysis and establishment of required processes. The guide also lacks information on governance structures, work processes, and clinical validity beyond the rules specified in the Machine Readable Concept Model. Therefore, anyone attempting to support postcoordination in their EHR should follow the editorial guidelines to ensure logical consistency and clinical meaningfulness of meanings expressed through SNOMED CT.

    This guide is targeted towards SNOMED CT Members and Affiliates who are involved in the creation, implementation, and maintenance of postcoordinated expressions.

    • People involved in the design and development of SNOMED CT enabled solutions

      • This includes designers and developers of EHR systems, information models, data entry interfaces, storage systems, decision support systems, retrieval and analysis systems, communication standards, and terminology services

    This document presents a practical guide to postcoordination with SNOMED CT and is structured as follows:

    • This chapter explains the background, purpose, scope, audience and overview of the document

    • This chapter introduces SNOMED CT expressions, describing the syntax, structure and forms of expressions. It also outlines the benefits, challenges and considerations associated with the decision to support postcoordinated expressions

    • This chapter introduces the components included in the design of systems enabled to support postcoordination

    We invite SNOMED CT Members and Affiliates to try this initial version of the**** guide. It will be extended and enhanced following feedback. Please send any comments or questions to

    What approaches can be taken to enable postcordination in an Electronic Health Record?
  • What are the steps involved in the creation, implementation, and use of postcoordinated expressions?

  • What is required by a terminology server designed to support postcoordination?

  • Expressions in the EHR: This chapter introduces and exemplifies how expressions may be used within an Electronic Health Record to support key tasks including clinical data entry, storage, display, exchange and retrieval

  • Expressions in a Terminology Server: This chapter describes the requirements and design of a terminology server supporting postcoordination. It introduces various levels of implementations that have been specified to ensure the safe implementation of postcoordination, and it documents how the design can be met complying with RF2 or HL7 FHIR

  • Audience

    Document Overview

    Feedback

    Introduction:
    SNOMED CT Expressions:
    System Components:
    info@snomed.org.
    Provide Feedback

    Exchanging Expressions

    When expressions are used to record clinical data, it is important to establish effective ways of communicating these expressions with other systems.

    The main options for sharing postcoordinated expressions are:

    • To exchange the terse expression as the ‘code’ of the relevant field, with the displayed or auto-generated term.

      • For example, the HL7 version 3 CD data type (Release 2) allows the 'code' property to include SNOMED CT expressions (see HL7 TermInfo guide).

      • Within the coding also include a precoordinated concept, for systems that can not process expressions. This should be the proximal inferred parent concept of the expression.

      • This option is shown in the example below.

    • To decompose the expression into separate fields - one for a focus concept and then one for each of the attribute values in the expression.

      • In each field, the concept identifier may be used as the code, and one of the synonyms as the display text.

      • This approach assumes alignment between the message structure and the relevant parts of the SNOMED CT concept model.

    • To use an expression identifier from your expression repository as the ‘code’, with the display term.

      • This approach requires the use of a shared expression repository enabling the recipient system to look up and resolve this identified to the relevant expression.

    Example: A FHIR Resource including a postcoordinated expression

    Terminology services

    Enabling expressions to be included in communication messages requires:

    • Lookup Expression. This will be used to get either the CTU form of the expression or the expression identifier to be included as the code for the coded data element in the message

    • Get Display Term. This is required in cases where a single display term is required for the expression, and this approach is acceptable in the given setting.

    [code]
    {
    "resourceType": "Condition",
    "id": "f205",
    "text": {
    "status": "generated",
    "div": "<div xmlns="http://www.w3.org/1999/xhtml">..."
    },
    "clinicalStatus": {},
    "verificationStatus": {},
    "code": {
    "coding": [
    {
    "system": "http://snomed.info/sct",
    "code": "301354004 |Pain of ear| : 272741003 |Laterality| = 7771000 |Left|",
    "display": "Left ear pain"
    },
    {
    "system": "http://snomed.info/sct",
    "code": "301354004 |Pain of ear|",
    "display": "Pain of ear"
    }
      ]
    },
    "subject": {
    "reference": "Patient/f201",
    "display": "PP"
    },
    "recordedDate": "2013-04-04",
    "asserter": {
    "reference": "Practitioner/f201"
    }
    }
    [/code]

    More information about the Terminology Services requirements please see:

    Note that additional terminology services will be required to decompose expressions to enable the separation of values into specific fields of the message structure.

    Provide Feedback
    Terminology Services Requirements
    Appendix D: Concept Definition Illustrations