# Test Expression Subsumption

{% hint style="danger" %}
This page is a placeholder for an identified advanced service requirement for which a definitive set of detailed requirements are not yet available.

The detailed requirements are under discussion and this page will be updated based on the outcome of those discussions.
{% endhint %}

## Overview

An expression is a structured combination of one or more concept identifiers that represents an idea. Expressions can be used to represent concept definitions. They can also be used to represent meanings that are not currently represented by a concept in the current SNOMED CT release.

When 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 [Get and Test Concept Subtypes and Supertypes](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/4-terminology-service-types/4.5-get-and-test-concept-subtypes-and-supertypes) and [Validate and Apply Expression Constraints](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/4-terminology-service-types/4.7-validate-and-apply-expression-constraints). However, in this case the first step is to determine the meaning of the expression relative to existing defined concepts.

## Requirements and Options

The required services are listed in the table below.

**Services Required**

| Service Name and Status                                      | Input | Output |
| ------------------------------------------------------------ | ----- | ------ |
| <p>Test subsumption of an expression minimal<br>REQUIRED</p> |       |        |

## Interdependencies

### Required By

* Use Cases
  * [EHR Data Entry](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/3-terminology-service-use-cases/support-ehr-data-entry) (if entry of post-coordinated expressions is supported)
  * [EHR Reporting and Analytics](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/3-terminology-service-use-cases/ehr-reporting-and-analytics) (if stored data includes post-coordinated expressions)

### Depends On

* [Select Edition and Version](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/4-terminology-service-types/4.1-select-edition-and-version)
* [Get Definition of a Concept](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/4-terminology-service-types/4.4-get-definition-of-a-concept)
* [Get and Test Concept Subtypes and Supertypes](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/4-terminology-service-types/4.5-get-and-test-concept-subtypes-and-supertypes)
* [Validate and Apply Expression Constraints](https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/4-terminology-service-types/4.7-validate-and-apply-expression-constraints)

## Service Examples

{% hint style="success" %}
The Snowstorm and FHIR examples are presented in plain text and URL encoded versions. Always use the "Encoded URL" when testing the example service requests. The plain text version is included to aid readability but using this version in a service request may result in errors. These errors result from characters that have to be encoded as they are not permitted in a URL (see [IETF RFC1738](https://www.ietf.org/rfc/rfc1738.txt)).
{% endhint %}

#### **Snowstorm API**

| Service Name | API Call 2 | Result |
| ------------ | ---------- | ------ |
| ...          |            |        |
| ...          |            |        |

#### FHIR API (*to be added*)

| Service Name | API Call 3 | Result |
| ------------ | ---------- | ------ |
| ...          |            |        |
| ...          |            |        |

#### MySQL Example Database

| Service Name | SQL Query 4 | Result |
| ------------ | ----------- | ------ |
| ...          |             |        |

***

**Notes**

* Language and/or dialect should be specified if the service returns terms associated with referenced concepts.
* In the Snowstorm service requests \[snowstorm] should be replaced by the URL to the Snowstorm server endpoint.
* In the FHIR service requests \[fhir] should be replaced by the URL to the FHIR terminology server endpoint. FHIR® is a registered trademarks of [HL7](http://www.hl7.org/) ([www.hl7.org](http://www.hl7.org/)).
* The SNOMED CT MySQL example database is not designed as a terminology server and is not intended for use in a live system . It is referenced in this guide as an illustration that some readers may find helpful. For more information about the SNOMED CT example database see the [SNOMED CT - SQL Practical Guide](https://app.gitbook.com/o/h8Z6qGxuQrzM9vbx5bPT/s/LnTo62BQeQSW6tBNKv0T/). For instructions on how to build the example database refer to [Appendix A: Building the SNOMED CT Example Database](https://app.gitbook.com/s/LnTo62BQeQSW6tBNKv0T/appendix-a-building-the-snomed-ct-example-database).

<a href="https://docs.google.com/forms/d/e/1FAIpQLScTmbZIf0UEQwYDkY27EEWBkaiYkHSbR0_9DmFrMLXoQLyL7Q/viewform?usp=pp_url&#x26;entry.1767247133=SNOMED+Terminology+Services+Guide&#x26;entry.670899847=Test%20Expression%20Subsumption" class="button primary">Provide Feedback</a>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.snomed.org/snomed-ct-practical-guides/snomed-ct-terminology-services-guide/4-terminology-service-types/4.15-test-expression-subsumption.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
