#### SNOMED Documentation Search

Other Documents

Exclusion is supported in the SNOMED CT Expression Constraint Language by the binary operator 'MINUS'. Exclusion works in a similar manner to mathematical subtraction. For example, the following expression constraint returns the set of lung disorders which are not a descendant or self of edema of the trunk.

Logically, this expression constraint takes the set of descendants of 'disorder of lung' and subtracts the set of descendants of 'edema of trunk'. Please note that the keyword 'MINUS' is case insensitive.

Exclusion can also be applied to the membership of a reference set. For example, the following expression constraint returns the set of lung disorders which are not members of the cardiology reference set. That is, the set of descendants or self of 'disorder of lung' minus the set of members of the 'cardiology reference set'.

Please note that when more than one exclusion operator is used, or when an exclusion operator is used together with a conjunction or disjunction, round brackets must be used to disambiguate the intended meaning.

Attribute values, represented by compound expression constraints, may also contain exclusions. When this occurs, the expression constraint is satisfied by any concept or expression which has at least one attribute (of the given type) whose value is satisfied by the compound constraint defined in the attribute value. For example, the expression constraint below represents the set of clinical findings, which have an associated morphology that is a descendant or self of ulcer and a descendant or self of hemorrhage, but not a descendant or self of obstruction.

<
404684003 |Clinical finding|
:
116676008 |Associated morphology|
=

((<< 56208002 |Ulcer| AND << 50960005 |Hemorrhage| ) MINUS << 26036001 |Obstruction| )

((<< 56208002 |Ulcer| AND << 50960005 |Hemorrhage| ) MINUS << 26036001 |Obstruction| )

It is also possible to simply state that an attribute value should not fall in a particular range. The example below is satisfied only by clinical findings which have an associated morphology that is not a descendant (or self) of obstruction.

Using the long syntax, this expression constraint can be represented as:

descendantOf
404684003 |Clinical finding|
:

116676008 |Associated morphology| NOT = descendantOrSelfOf 26036001 |Obstruction|

To prohibit an attribute from having a value in a particular range, a cardinality
of [0..0] must be used. For example, the following expression constraint represents
the set of clinical findings which have exactly zero (i.e. they do not have any) associated
morphologies that are a descendant or self of obstruction.
116676008 |Associated morphology| NOT = descendantOrSelfOf 26036001 |Obstruction|

<
404684003 |Clinical finding|
:

[0..0] 116676008 |Associated morphology| = << 26036001 |Obstruction|

To prohibit an attribute from having a value [0..0] 116676008 |Associated morphology| = << 26036001 |Obstruction|

<
404684003 |Clinical finding|
:

[0..0] 116676008 |Associated morphology| != << 26036001 |Obstruction|

If we also want to ensure that at least one associated morphology does exist (and
all of these have a value which is a descendant or self of obstruction), then the
following expression constraint can be used:
[0..0] 116676008 |Associated morphology| != << 26036001 |Obstruction|

<
404684003 |Clinical finding|
:

[0..0] 116676008 |Associated morphology| != << 26036001 |Obstruction| and

[1..*] 116676008 |Associated morphology| = << 26036001 |Obstruction|

Note that the cardinality on the second attribute may be omitted, as [1..*] is assumed
by default.
[0..0] 116676008 |Associated morphology| != << 26036001 |Obstruction| and

[1..*] 116676008 |Associated morphology| = << 26036001 |Obstruction|

Feedback

Overview

Content Tools

Apps