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
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
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.
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.
For more details on the Machine Readable Concept Model, please see .
Implementation Advice
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
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 to be qualified using . 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 attribute that is part of the NNF for the same focus concept, , 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 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.
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:
Refining Existing Attribute
Adding a Self-grouped Attribute
Adding Severity to Clinical Findings
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:
Copy the defining properties and role groups of the focus concept (as present in the NNF) to the classifiable form expression
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:
Copy the defining properties and role groups of the focus concept (as present in the NNF) to the classifiable form expression
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
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, anddoes 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