This is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions
Terminology Infrastructure Work Group | Maturity Level: N | Normative | Compartments: N/A |
Test the subsumption relationship between code/Coding A and code/Coding B given the semantics of subsumption in the underlying code system (see hierarchyMeaning).
When invoking this operation, a client SHALL provide both A and B codes, either as code or Coding parameters. The system parameter is required unless the operation is invoked on an instance of a code system resource. Other parameters are optional.
The canonical URL for this operation definition is
http://hl7.org/fhir/OperationDefinition/CodeSystem-subsumes
Formal Definition (as a OperationDefinition).
URL: [base]/CodeSystem/$subsumes
URL: [base]/CodeSystem/[id]/$subsumes
This is an idempotent operation
In Parameters: | ||||||
Name | Scope | Cardinality | Type | Binding | Profile | Documentation |
codeA | 0..1 | code | The "A" code that is to be tested. If a code is provided, a system must be provided | |||
codeB | 0..1 | code | The "B" code that is to be tested. If a code is provided, a system must be provided | |||
system | type | 0..1 | uri | The code system in which subsumption testing is to be performed. This must be provided unless the operation is invoked on a code system instance | ||
version | type | 0..1 | string | The version of the code system, if one was provided in the source data | ||
codingA | 0..1 | Coding | The "A" Coding that is to be tested. The code system does not have to match the specified subsumption code system, but the relationships between the code systems must be well established | |||
codingB | 0..1 | Coding | The "B" Coding that is to be tested. The code system does not have to match the specified subsumption code system, but the relationships between the code systems must be well established | |||
Out Parameters: | ||||||
Name | Scope | Cardinality | Type | Binding | Profile | Documentation |
outcome | 1..1 | code | Concept Subsumption Outcome (Required) | The subsumption relationship between code/Coding "A" and code/Coding "B". There are 4 possible codes to be returned (equivalent, subsumes, subsumed-by, and not-subsumed) as defined in the concept-subsumption-outcome value set. If the server is unable to determine the relationship between the codes/Codings, then it returns an error response with an OperationOutcome. |
Request: Using simple parameters: is 'Viral hepatitis' (3738000) a 'Disorder of liver' (235856003)?
GET [base]/CodeSystem/$subsumes?system=http://snomed.info/sct&codeA=3738000&codeB=235856003
Request: Using Codings
POST [base]/CodeSystem/$subsumes [other headers] <Parameters xmlns="http://hl7.org/fhir"> <!-- Subsumption testing - use SNOMED CT rules --> <parameter> <name value="system"/> <valueUri value="http://snomed.info/sct"/> </parameter> <!-- Australian distribution --> <parameter> <name value="version"/> <valueString value="http://snomed.info/sct/32506021000036107/version/20160430"/> </parameter> <parameter> <name value="codingA"/> <valueCoding> <system value="http://snomed.info/sct"/> <code value="3738000"/> </valueCoding> </parameter> <parameter> <name value="codingB"/> <valueCoding> <system value="http://snomed.info/sct"/> <code value="235856003"/> </valueCoding> </parameter> </Parameters>
Response: When the request can be processed ok
HTTP/1.1 200 OK [other headers] { "resourceType" : "Parameters", "parameter" : [ { "name" : "outcome", "valueCode" : "subsumed-by" } }
Response: When the subsumption cannot be tested
HTTP/1.1 500 Error [other headers] { "resourceType": "OperationOutcome", "id": "exception", "text": { "status": "additional", "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Version "XXX" for http://acme.com/fhir/CodeSystem/some-id is no longer available</div>" }, "issue": [ { "severity": "error", "code": "not-supported", "details": { "text": "Version "XXX" for http://acme.com/fhir/CodeSystem/some-id is no longer available" } } ] }
For more information about operations, including how they are invoked, see Operations.