Get Mapping Data
Overview
Mapping is the process of converting data from one code system, classification, or terminology to another code system, classification, or terminology.
Notes
The mapping process includes the preparation and maintenance of resources used for converting data.
SNOMED CT mapping resources are distributed as mapping reference sets.
The SNOMED CT reference set design provides a common foundation on which mapping resources that meet different requirements can be built. The guidance in this section relates to the general approaches to accessing data in a mapping reference set. The table below provides reference to specific mapping reference set types and supporting documentation related to the use of those reference sets.
Map Reference Sets and Documentation
Simple map
Supports one to one maps to or from another code system
Simple Map Reference Set
ICD classification maps
Supports maps from SNOMED CT to ICD-10 classifications. Enables mapping to different codes based on rules and priorities. Also allows maps from a single code to combinations of codes.
Complex and Extended Map from SNOMED CT Reference Sets
Maps including additional data to represent attribute-value combinations, correlation and source of original code
Supports maps where some codes in the other code system represent a combination of and attribute with a value (e.g. finding site appendix). Also supports maps where the correlation between source and target needs to be specified and where there are intellectual property reasons for recording that either the SNOMED CT or other code were the original representations of the mapped meaning.
Map to SNOMED CT with Correlation and Origin Reference Set
Maps to SNOMED CT expressions
Supports maps from another code systems where the use of a SNOMED CT expression may capture the meaning of that code more accurately than can be achieved with a single concept.
Code to Expression Reference Set
Requirements and Options
Terminology services should be able to provide access to sets of maps based either on the SNOMED CT concept or a code from the other code system.
The concept involved in the map is represented by the referencedComponentId. As noted in Get Data from a Reference Set, access to reference set data using a combination of refsetId and referencedComponentId is a general requirement.
The other code is generally in a column referred to as mapTarget1. Support for access to maps using a combination of refsetId and mapTarget is therefore also required.
The required services are listed in the table below. Additional requirements should be considered for cases where the map refers to an expression rather than a single concept.
The services described in this section are limited to accessing the relevant map data. In simple cases, this may be sufficient to enable mapping. However, in other cases the services will provide client applications with options to display to the user and/or processable rules to be tested against other data to determine the appropriate map.
Required Services
Get maps based on combinations of refsetId and referencedComponentId
Identifier of concept to be mapped to target scheme
Edition and version Reference set identifier
Optional: Language/dialect2
All map data associated with maps in the specified reference set in which the referencedComponentId matches the specified concept identifier.
Get maps based on combinations of refsetId and mapTarget
Other code to be mapped to SNOMED CT.
Edition and version
Reference set identifier
Optional: Language/dialect2
All map data associated with maps in the specified reference set in which the mapTarget matches the specified other code.
Get maps based on combinations of refsetId,referencedComponentIdand mapTarget
Identifier of concept
Other code
Edition and version
Reference set identifier
Optional: Language/dialect2
All map data associated with maps in the specified reference set in which the referencedComponentId matches the specified concept identifier and the mapTarget matches the other code.
Interdependencies
Required By
Depends On
Service Examples
Snowstorm API
Get maps based on combinations of refsetId and referencedComponentId
GET [snowstorm]/[branchPath]/members?referenceSet=[refsetid]&referencedComponentId=[conceptId]&active=true
Example 1. ICD-O Map for 1338007 | Basal cell carcinoma (morphologic abnormality)|
GET [snowstorm]/MAIN/2020-01-31/members?referenceSet=446608001&referencedComponentId=1338007&active=true
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=446608001&referencedComponentId=1338007&active=true
Example 2. ICD-10 Map for 74400008 | Appendicitis|
GET [snowstorm]/MAIN/2020-01-31/members?referenceSet=447562003&referencedComponentId=74400008&active=true
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=447562003&referencedComponentId=74400008&active=true
Example 3. ICD-10 Map for 196607008 | Esophageal ulcer due to aspirin|
GET [snowstorm]/MAIN/2020-01-31/members?referenceSet=447562003&referencedComponentId=196607008&active=true
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=447562003&referencedComponentId=196607008&active=true
Example 4. ICD-10 Map for 32398004 | Bronchitis|
GET [snowstorm]/MAIN/2020-01-31/members?referenceSet=447562003&referencedComponentId=32398004&active=true
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=447562003&referencedComponentId=32398004&active=true
Example 5. ICD-10 Map for 111613008 | Closed skull fracture with intracranial injury|
GET [snowstorm]/MAIN/2020-01-31/members?referenceSet=447562003&referencedComponentId=111613008&active=true
Returns a JSON representation of the data in active rows in the specified mapping reference set with a referencedComponentId that matches the specified conceptId.
The examples illustrate the following points Example 1. A concept that maps to a single ICD-O code in a simple map refset. Example 2. A concept that maps to a single ICD-10 classification code in a complex/extended map refset. Example 3. A concept that maps to a combination of two classification codes (there are two map groups and each contains a single map row with priority 1) Example 4. A concept that has a single map group containing two rows. The row with priority 1 has a rule that requires the patient age to be less than or equal to 15 years. If that rule is not matched the row with map priority 2 applies as it contains the rule "OTHERWISE". Example 5. A concept that, like example 2, contains two map groups. However, in the case it each of those maps also include specific human readable advice "... MAPPED FOLLOWING WHO GUIDANCE | POSSIBLE REQUIREMENT FOR AN EXTERNAL CAUSE CODE"
The data returned for each refset member of an extended map (e.g. as used in examples 2-5) includes the following mapping data as subproperties of the additionalFields property:
Property
Description
mapGroup
An integer grouping a set of maps. One map should be chosen from each group.
mapPriority
The order in which map within a group should be checked.
mapRule
A machine-readable rule, that determines if a map applies.
mapAdvice
Advice to assist manual selection map from a group.
mapTarget
The target code from the other coding scheme (if this map is chosen based on the rule or advice).
correlationId
|Representing the correlation between the concept and the target code.
mapCategoryId
Represents the map category that applies to this map.
Get maps based on combinations of refsetId and mapTarget
GET [snowstorm]/[branchPath]/members?referenceSet=[refsetid]&mapTarget=[otherCode]&active=true
Example 6. Map from ICD-O code "8090/3" to SNOMED CT concepts
GET [snowstorm]/MAIN/2020-01-31/members?referenceSet=446608001&mapTarget=8090/3&active=true
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=446608001&mapTarget=8090%2F3&active=true
Example 7. Maps from NHS Clinical Terms to a SNOMED CT concept
GET [snowstorm]/MAIN/2020-01-31/members?referenceSet=900000000000497000&mapTarget=Xa9C4&active=true
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=900000000000497000&mapTarget=Xa9C4&active=true
Returns a JSON representation of the data in active rows in the specified mapping reference set with a mapTarget that matches the specified otherCode. This returns the same data as noted above.
Example 6. Reverses the map shown in example 1. In this case it returns records showing several concepts that map to the this ICD-O code. As these are simple map with no rules, this result indicates that all these concepts map to the same less specific ICD-O code.
Example 7 . Maps from NHS CTV3 codes (previously used in the UK) to SNOMED CT concepts. In this case the map returns a single map from any specified CTV3 code to the closes matching SNOMED CT concept.
Warning
The ICD-10 map is a unidirectional map from SNOMED CT concept to ICD-10 codes. The mapGroup, mapPriority, mapRule, mapAdvice and mapCategoryId properties of complex and extended apply to the set of maps from a SNOMED CT concept to a mapTarget. These rules cannot be interpreted if maps are accessed for specified targetCode. Therefore, this service should not be used to access maps of this type.
Get maps based on combinations of refsetId, referencedComponentId and mapTarget
GET [snowstorm]/[branchPath]/members?referenceSet=[refsetid]&referencedComponentId=[conceptId]&mapTarget=[otherCode]&active=true
Example 8. Finds any maps from 111613008 | Closed skull fracture with intracranial injury| to ICD-10 code S06.90
GET [snowstorm]/MAIN/2020-01-31/members?referenceSet=447562003&referencedComponentId=111613008&mapTarget=S06.90&active=true
Encoded URL
GET [snowstorm]/MAIN%2F2020-01-31/members?referenceSet=447562003&referencedComponentId=111613008&mapTarget=S06.90&active=true
Returns a JSON representation of the data in active rows in the specified mapping reference set with a referencedComponentId that matches the specified conceptId and a mapTarget that matches the specified code from the other code system.
Example 8 . Could be used either or both of the following:
Test if there is a map between the SNOMED CT concept "Closed skull fracture with intracranial injury" and the ICD-10 code S06.9 "Unspecified intracranial injury".
Provide access to the associated mapping rule, advice and correlation data for any maps between these two codes.
FHIR API
Get maps based on combinations of refsetId and referencedComponentId
GET [fhir]/ConceptMap/$translate?code=[componentId] &system=http://snomed.info/sct&source=[sourceCodeSystem]?fhir_vs&target=[sourceCodeSystem]&url=[version]?fhir_cm=[refesetId]
Example 1. ICD-O Map for 1338007 | Basal cell carcinoma (morphologic abnormality)|
GET [fhir]/ConceptMap/$translate?code=1338007&system=http://snomed.info/sct &source=http://snomed.info/sct?fhir_vs &target=http://snomed.info/sct?fhir_vs &url=http://snomed.info/sct/900000000000207008/version/20200131?fhir_cm=446608001
Encoded URL
GET [fhir]/ConceptMap/$translate?code=1338007&system=http%3A%2F%2Fsnomed.info%2Fsct+&source=http%3A%2F%2Fsnomed.info%2Fsct%3Ffhir_vs+&target=http%3A%2F%2Fsnomed.info%2Fsct%3Ffhir_vs+&url=http%3A%2F%2Fsnomed.info%2Fsct%2F900000000000207008%2Fversion%2F20200131%3Ffhir_cm%3D446608001%0A
Example 2. ICD-10 Map for 74400008 | Appendicitis|
GET [fhir]/ConceptMap/$translate?code=74400008&system=http://snomed.info/sct&source=http://snomed.info/sct?fhir_vs &target=http://hl7.org/fhir/sid/icd-10&url=http://snomed.info/sct/900000000000207008/version/20200131?fhir_cm=447562003
Encoded URL
GET [fhir]/ConceptMap/$translate?code=74400008&system=http://snomed.info/sct&source=http://snomed.info/sct?fhir_vs &target=http://hl7.org/fhir/sid/icd-10&url=http://snomed.info/sct/900000000000207008/version/20200131?fhir_cm=447562003
Example 3. ICD-10 Map for 196607008 | Esophageal ulcer due to aspirin|
GET [fhir]/ConceptMap/$translate?code=196607008&system=http://snomed.info/sct&source=http://snomed.info/sct?fhir_vs &target=http://hl7.org/fhir/sid/icd-10&url=http://snomed.info/sct/900000000000207008/version/20200131?fhir_cm=447562003
Encoded URL
GET [fhir]/ConceptMap/$translate?code=196607008&system=http%3A%2F%2Fsnomed.info%2Fsct&source=http%3A%2F%2Fsnomed.info%2Fsct%3Ffhir_vs+&target=http%3A%2F%2Fhl7.org%2Ffhir%2Fsid%2Ficd-10&url=http%3A%2F%2Fsnomed.info%2Fsct%2F900000000000207008%2Fversion%2F20200131%3Ffhir_cm%3D447562003
Example 4. ICD-10 Map for 32398004 | Bronchitis|
GET [fhir]/ConceptMap/$translate?code=32398004&system=http://snomed.info/sct&source=http://snomed.info/sct?fhir_vs &target=http://hl7.org/fhir/sid/icd-10&url=http://snomed.info/sct/900000000000207008/version/20200131?fhir_cm=447562003
Encoded URL
GET [fhir]/ConceptMap/$translate?code=32398004&system=http%3A%2F%2Fsnomed.info%2Fsct&source=http%3A%2F%2Fsnomed.info%2Fsct%3Ffhir_vs+&target=http%3A%2F%2Fhl7.org%2Ffhir%2Fsid%2Ficd-10&url=http%3A%2F%2Fsnomed.info%2Fsct%2F900000000000207008%2Fversion%2F20200131%3Ffhir_cm%3D447562003
Returns a JSON representation of data about each of the target components.
The data returned for each concept includes:
boolean: True if the concept could be translated successfully. The value can only be true if at least one returned match
match: Each match represents data for the map or associated target. Note that there may be multiple matches, where each element represents a mapTarget. For each mapTarget, following data is provided
system: the codesystem of the mapTarget
code: The identifier of the mapTarget
Request response
Be aware that the FHIR TS API only provides information about the mapTarget. However, no additional map data represented in the map reference set is provided. This service is therefore sufficient to represent simple maps, but data required to interpret complex maps is not made available.
Example 1. A concept that maps to a single ICD-O code in a simple map refset.
Example 2. A concept that maps to a single ICD-10 classification code in a complex/extended map refset.
Example 3. A concept that maps to a combination of two classification codes (there are two map groups and each contains a single map row with priority 1)
Example 4. A concept that has a single map group containing two rows. For this map, a rule will determine which target should be chosen. Please note that the response does not show the rules as they are stated in the map reference set.
Get maps based on combinations of refsetId and mapTarget
N/A
The FHIR TS API does not support retrieval of map data based on a specific mapTarget
MySQL Example Database
Get maps based on combinations of refsetId and referencedComponentId
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=[refsetId] AND referencedComponentId=[conceptId];
Example 1. ICD-O Map for 1338007 | Basal cell carcinoma (morphologic abnormality)|
SELECT * FROM snap_refset_simplemap WHERE active=1 AND refsetId=446608001 AND referencedComponentId=1338007
Example 2. ICD-10 Map for 74400008 | Appendicitis|
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=447562003 AND referencedComponentId=74400008
Example 3. ICD-10 Map for 196607008 | Esophageal ulcer due to aspirin|
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=447562003 AND referencedComponentId=196607008
Example 4. ICD-10 Map for 32398004 | Bronchitis|
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=447562003 AND referencedComponentId=32398004;
Example 5. ICD-10 Map for 111613008 | Closed skull fracture with intracranial injury|
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=447562003 AND referencedComponentId=111613008;
Alternative approach using a stored procedure. This does not require the specific map reference set type to be identified.
-- Alternative that also shows the terms associated-- with identifiers in the map records
CALL snap_members([refsetId],[conceptId]);
Returns rows of data from the specified mapping reference set with a referencedComponentId that matches the specified conceptId.
Get maps based on combinations of refsetId and mapTarget
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=[refsetId] AND mapTarget=[otherCode];
Example 6. Map from ICD-O code "8090/3" to SNOMED CT concepts
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=446608001 AND mapTarget="8090/3";
Example 7. Maps from NHS Clinical Terms to a SNOMED CT concept
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=900000000000497000 AND mapTarget="Xa9C4";
Returns rows of data from the specified mapping reference set with a mapTarget that matches the specified code in the other code system.
Get maps based on combinations of refsetId, referencedComponentId and mapTarget
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=[refsetId] AND referencedComponentId=[conceptId] AND mapTarget=[otherCode]
Example 8. Finds any maps from 111613008 | Closed skull fracture with intracranial injury| to ICD-10 code S06.90
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=447562003 AND referencedComponentId=111613008 AND mapTarget="S06.90"
Example 9. Finds any maps from 111613008 | Closed skull fracture with intracranial injury| to ICD-10 codes in the S06 chapter
SELECT * FROM snap_refset_extendedmap WHERE active=1 AND refsetId=447562003 AND referencedComponentId=111613008 AND mapTarget like "S06.%"
Returns rows of data from the specified mapping reference set with a referencedComponentId that matches the specified conceptId and a mapTarget that matches the specified code in the other code system.
Example 9. provides an additional option, which may be useful code systems such as ICD-10 in which part of the code represents represent chapters or subdivision. It allows a search for a map from a concept to any code in a specified chapter.
Last updated