This
page
is
part
of
the
FHIR
Specification
(v1.0.2:
DSTU
(v3.0.2:
STU
2).
3).
The
current
version
which
supercedes
this
version
is
5.0.0
.
For
a
full
list
of
available
versions,
see
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
R2
R3
R2
Vocabulary
Work
Group
| Maturity Level : 3 | Trial Use | Compartments : Not linked to any defined compartments |
This resource has 2 operations associated with it:
| $translate | Concept Translation |
| $closure | Closure Table Maintenance |
For more information about operations, including how they are invoked, see Operations .
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
The official URL for this operation definition is
http://hl7.org/fhir/OperationDefinition/ConceptMap-translate
Formal Definition (as a OperationDefinition ).
URL: [base]/ConceptMap/$translate
URL: [base]/ConceptMap/[id]/$translate
This is an idempotent operation
| In Parameters: | |||||
| Name | Cardinality | Type | Binding | Profile | Documentation |
| code | 0..1 | code |
The code that is to be translated. If a code is provided, a system must be provided |
||
| system | 0..1 | uri |
The system for the code that is to be translated |
||
| version | 0..1 | string |
The version of the system, if one was provided in the source data |
||
|
|
0..1 | uri |
Identifies
the
value
set
used
when
the
concept
(system/code
pair)
was
chosen.
May
be
a
logical
id,
or
an
absolute
or
relative
|
||
| coding | 0..1 | Coding |
A coding to translate |
||
| codeableConcept | 0..1 | CodeableConcept |
A full codeableConcept to validate. The server can translate any of the coding values (e.g. existing translations) as it chooses |
||
| target |
|
uri |
Identifies
the
value
set
in
which
a
translation
is
sought.
May
be
a
logical
id,
or
an
absolute
or
relative
| ||
| targetsystem | 0..1 | uri | identifies a target code system in which a mapping is sought. This parameter is an alternative to the target parameter - only one is required. Searching for any translation to a target code system irrespective of the context (e.g. target valueset) may lead to unsafe results, and it is at the discretion of the server to decide when to support this operation |
||
| dependency | 0..* |
Another element that may help produce the correct mapping |
|||
| dependency.element | 0..1 | uri |
The element for this dependency |
||
| dependency.concept | 0..1 | CodeableConcept |
The value for this dependency |
||
| reverse | 0..1 | boolean | if this is true, then the operation should return all the codes that might be mapped to this code. This parameter reverses the meaning of the source and target parameters | ||
| Out Parameters: | |||||
| Name | Cardinality | Type | Binding | Profile | Documentation |
| 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 |
||
| 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) |
||
| 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 |
|||
| match.equivalence | 0..1 | code |
A code indicating the equivalence of the translation, using values from [ConceptMapEquivalence]{concept-map-equivalence.html} |
||
| 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) |
||
| match.product | 0..* |
Another element that is the product of this mapping |
|||
| match.product.element | 0..1 | uri |
The element for this product |
||
| match.product.concept | 0..1 | Coding |
The value for this product |
||
| match.source | 0..1 | uri | The canonical URI for the concept map from which this mapping comes from | ||
Request:
GET [base]/ConceptMap/$translate?system=http://hl7.org/fhir/composition-status &code=preliminary&valueSet= http://hl7.org/fhir/ValueSet/composition-status &target=http://hl7.org/fhir/ValueSet/v3-ActStatus
Response:
HTTP/1.1 200 OK
[other headers]
{
"resourceType" : "Parameters",
"parameter" : [
"resourceType": "Parameters",
"parameter": [
{
"name" : "result",
"valueBoolean" : "true"
"name": "result",
"valueBoolean": true
},
{
"name" : "outcome",
"valueCoding" : {
"system" : "http://hl7.org/fhir/v3/ActStatus",
"code" : "active",
}
"name": "match",
"part": [
{
"name": "equivalence",
"valueCode": "equivalent"
},
{
"name": "concept",
"valueCoding": {
"system": "http://hl7.org/fhir/v3/ActStatus",
"code": "active",
"userSelected": false
}
}
]
}
]
}
This
operation
provides
support
for
ongoing
maintenance
of
a
client-side
transitive
closure
table
based
on
server-side
terminological
logic.
For
details
of
how
this
is
used,
see
Maintaining
a
Closure
Table
The official URL for this operation definition is
http://hl7.org/fhir/OperationDefinition/ConceptMap-closure
Formal Definition (as a OperationDefinition ).
URL: [base]/$closure
This is not an idempotent operation
| In Parameters: | |||||
| Name | Cardinality | Type | Binding | Profile | Documentation |
| name | 1..1 | string |
The name that defines the particular context for the subsumption based closure table |
||
| concept | 0..* | Coding |
Concepts to add to the closure table |
||
| version | 0..1 | id |
A request to resynchronise - request to send all new entries since the nominated version was sent by the server |
||
| Out Parameters: | |||||
| Name | Cardinality | Type | Binding | Profile | Documentation |
| return | 1..1 | ConceptMap |
A
list
of
new
entries
(code
/
system
-->
code/system)
that
the
client
should
add
to
its
closure
table.
The
only
kind
of
entry
mapping
equivalences
that
can
be
returned
are
equal,
Note: as this the only out parameter, it is a resource, and it has the name 'return', the result of this operation is returned directly as a resource |
||
Request:
POST [base]/$closure
{
"resourceType" : "Parameters",
"parameter" : [
{
"name" : "name",
"valueId : "patient-problems"
"valueString" : "patient-problems"
},
{
"name" : "concept",
"valueCoding" : {
"system" : "http://snomed.info/sct",
"code" : "22298006",
}
}
]
}
Response:
HTTP/1.1 200 OK
[other headers]
{
"resourceType": "ConceptMap",
"identifier": "49088976-d54d-4d19-b868-3d4c18cebabb",
"version": "8",
"status": "active",
"experimental": true,
"date": "2012-06-13",
"element": [
{
"codeSystem": "http://snomed.info/sct",
"code": "22298006",
"map": [
{
"codeSystem": "http://snomed.info/sct",
"code": "128599005",
"equivalence": "wider"
"equivalence": "subsumes"
}
]
},
]
}