The simplest type of expression constraint contains a single concept optionally preceded by an expression constraint operator and/or membership function. Expression constraint operators (e.g. descendant of) traverse the hierarchical relationships in SNOMED CT to return the set of concepts that are directly or transitively connected to the focus concept. Membership functions return the set of concepts referenced by a reference set.

In this section we consider some of these simple examples.

# Self

If no expression constraint operator or membership function is applied, the expression constraint is satisfied only by the specified concept. For example, the expression constraint below is satisfied only by the concept 404684003 | Clinical finding| .

Please note that this expression constraint is equivalent to an expression that looks the same but is written in SNOMED CT Compositional Grammar.# Descendant of

A single 'less than' sign (i.e. "<") indicates that the expression constraint is satisfied by all descendants of the specified concept. The expression constraint below evaluates to the set of all subtypes (both direct children and transitive subtypes) of 404684003 | Clinical finding| , using the brief syntax.

Using the long syntax, the above expression constraint may be represented as:# Descendant or Self of

Two consecutive 'less than' signs (i.e. "<<") indicates that the expression constraint is satisfied by all descendants of the specified concept plus the specified concept itself. The expression constraint below evaluates to the set of descendants of 73211009 | Diabetes mellitus| , plus the concept 73211009 | Diabetes mellitus| itself.

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

A 'less than' sign directly followed by an exclamation mark (i.e. "<!") indicates that the expression constraint is satisfied by the set of proximal children of the specified concept. The children of a concept are those concepts that are the source of a non-redundant 116680003 | is a| relationship whose target is the given concept. The expression constraint below, represented using the brief syntax, evaluates to the set of immediate children of the concept 404684003 | Clinical finding| .

Using the long syntax, the above expression constraint may be represented as:# Child or Self of

Two consecutive 'less than' signs directly followed by an exclamation mark (i.e. "<<!") indicates that the expression constraint is satisfied by the set of proximal children of the specified concept plus the specified concept itself. The children of a concept are those concepts that are the source of a non-redundant 116680003 | is a| relationship whose target is the given concept. The expression constraint below, represented using the brief syntax, evaluates to the set of immediate children of the concept 404684003 | Clinical finding| , plus the concept 404684003 | Clinical finding| itself.

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

A single 'greater than' sign (i.e. ">") indicates that the expression constraint is satisfied by all ancestors of the specified concept. The expression constraint below, using the brief syntax, evaluates to the set of all supertypes (both direct parents and transitive supertypes) of 40541001 | Acute pulmonary edema| :

Using the long syntax, the above expression constraint may be represented as:# Ancestor or Self of

Two consecutive 'greater than' signs (i.e. ">>") indicates that the expression constraint is satisfied by all ancestors of the specified concept plus the specified concept itself. The expression constraint below evaluates to the set of ancestors of 40541001 | Acute pulmonary edema| , plus the concept 40541001 | Acute pulmonary edema| .

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

A 'greater than' sign directly followed by an exclamation mark (i.e. ">!") indicates that the expression constraint is satisfied by the set of proximal parents of the specified concept. The parents of a concept are those concepts that are the target of a non-redundant | is a| relationship whose source is the given concept. The expression constraint below, represented using the brief syntax, evaluates to the set of immediate parents of the concept 40541001 | Acute pulmonary edema| .

Using the long syntax, the above expression constraint may be represented as:# Parent or Self of

Two consecutive 'greater than' signs directly followed by an exclamation mark (i.e. ">>!") indicates that the expression constraint is satisfied by the set of proximal parents of the specified concept plus the specified concept itself. The parents of a concept are those concepts that are the target of a non-redundant | is a| relationship whose source is the given concept. The expression constraint below, represented using the brief syntax, evaluates to the set of immediate parents of the concept 40541001 | Acute pulmonary edema| , plus the concept 40541001 | Acute pulmonary edema| itself.

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

The memberOf function (by default) evaluates to the set of concepts that are referenced by the given reference set (i.e. the set of referencedComponentIds). Please note that this function may be applied only to reference sets whose referenced components are concepts. The SNOMED CT Expression Constraint Language does not support use of the memberOf function on reference sets whose referencedComponents are not concepts (i.e. descriptions or relationships).

The memberOf function is represented in the brief syntax using a 'caret' character (i.e. "^") and is usually followed by a single concept id for a concept-based reference set. For example, the following expression constraint is satisfied by the set of concepts which are members of 700043003 | Example problem list concepts reference set| :

Using the long syntax the expression constraint is represented as: The expression constraints above both return the values in the referencedComponentId field of the given reference sets. However, it is also possible to specify one or more fields, whose values will be returned, by including the relevant field names is square brackets after the memberOf operator ("^" or "memberOf"). For example, the following expression constraint is equivalent to the brief syntax example above.^{1 }. For example, the following expression constraint will return the targetComponentId values (i.e. the 'Entire' anatomy concepts) from the 734138000 | Anatomy structure and entire association reference set| .

^{2 }

^{3 }

^{4 }For example, to return both the source and target of the 816210007 | SNOMED CT to MedDRA simple map reference set| , the following expression constraint could be used:

Please note that it is also possible to apply the memberOf function to an expression constraint that returns a set of concept-based reference set concepts. For more information, please refer to 6.7 Nested Expression Constraints.

And for information about applying filter constraints to reference set members, please refer to 6.10 Member Filters.

# Any

A single 'star' (i.e. "*") may be used in the place of a concept reference to represent any concept in the substrate. The expression constraint below evaluates to the set of all concepts in the given substrate.

Please note that the following three expression constraints evaluate to the same set of concepts:

Ref | Notes |
---|---|

1 |
Note: If a reference set field is selected that does not exist in any of the identified reference sets, then the expression constraint should be considered erroneous. |

2 |
Note: Returning the values of more than one reference set field may only be done as the final operation of an expression constraint. |

3 |
Note: Attempts to select more than one reference set field on an inner subquery should result in an execution error. |

4 |
Note: In some implementation contexts, the memberOf function may be restricted to return only a single field. |

Feedback