This
page
is
part
of
the
FHIR
Specification
(v3.0.2:
STU
3).
(v3.5.0:
R4
Ballot
#2).
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
For
more
information
about
operations,
including
how
they
are
invoked,
see
Operations
.
4.9.15.1
Concept
Translation
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
source
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
location.
The
source
value
set
is
an
optional
parameter
because
in
some
cases,
the
client
cannot
know
what
the
source
value
set
is.
However,
without
a
source
value
set,
the
server
may
be
unable
to
safely
identify
an
applicable
concept
map,
and
would
return
an
error.
For
this
reason,
a
source
value
set
SHOULD
always
be
provided.
Note
that
servers
may
be
able
to
identify
an
appropriate
concept
map
without
a
source
value
set
if
there
is
a
full
mapping
for
the
entire
code
system
in
the
concept
map,
or
by
manual
intervention
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
0..1
uri
Identifies
the
value
set
in
which
a
translation
is
sought.
May
be
a
logical
id,
or
an
absolute
or
relative
location.
If
there's
no
target
specified,
the
server
should
return
all
known
translations,
along
with
their
source
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
4.9.15.1.1
Examples
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": [
{
"name": "result",
"valueBoolean": true
},
{
"name": "match",
"part": [
{
"name": "equivalence",
"valueCode": "equivalent"
},
{
"name": "concept",
"valueCoding": {
"system": "http://hl7.org/fhir/v3/ActStatus",
"code": "active",
"userSelected": false
}
}
]
}
]
}
4.9.15.2
Closure
Table
Maintenance
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,
specializes,
subsumes
and
unmatched
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
4.9.15.2.1
Examples
Request:
POST [base]/$closure
{
"resourceType" : "Parameters",
"parameter" : [
{
"name" : "name",
"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": "subsumes"
}
]
},
]
}