# Page History

## Key

• This line was removed.
• Formatting was changed.

In this section we illustrate how a set of concepts can be filtered, using the top or bottom operators, to find the concepts that are the highest or lowest in the hierarchy within the set.

# Top of set

Two consecutive exclamation marks followed by a 'greater than' sign (i.e. "!!>") indicates that the expression constraint is satisfied by the concepts from the results of the subexpression that have the highest position in the hierarchy, relative to one another. In other words the set of concepts, that is the result of the subexpression, will be filtered by concepts that have no ancestors within that set.

For example the following expression constraint represents the highest, or most general, concepts in the hierarchy within the set of

Concept
t 363698007 |Finding sites|
from the subtypes of
Concept
t 386617003 |Digestive system finding|
.

Scg expression
Border ridge block
`	!!> ( < 386617003 |Digestive system finding| . 363698007 |Finding site| )`

Using the long syntax, the above expression constraint may be represented as:

Scg expression
Border ridge block
`	top ( < 386617003 |Digestive system finding| . 363698007 |Finding site| )`

An equivalent expression constraint without using the top operator can be written:

Scg expression
Border ridge block
```	( < 386617003 |Digestive system finding| . 363698007 |Finding site| )
MINUS < ( < 386617003 |Digestive system finding| . 363698007 |Finding site| )```

# Bottom of set

Two consecutive exclamation marks followed by a 'less than' sign (i.e. "!!<") indicates that the expression constraint is satisfied by all concepts from the results of the subexpression that have the lowest position in the hierarchy, relative to one another. In other words the set of concepts, that is the result of the subexpression, will be filtered by concepts that have no descendants within that set.

For example, the following expression constraint represents the lowest, or most specific, concepts in the hierarchy within the set of concepts that are both ancestor-and-self of

Concept
t 427089005 |Diabetes mellitus due to cystic fibrosis|
and also within the
Concept
t 816080008 |International Patient Summary|
reference set:

Scg expression
Border ridge block
`	!!< ( >> 427089005 |Diabetes mellitus due to cystic fibrosis| AND ^ 816080008 |International Patient Summary| )`

Using the long syntax, the above expression constraint may be represented as:

Scg expression
Border ridge block
`	bottom ( >> 427089005 |Diabetes mellitus due to cystic fibrosis| AND ^ 816080008 |International Patient Summary| ) `

An equivalent expression constraint without using the bottom operator would be:

Scg expression
Border ridge block
```	( >> 427089005 |Diabetes mellitus due to cystic fibrosis| AND ^ 816080008 |International Patient Summary| )
MINUS > ( >> 427089005 |Diabetes mellitus due to cystic fibrosis| AND ^ 816080008 |International Patient Summary| )```

# Use Case Examples

Here are use cases that illustrate how the top and bottom operators may be used in practice:

## Use Cases for Bottom

Not all clinical information systems use the same set of SNOMED CT concepts, for various reasons; many countries use their own national editions, countries without a national license may use a SNOMED CT freeset, national guidelines may dictate information model bindings that constrain the set of concepts used.

There are scenarios where it may be necessary to transform clinical records from one information system to another. For example a cross-border research project. If the source system has a broader or different set of concepts than the target system can use then a common strategy is to walk up the hierarchy to find the first common ancestor that is shared by both systems.

One example is development and use of value sets for cross-border sharing, as in MyHealth@EU, where not all participants have a SNOMED CT Affiliate License. The countries who are a member would like to use and share full-SNOMED value sets whereas non-members should only use concepts from the SNOMED CT freeset.

Another example is the NHS Emergency Care Data Set. This is a collection of UK nationally defined subsets for use in a specific context. The bottom operator could be used to transform a specific concept like

Concept
t 45133009 |Neurotoxic shellfish poisoning|
into a less specific concept that is within the
Concept
t 991411000000109 |Emergency care diagnosis simple reference set|
:

Scg expression
Border ridge block
`	!!< ( >> 45133009 |Neurotoxic shellfish poisoning| AND ^ 991411000000109 |Emergency care diagnosis simple reference set| )`

This would result in the set of concepts:

Concept
t 118940003 |Disorder of nervous system|
and
Concept
t 75258004 |Food poisoning|
.

Display Footnotes Macro