Get Definition of a Concept
Overview
Each SNOMED CT concept has a concept definition.
A concept definition is a set of one or more axioms that partially or sufficiently specify the meaning of a SNOMED CT concept.
Requirements and Options
The table below describes several distinct types of access to concept definitions and the client application functionalities that each of these access types supports.
General purpose terminology services that are able to access subtype relationships relationships can be used to meet a limited set of SNOMED CT use cases. However, SNOMED CT terminology services should also provide access to the inferred view of concept definitions.
Advanced SNOMED CT terminology services require the ability to access and interpret the axioms that represent the stated view of concept definitions. They should also enable description logic classification either as a built in service or via an interface to separate classifier. Services that support classification provide added value for data retrieval and analysis by enabling post-coordinated expressions to be classified and appropriately located in the subtype hierarchy.
The required services listed in the table below omit services that only require access to subtype relationships, as these are described in Get and Test Concept Subtypes and Supertypes.
Practical Requirements for Access to Concept Definitions
Access to subtype relationships
- Concept identifier - Edition and version
- Set of conceptIds of all concepts with a direct subtype relationship to or from the specified concept. - Optionally, additional information such as the fully specified name or preferred term of each concept in the set.
Access to the transitive closure of subtype relationships
- Concept identifier - Edition and version
- Set of conceptIds of all concepts with a direct or transitive subtype relationship to or from the specified concept. - Optionally, additional information such as the fully specified name or preferred term of each concept in the set.
Access to the complete inferred view of concept definitions, including subtype relationships and attribute relationships
- Concept identifier - Edition and version
- Inferred definition of the specified concept represented as a compositional grammar expression or as a data object representing all active rows in the snapshot view of the relationship file. - Optionally, concept identifiers in the definition may be supplemented with the preferred term or fully specified name in a specified language or dialect.
Access to the complete stated view of concept definitions, as OWL axioms
- Concept identifier - Edition and version
- Stated definition of the concept represented as a set of one or more OWL axioms or as a SNOMED CT compositional grammar expression. - Optionally, concept identifiers in the definition may be supplemented with the preferred term or fully specified name in a specified language or dialect.
Services Required
Get inferred necessary normal form definition of a concept REQUIRED
- Edition and version - Concept identifier - Language/dialect (optional)
- Inferred definition of the specified concept as a SNOMED CT compositional grammar expression or as a data object representing all active rows in the snapshot view of the relationship file. - Optionally, concept identifiers in the definition may be supplemented with the preferred term or fully specified name in a specified language or dialect.
Get stated definition of a concept ADVANCED
- Edition and version - Concept identifier - Language/dialect (optional)
- Stated definition of the concept as a set of one or more OWL axioms or as a SNOMED CT compositional grammar expression. - Optionally, concept identifiers in the definition may be supplemented with the preferred term or fully specified name in a specified language or dialect.
Interdependencies
Required By
Depends On
Service Examples
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).
Snowstorm API
Get the inferred necessary normal form definition of a concept
GET [snowstorm]/[branch]/concepts/[conceptId]/normal-form?includeTerms=[true|false]
for example
GET [snowstorm]/MAIN/2020-01-31/concepts/6025007/normal-form?includeTerms=true
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/concepts/6025007/normal-form?includeTerms=true
or without including the terms
GET [snowstorm]/MAIN/2020-01-31/concepts/6025007/normal-form
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/concepts/6025007/normal-form
Returns a JSON data object containing a compositional grammar expression representing the inferred definition of the concept.
If the optional includeTerms parameter is set to true the expression includes the fully specified names of each concept referenced in the expression. Otherwise only the expression only includes the concept identifiers.
Get the stated definition of a concept
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=733073007&referencedComponentId=[conceptId]
for example
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=733073007&referencedComponentId=6025007
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=733073007&referencedComponentId=6025007
or as example of a concept defined by more than one axiom
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=733073007&referencedComponentId=473011001
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=733073007&referencedComponentId=473011001
This service returns a JSON representation of one or more members of in the OWL expression reference set that together represent the stated definition of the identified concept. Each of these reference set members contains an axiom, represented using OWL Functional Syntax, in the additionalFields.owlExpression property string.
FHIR API
Get the inferred necessary normal form definition of a concept
[fhir]/CodeSystem/$lookup?system=http://snomed.info/sct&code=[conceptId]&property=normalForm&_format=json
for example
GET [fhir]/CodeSystem/$lookup?system=http://snomed.info/sct&code=6025007&property=normalForm&_format=json
Returns a JSON representation of information containing the definition of the concept.
The data returned includes the necessary inferred, normal form definition of the concept represented as a compositional grammar expression.
Get the stated definition of a concept
N/A
This service is not supported by the FHIR terminology services API
MySQL Example Database
Get the inferred necessary normal form definition of a concept
-- Get inferred defining relationshipsSELECT
typeId,destinationId,groupFROM
snap_relationship WHERE
AND
active=1 AND
sourceId=[conceptId] AND
characteristicType=900000000000011006;
for example
-- Get inferred defining relationshipsSELECT
typeId,destinationId,groupFROM
snap_relationship WHERE
active=1 AND
characteristicType=900000000000011006 AND
sourceId=6025007;
or including terms
-- Get inferred defining relationships with termsSELECT CONCAT(typeId,"|",typeTerm,"|=", destinationId,"|",destinationTerm,"|") 'value', relationshipGroup 'group'FROM
snap_rel_def_fsn WHERE
sourceId=6025007;
Returns the set of rows each containing one defining relationship with its associated relationship group number.
-- Get inferred defining relationshipsSELECT
typeId,destinationId,groupFROM
snap_relationship WHERE
AND
active=1 AND
sourceId=[conceptId] AND
characteristicType=900000000000011006;
-- Get inferred defining relationshipsSELECT
typeId,destinationId,groupFROM
snap_relationship WHERE
active=1 AND
characteristicType=900000000000011006 AND
sourceId=6025007;
-- Get inferred defining relationships with termsSELECT CONCAT(typeId,"|",typeTerm,"|=", destinationId,"|",destinationTerm,"|") 'value', relationshipGroup 'group'FROM
snap_rel_def_fsn WHERE
sourceId=6025007;
Get the stated definition of a concept
-- Get stated defining axiomsSELECT
owlExpressionFROM
snap_refset_owlexpression WHERE
active=1 AND
refsetId=733073007 AND
referencedComponentId=[conceptId] ORDER
BY
owlExpression;
for example
-- Get stated defining axiomsSELECT
owlExpressionFROM
snap_refset_owlexpression WHERE
active=1 AND
refsetId=733073007 AND
referencedComponentId=6025007 ORDER
BY
owlExpression;
or as example of a concept defined by more than one axiom
-- Get stated defining axiomsSELECT
owlExpressionFROM
snap_refset_owlexpression WHERE
active=1 AND
refsetId=733073007 AND
referencedComponentId=473011001 ORDER
BY
owlExpression;
Returns the set of rows each containing one OWL axiom.
The sort order used in this query ensures that class axioms appear before any GCI axioms
-- Get stated defining axiomsSELECT
owlExpressionFROM
snap_refset_owlexpression WHERE
active=1 AND
refsetId=733073007 AND
referencedComponentId=[conceptId] ORDER
BY
owlExpression;
-- Get stated defining axiomsSELECT
owlExpressionFROM
snap_refset_owlexpression WHERE
active=1 AND
refsetId=733073007 AND
referencedComponentId=6025007 ORDER
BY
owlExpression;
-- Get stated defining axiomsSELECT
owlExpressionFROM
snap_refset_owlexpression WHERE
active=1 AND
refsetId=733073007 AND
referencedComponentId=473011001 ORDER
BY
owlExpression;
Last updated