Implementation Guide
23.1.0 - R4 APIs

Publish Box goes here

Operation: conceptmap-translate

Translate a code from one value set to another, based on the existing value set and concept maps resources, and/or other additional knowledge available to the server.

One (and only one) of the in parameters (code, coding, codeableConcept) must be provided, to identify the code that is to be translated.

The operation returns a set of parameters including a 'result' for whether there is an acceptable match, and a list of possible matches. Note that the list of matches may include notes of codes for which mapping is specifically excluded, so implementers have to check the match.equivalence for each match

GET [base]/ConceptMap/$translate
GET [base]/ConceptMap/[id]/$translate

Where:

Use Name Cardinality Type Binding Documentation
IN code 0..1 code The code that is to be translated. If a code is provided, a system must be provided
IN system 1..1 uri The system of the code that is to be translated.
IN targetcode 0..1 code The target code that is to be translated to. If a code is provided, a targetsystem must be provided. This allows "reverse" lookup of translations.
IN targetsystem 0..1 uri The target system for the code that is to be translated from/to.
IN dependency 0..* Another element that may help produce the correct mapping
IN dependency.element 0..1 uri The element for this dependency
IN dependency.concept 0..1 CodeableConcept The value for this dependency
OUT result 1..1 boolean True if the concept could be translated successfully. The value can only be true if at least one returned match has an equivalence which is not unmatched or disjoint
OUT message 0..1 string Error details, for display to a human. If this is provided when result = true, the message carries hints and warnings (e.g. a note that the matches could be improved by providing additional detail)
OUT match 0..* A concept in the target value set with an equivalence. Note that there may be multiple matches of equal or differing equivalence, and the matches may include equivalence values that mean that there is no match
OUT match.equivalence 0..1 code A code indicating the equivalence of the translation, using values from [ConceptMapEquivalence]{concept-map-equivalence.html}
OUT match.concept 0..1 coding The translation outcome. Note that this would never have userSelected = true, since the process of translations implies that the user is not selecting the code (and only the client could know differently)
OUT dependency 0..* Dependencies for this target (replicates input)
OUT dependency.element 0..1 uri The element for this dependency
OUT dependency.concept 0..1 Coding The value for this dependency