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
:
|
Trial Use | Compartments : Not linked to any defined compartments |
A statement of relationships from one set of concepts to one or more other concepts - either code systems or data elements, or classes in class models.
A
concept
map
defines
a
mapping
from
a
concept
set
of
concepts
defined
in
one
a
code
system
to
one
or
more
concepts
defined
in
other
code
systems.
Mappings
are
one
way
-
from
the
source
to
the
destination.
In
many
cases,
the
reverse
mappings
are
valid,
but
this
cannot
be
assumed
to
be
the
case.
Mappings between code systems are only defined in the context of the specified source and destination value sets - they are specific to a particular context of use. The mappings may be useful in other contexts, but this must be determined based on the context of use and meaning; it cannot be taken for granted automatically. Note that all code systems have value sets that include the entire code system, and these value sets can be used for mappings that are valid in all contexts.
Each
mapping
for
a
concept
from
source
to
target
includes
an
equivalence
property
that
specifies
how
similar
the
mapping
is
(or,
in
some
cases,
that
there
is
no
valid
mapping).
There
is
one
element
for
each
concept
or
field
in
the
source
that
needs
to
be
mapped.
Each
source
concept
may
have
multiple
targets:
There SHOULD be at least one target for each element, but some incomplete concept maps may not have a target for each concept.
While
ConceptMap
resources
are
not
referred
to
directly
from
any
other
resource,
they
may
be
included
and
used
in
ImplementationGuide
resources,
and
provide
background
knowledge
that
is
in
many
contexts,
including
operations
defined
in
this
specification.
In
addition
to
ConceptMap
,
there
is
also
the
StructureMap
resource.
The
ConceptMap
resource
defines
relationships
between
concepts
in
their
own
right,
along
with
grading
of
their
equivalencies,
while
the
StructureMap
defines
an
exectuable
transform
for
instances
that
conform
to
a
known
structure.
Further
discussion
of
the
issues
involved
in
mapping
between
concept
definition
systems
can
be
found
in
the
HL7
v3
Core
Principles
document
and
the
functionality
described
in
the
OMG
CTS
2
specification.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
DomainResource |
A
map
from
one
set
of
concepts
to
one
or
more
other
concepts
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
||
|
Σ | 0..1 | uri | Logical URI to reference this concept map (globally unique) |
|
Σ | 0..1 | Identifier | Additional identifier for the concept map |
|
Σ | 0..1 | string | Business version of the concept map |
|
Σ | 0..1 | string | Name for this concept map (computer friendly) |
| Σ | 0..1 | string | Name for this concept map (human friendly) |
![]() ![]() |
?! Σ | 1..1 | code |
draft
|
active
|
retired
|
unknown
|
|
?! Σ | 0..1 | boolean | For testing purposes, not real usage |
|
Σ | 0..1 |
|
Date this was last changed |
|
Σ | 0..1 | string |
Name
of
|
|
Σ | 0..* |
|
Contact
details
for
|
|
0..1 |
|
Natural language description of the concept map | |
|
Σ | 0..* |
|
Context
the
|
|
Σ | 0..* | CodeableConcept |
Intended
jurisdiction
for
concept
map
(if
applicable)
|
|
0..1 |
|
Why
|
|
|
0..1 |
|
Use and/or publishing restrictions | |
|
Σ | 0..1 | Identifies the source of the concepts which are being mapped | |
|
uri | |||
|
Reference
(
ValueSet
|
|||
|
Σ | 0..1 | Provides context to the mappings | |
|
uri | |||
|
Reference
(
ValueSet
|
|||
|
0..* | BackboneElement |
Same
source
|
|
|
0..1 | uri | Code System (if value set crosses code systems) | |
| 0..1 | string | Specific version of the code system | |
![]() ![]() ![]() |
0..1 | uri | System of the target (if necessary) | |
![]() ![]() ![]() | 0..1 | string | Specific version of the code system | |
![]() ![]() ![]() | 1..* | BackboneElement |
Mappings
for
a
concept
from
the
source
set
| |
![]() ![]() ![]() ![]() | 0..1 | code | Identifies element being mapped | |
| 0..1 | string | Display for the code | |
![]() ![]() ![]() ![]() |
I | 0..* | BackboneElement |
Concept
in
target
system
for
element
+ If the map is narrower or inexact, there SHALL be some comments |
|
0..1 |
|
Code
that
identifies
the
target
|
|
|
0..1 |
|
Display
for
the
|
|
|
?! | 0..1 | code |
relatedto
|
equivalent
|
equal
|
wider
|
subsumes
|
narrower
|
specializes
|
inexact
|
unmatched
|
disjoint
ConceptMapEquivalence ( Required ) |
|
I | 0..1 | string | Description of status/issues in mapping |
|
0..* | BackboneElement |
Other
elements
required
for
this
mapping
(from
context)
|
|
|
1..1 | uri |
Reference
to
|
|
|
0..1 | uri | Code System (if necessary) | |
|
1..1 | string | Value of the referenced element | |
| 0..1 | string | Display for the code | |
![]() ![]() ![]() ![]() ![]() |
0..* | see dependsOn |
Other
concepts
that
this
mapping
also
produces
|
|
| I | 0..1 | BackboneElement |
When
no
match
in
the
mappings
+ If the mode is 'other-map', a code must be provided + If the mode is 'fixed', a code must be provided |
![]() ![]() ![]() ![]() | 1..1 | code |
provided
|
fixed
|
other-map
ConceptMapGroupUnmappedMode ( Required ) | |
![]() ![]() ![]() ![]() | 0..1 | code | Fixed code when mode = fixed | |
![]() ![]() ![]() ![]() | 0..1 | string | Display for the code | |
![]() ![]() ![]() ![]() | 0..1 | uri | Canonical URL for other concept map | |
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
<<ConceptMap xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension -->
< <</identifier> < < < < < < < <</telecom> </contact> < < <</useContext> < < <</source[x]> <</target[x]> < < < < < < < < < < < < </dependsOn> <</product> </target> </element><url value="[uri]"/><!-- 0..1 Logical URI to reference this concept map (globally unique) --> <identifier><!-- 0..1 Identifier Additional identifier for the concept map --></identifier> <version value="[string]"/><!-- 0..1 Business version of the concept map --> <name value="[string]"/><!-- 0..1 Name for this concept map (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this concept map (human friendly) --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <date value="[dateTime]"/><!-- 0..1 Date this was last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the concept map --> <useContext><!-- 0..* UsageContext Context the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for concept map (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this concept map is defined --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <source[x]><!-- 0..1 uri|Reference(ValueSet) Identifies the source of the concepts which are being mapped --></source[x]> <target[x]><!-- 0..1 uri|Reference(ValueSet) Provides context to the mappings --></target[x]> <group> <!-- 0..* Same source and target systems --> <source value="[uri]"/><!-- 0..1 Code System (if value set crosses code systems) --> <sourceVersion value="[string]"/><!-- 0..1 Specific version of the code system --> <target value="[uri]"/><!-- 0..1 System of the target (if necessary) --> <targetVersion value="[string]"/><!-- 0..1 Specific version of the code system --> <element> <!-- 1..* Mappings for a concept from the source set --> <code value="[code]"/><!-- 0..1 Identifies element being mapped --> <display value="[string]"/><!-- 0..1 Display for the code --> <target> <!-- 0..* Concept in target system for element --> <code value="[code]"/><!-- 0..1 Code that identifies the target element --> <display value="[string]"/><!-- 0..1 Display for the code --> <equivalence value="[code]"/><!-- 0..1 relatedto | equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint --> <comment value="[string]"/><!--0..1 Description of status/issues in mapping --> <dependsOn> <!-- 0..* Other elements required for this mapping (from context) --> <property value="[uri]"/><!-- 1..1 Reference to property mapping depends on --> <system value="[uri]"/><!-- 0..1 Code System (if necessary) --> <code value="[string]"/><!-- 1..1 Value of the referenced element --> <display value="[string]"/><!-- 0..1 Display for the code --> </dependsOn> <product><!-- 0..* Content as for ConceptMap.group.element.target.dependsOn Other concepts that this mapping also produces --></product> </target> </element> <unmapped> <!-- 0..1 When no match in the mappings --> <mode value="[code]"/><!-- 1..1 provided | fixed | other-map --> <code value="[code]"/><!-- 0..1 Fixed code when mode = fixed --> <display value="[string]"/><!-- 0..1 Display for the code --> <url value="[uri]"/><!-- 0..1 Canonical URL for other concept map --> </unmapped> </group> </ConceptMap>
JSON Template
{ "resourceType" : "",{"resourceType" : "ConceptMap", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension
" " " " " " " " " " }], " " " " ""url" : "<uri>", // Logical URI to reference this concept map (globally unique) "identifier" : { Identifier }, // Additional identifier for the concept map "version" : "<string>", // Business version of the concept map "name" : "<string>", // Name for this concept map (computer friendly) "title" : "<string>", // Name for this concept map (human friendly) "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "date" : "<dateTime>", // Date this was last changed "publisher" : "<string>", // Name of the publisher (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the concept map "useContext" : [{ UsageContext }], // Context the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for concept map (if applicable) "purpose" : "<markdown>", // Why this concept map is defined "copyright" : "<markdown>", // Use and/or publishing restrictions // source[x]: Identifies the source of the concepts which are being mapped. One of these 2:">", " },"sourceUri" : "<uri>", "sourceReference" : { Reference(ValueSet) }, // target[x]: Provides context to the mappings. One of these 2:">", " }, " " " " " " " " " " " " }], " }]"targetUri" : "<uri>", "targetReference" : { Reference(ValueSet) }, "group" : [{ // Same source and target systems "source" : "<uri>", // Code System (if value set crosses code systems) "sourceVersion" : "<string>", // Specific version of the code system "target" : "<uri>", // System of the target (if necessary) "targetVersion" : "<string>", // Specific version of the code system "element" : [{ // R! Mappings for a concept from the source set "code" : "<code>", // Identifies element being mapped "display" : "<string>", // Display for the code "target" : [{ // Concept in target system for element "code" : "<code>", // Code that identifies the target element "display" : "<string>", // Display for the code "equivalence" : "<code>", // relatedto | equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint "comment" : "<string>", // C? Description of status/issues in mapping "dependsOn" : [{ // Other elements required for this mapping (from context) "property" : "<uri>", // R! Reference to property mapping depends on "system" : "<uri>", // Code System (if necessary) "code" : "<string>", // R! Value of the referenced element "display" : "<string>" // Display for the code }], "product" : [{ Content as for ConceptMap.group.element.target.dependsOn }] // Other concepts that this mapping also produces }] }], "unmapped" : { // When no match in the mappings "mode" : "<code>", // R! provided | fixed | other-map "code" : "<code>", // Fixed code when mode = fixed "display" : "<string>", // Display for the code "url" : "<uri>" // Canonical URL for other concept map } }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:ConceptMap; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:ConceptMap.url [ uri ]; # 0..1 Logical URI to reference this concept map (globally unique) fhir:ConceptMap.identifier [ Identifier ]; # 0..1 Additional identifier for the concept map fhir:ConceptMap.version [ string ]; # 0..1 Business version of the concept map fhir:ConceptMap.name [ string ]; # 0..1 Name for this concept map (computer friendly) fhir:ConceptMap.title [ string ]; # 0..1 Name for this concept map (human friendly) fhir:ConceptMap.status [ code ]; # 1..1 draft | active | retired | unknown fhir:ConceptMap.experimental [ boolean ]; # 0..1 For testing purposes, not real usage fhir:ConceptMap.date [ dateTime ]; # 0..1 Date this was last changed fhir:ConceptMap.publisher [ string ]; # 0..1 Name of the publisher (organization or individual) fhir:ConceptMap.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher fhir:ConceptMap.description [ markdown ]; # 0..1 Natural language description of the concept map fhir:ConceptMap.useContext [ UsageContext ], ... ; # 0..* Context the content is intended to support fhir:ConceptMap.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for concept map (if applicable) fhir:ConceptMap.purpose [ markdown ]; # 0..1 Why this concept map is defined fhir:ConceptMap.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions # ConceptMap.source[x] : 0..1 Identifies the source of the concepts which are being mapped. One of these 2 fhir:ConceptMap.sourceUri [ uri ] fhir:ConceptMap.sourceReference [ Reference(ValueSet) ] # ConceptMap.target[x] : 0..1 Provides context to the mappings. One of these 2 fhir:ConceptMap.targetUri [ uri ] fhir:ConceptMap.targetReference [ Reference(ValueSet) ] fhir:ConceptMap.group [ # 0..* Same source and target systems fhir:ConceptMap.group.source [ uri ]; # 0..1 Code System (if value set crosses code systems) fhir:ConceptMap.group.sourceVersion [ string ]; # 0..1 Specific version of the code system fhir:ConceptMap.group.target [ uri ]; # 0..1 System of the target (if necessary) fhir:ConceptMap.group.targetVersion [ string ]; # 0..1 Specific version of the code system fhir:ConceptMap.group.element [ # 1..* Mappings for a concept from the source set fhir:ConceptMap.group.element.code [ code ]; # 0..1 Identifies element being mapped fhir:ConceptMap.group.element.display [ string ]; # 0..1 Display for the code fhir:ConceptMap.group.element.target [ # 0..* Concept in target system for element fhir:ConceptMap.group.element.target.code [ code ]; # 0..1 Code that identifies the target element fhir:ConceptMap.group.element.target.display [ string ]; # 0..1 Display for the code fhir:ConceptMap.group.element.target.equivalence [ code ]; # 0..1 relatedto | equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint fhir:ConceptMap.group.element.target.comment [ string ]; # 0..1 Description of status/issues in mapping fhir:ConceptMap.group.element.target.dependsOn [ # 0..* Other elements required for this mapping (from context) fhir:ConceptMap.group.element.target.dependsOn.property [ uri ]; # 1..1 Reference to property mapping depends on fhir:ConceptMap.group.element.target.dependsOn.system [ uri ]; # 0..1 Code System (if necessary) fhir:ConceptMap.group.element.target.dependsOn.code [ string ]; # 1..1 Value of the referenced element fhir:ConceptMap.group.element.target.dependsOn.display [ string ]; # 0..1 Display for the code ], ...; fhir:ConceptMap.group.element.target.product [ See ConceptMap.group.element.target.dependsOn ], ... ; # 0..* Other concepts that this mapping also produces ], ...; ], ...; fhir:ConceptMap.group.unmapped [ # 0..1 When no match in the mappings fhir:ConceptMap.group.unmapped.mode [ code ]; # 1..1 provided | fixed | other-map fhir:ConceptMap.group.unmapped.code [ code ]; # 0..1 Fixed code when mode = fixed fhir:ConceptMap.group.unmapped.display [ string ]; # 0..1 Display for the code fhir:ConceptMap.group.unmapped.url [ uri ]; # 0..1 Canonical URL for other concept map ]; ], ...; ]
Changes since DSTU2
| ConceptMap | |
| ConceptMap.title |
|
| ConceptMap.status |
|
| ConceptMap.experimental |
|
| ConceptMap.contact |
|
| ConceptMap.description |
|
| ConceptMap.useContext |
|
| ConceptMap.jurisdiction |
|
| ConceptMap.purpose |
|
| ConceptMap.copyright |
|
| ConceptMap.source[x] |
|
| ConceptMap.target[x] |
|
| ConceptMap.group |
|
| ConceptMap.group.source |
|
| ConceptMap.group.sourceVersion |
|
| ConceptMap.group.target |
|
| ConceptMap.group.targetVersion |
|
| ConceptMap.group.element |
|
| ConceptMap.group.element.display |
|
| ConceptMap.group.element.target.display |
|
| ConceptMap.group.element.target.equivalence |
|
| ConceptMap.group.element.target.comment |
|
| ConceptMap.group.element.target.dependsOn.property |
|
| ConceptMap.group.element.target.dependsOn.system |
|
| ConceptMap.group.element.target.dependsOn.display |
|
| ConceptMap.group.unmapped |
|
| ConceptMap.group.unmapped.mode |
|
| ConceptMap.group.unmapped.code |
|
| ConceptMap.group.unmapped.display |
|
| ConceptMap.group.unmapped.url |
|
| ConceptMap.contact.name |
|
| ConceptMap.contact.telecom |
|
| ConceptMap.element.codeSystem |
|
| ConceptMap.element.target.codeSystem |
|
| ConceptMap.element.target.comments |
|
| ConceptMap.element.target.dependsOn.element |
|
| ConceptMap.element.target.dependsOn.codeSystem |
|
See the Full Difference for further information
This analysis is available as XML or JSON .
See R2 <--> R3 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and 1 r3 resources are invalid (1 errors). ).
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
DomainResource |
A
map
from
one
set
of
concepts
to
one
or
more
other
concepts
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension |
||
|
Σ | 0..1 | uri | Logical URI to reference this concept map (globally unique) |
|
Σ | 0..1 | Identifier | Additional identifier for the concept map |
|
Σ | 0..1 | string | Business version of the concept map |
|
Σ | 0..1 | string | Name for this concept map (computer friendly) |
| Σ | 0..1 | string | Name for this concept map (human friendly) |
![]() ![]() |
?! Σ | 1..1 | code |
draft
|
active
|
retired
|
unknown
|
|
?! Σ | 0..1 | boolean | For testing purposes, not real usage |
|
Σ | 0..1 |
|
Date this was last changed |
|
Σ | 0..1 | string |
Name
of
|
|
Σ | 0..* |
|
Contact
details
for
|
|
0..1 |
|
Natural language description of the concept map | |
|
Σ | 0..* |
|
Context
the
|
|
Σ | 0..* | CodeableConcept |
Intended
jurisdiction
for
concept
map
(if
applicable)
|
|
0..1 |
|
Why
|
|
|
0..1 |
|
Use and/or publishing restrictions | |
|
Σ | 0..1 | Identifies the source of the concepts which are being mapped | |
|
uri | |||
|
Reference
(
ValueSet
|
|||
|
Σ | 0..1 | Provides context to the mappings | |
|
uri | |||
|
Reference
(
ValueSet
|
|||
|
0..* | BackboneElement |
Same
source
|
|
|
0..1 | uri | Code System (if value set crosses code systems) | |
| 0..1 | string | Specific version of the code system | |
![]() ![]() ![]() |
0..1 | uri | System of the target (if necessary) | |
![]() ![]() ![]() | 0..1 | string | Specific version of the code system | |
![]() ![]() ![]() | 1..* | BackboneElement |
Mappings
for
a
concept
from
the
source
set
| |
![]() ![]() ![]() ![]() | 0..1 | code | Identifies element being mapped | |
| 0..1 | string | Display for the code | |
![]() ![]() ![]() ![]() |
I | 0..* | BackboneElement |
Concept
in
target
system
for
element
+ If the map is narrower or inexact, there SHALL be some comments |
|
0..1 |
|
Code
that
identifies
the
target
|
|
|
0..1 |
|
Display
for
the
|
|
|
?! | 0..1 | code |
relatedto
|
equivalent
|
equal
|
wider
|
subsumes
|
narrower
|
specializes
|
inexact
|
unmatched
|
disjoint
ConceptMapEquivalence ( Required ) |
|
I | 0..1 | string | Description of status/issues in mapping |
|
0..* | BackboneElement |
Other
elements
required
for
this
mapping
(from
context)
|
|
|
1..1 | uri |
Reference
to
|
|
|
0..1 | uri | Code System (if necessary) | |
|
1..1 | string | Value of the referenced element | |
| 0..1 | string | Display for the code | |
![]() ![]() ![]() ![]() ![]() |
0..* | see dependsOn |
Other
concepts
that
this
mapping
also
produces
|
|
| I | 0..1 | BackboneElement |
When
no
match
in
the
mappings
+ If the mode is 'other-map', a code must be provided + If the mode is 'fixed', a code must be provided |
![]() ![]() ![]() ![]() | 1..1 | code |
provided
|
fixed
|
other-map
ConceptMapGroupUnmappedMode ( Required ) | |
![]() ![]() ![]() ![]() | 0..1 | code | Fixed code when mode = fixed | |
![]() ![]() ![]() ![]() | 0..1 | string | Display for the code | |
![]() ![]() ![]() ![]() | 0..1 | uri | Canonical URL for other concept map | |
Documentation
for
this
format
|
||||
XML Template
<<ConceptMap xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension -->
< <</identifier> < < < < < < < <</telecom> </contact> < < <</useContext> < < <</source[x]> <</target[x]> < < < < < < < < < < < < </dependsOn> <</product> </target> </element><url value="[uri]"/><!-- 0..1 Logical URI to reference this concept map (globally unique) --> <identifier><!-- 0..1 Identifier Additional identifier for the concept map --></identifier> <version value="[string]"/><!-- 0..1 Business version of the concept map --> <name value="[string]"/><!-- 0..1 Name for this concept map (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this concept map (human friendly) --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing purposes, not real usage --> <date value="[dateTime]"/><!-- 0..1 Date this was last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the concept map --> <useContext><!-- 0..* UsageContext Context the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Intended jurisdiction for concept map (if applicable) --></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this concept map is defined --> <copyright value="[markdown]"/><!-- 0..1 Use and/or publishing restrictions --> <source[x]><!-- 0..1 uri|Reference(ValueSet) Identifies the source of the concepts which are being mapped --></source[x]> <target[x]><!-- 0..1 uri|Reference(ValueSet) Provides context to the mappings --></target[x]> <group> <!-- 0..* Same source and target systems --> <source value="[uri]"/><!-- 0..1 Code System (if value set crosses code systems) --> <sourceVersion value="[string]"/><!-- 0..1 Specific version of the code system --> <target value="[uri]"/><!-- 0..1 System of the target (if necessary) --> <targetVersion value="[string]"/><!-- 0..1 Specific version of the code system --> <element> <!-- 1..* Mappings for a concept from the source set --> <code value="[code]"/><!-- 0..1 Identifies element being mapped --> <display value="[string]"/><!-- 0..1 Display for the code --> <target> <!-- 0..* Concept in target system for element --> <code value="[code]"/><!-- 0..1 Code that identifies the target element --> <display value="[string]"/><!-- 0..1 Display for the code --> <equivalence value="[code]"/><!-- 0..1 relatedto | equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint --> <comment value="[string]"/><!--0..1 Description of status/issues in mapping --> <dependsOn> <!-- 0..* Other elements required for this mapping (from context) --> <property value="[uri]"/><!-- 1..1 Reference to property mapping depends on --> <system value="[uri]"/><!-- 0..1 Code System (if necessary) --> <code value="[string]"/><!-- 1..1 Value of the referenced element --> <display value="[string]"/><!-- 0..1 Display for the code --> </dependsOn> <product><!-- 0..* Content as for ConceptMap.group.element.target.dependsOn Other concepts that this mapping also produces --></product> </target> </element> <unmapped> <!-- 0..1 When no match in the mappings --> <mode value="[code]"/><!-- 1..1 provided | fixed | other-map --> <code value="[code]"/><!-- 0..1 Fixed code when mode = fixed --> <display value="[string]"/><!-- 0..1 Display for the code --> <url value="[uri]"/><!-- 0..1 Canonical URL for other concept map --> </unmapped> </group> </ConceptMap>
JSON Template
{ "resourceType" : "",{"resourceType" : "ConceptMap", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension
" " " " " " " " " " }], " " " " ""url" : "<uri>", // Logical URI to reference this concept map (globally unique) "identifier" : { Identifier }, // Additional identifier for the concept map "version" : "<string>", // Business version of the concept map "name" : "<string>", // Name for this concept map (computer friendly) "title" : "<string>", // Name for this concept map (human friendly) "status" : "<code>", // R! draft | active | retired | unknown "experimental" : <boolean>, // For testing purposes, not real usage "date" : "<dateTime>", // Date this was last changed "publisher" : "<string>", // Name of the publisher (organization or individual) "contact" : [{ ContactDetail }], // Contact details for the publisher "description" : "<markdown>", // Natural language description of the concept map "useContext" : [{ UsageContext }], // Context the content is intended to support "jurisdiction" : [{ CodeableConcept }], // Intended jurisdiction for concept map (if applicable) "purpose" : "<markdown>", // Why this concept map is defined "copyright" : "<markdown>", // Use and/or publishing restrictions // source[x]: Identifies the source of the concepts which are being mapped. One of these 2:">", " },"sourceUri" : "<uri>", "sourceReference" : { Reference(ValueSet) }, // target[x]: Provides context to the mappings. One of these 2:">", " }, " " " " " " " " " " " " }], " }]"targetUri" : "<uri>", "targetReference" : { Reference(ValueSet) }, "group" : [{ // Same source and target systems "source" : "<uri>", // Code System (if value set crosses code systems) "sourceVersion" : "<string>", // Specific version of the code system "target" : "<uri>", // System of the target (if necessary) "targetVersion" : "<string>", // Specific version of the code system "element" : [{ // R! Mappings for a concept from the source set "code" : "<code>", // Identifies element being mapped "display" : "<string>", // Display for the code "target" : [{ // Concept in target system for element "code" : "<code>", // Code that identifies the target element "display" : "<string>", // Display for the code "equivalence" : "<code>", // relatedto | equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint "comment" : "<string>", // C? Description of status/issues in mapping "dependsOn" : [{ // Other elements required for this mapping (from context) "property" : "<uri>", // R! Reference to property mapping depends on "system" : "<uri>", // Code System (if necessary) "code" : "<string>", // R! Value of the referenced element "display" : "<string>" // Display for the code }], "product" : [{ Content as for ConceptMap.group.element.target.dependsOn }] // Other concepts that this mapping also produces }] }], "unmapped" : { // When no match in the mappings "mode" : "<code>", // R! provided | fixed | other-map "code" : "<code>", // Fixed code when mode = fixed "display" : "<string>", // Display for the code "url" : "<uri>" // Canonical URL for other concept map } }] }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:ConceptMap; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:ConceptMap.url [ uri ]; # 0..1 Logical URI to reference this concept map (globally unique) fhir:ConceptMap.identifier [ Identifier ]; # 0..1 Additional identifier for the concept map fhir:ConceptMap.version [ string ]; # 0..1 Business version of the concept map fhir:ConceptMap.name [ string ]; # 0..1 Name for this concept map (computer friendly) fhir:ConceptMap.title [ string ]; # 0..1 Name for this concept map (human friendly) fhir:ConceptMap.status [ code ]; # 1..1 draft | active | retired | unknown fhir:ConceptMap.experimental [ boolean ]; # 0..1 For testing purposes, not real usage fhir:ConceptMap.date [ dateTime ]; # 0..1 Date this was last changed fhir:ConceptMap.publisher [ string ]; # 0..1 Name of the publisher (organization or individual) fhir:ConceptMap.contact [ ContactDetail ], ... ; # 0..* Contact details for the publisher fhir:ConceptMap.description [ markdown ]; # 0..1 Natural language description of the concept map fhir:ConceptMap.useContext [ UsageContext ], ... ; # 0..* Context the content is intended to support fhir:ConceptMap.jurisdiction [ CodeableConcept ], ... ; # 0..* Intended jurisdiction for concept map (if applicable) fhir:ConceptMap.purpose [ markdown ]; # 0..1 Why this concept map is defined fhir:ConceptMap.copyright [ markdown ]; # 0..1 Use and/or publishing restrictions # ConceptMap.source[x] : 0..1 Identifies the source of the concepts which are being mapped. One of these 2 fhir:ConceptMap.sourceUri [ uri ] fhir:ConceptMap.sourceReference [ Reference(ValueSet) ] # ConceptMap.target[x] : 0..1 Provides context to the mappings. One of these 2 fhir:ConceptMap.targetUri [ uri ] fhir:ConceptMap.targetReference [ Reference(ValueSet) ] fhir:ConceptMap.group [ # 0..* Same source and target systems fhir:ConceptMap.group.source [ uri ]; # 0..1 Code System (if value set crosses code systems) fhir:ConceptMap.group.sourceVersion [ string ]; # 0..1 Specific version of the code system fhir:ConceptMap.group.target [ uri ]; # 0..1 System of the target (if necessary) fhir:ConceptMap.group.targetVersion [ string ]; # 0..1 Specific version of the code system fhir:ConceptMap.group.element [ # 1..* Mappings for a concept from the source set fhir:ConceptMap.group.element.code [ code ]; # 0..1 Identifies element being mapped fhir:ConceptMap.group.element.display [ string ]; # 0..1 Display for the code fhir:ConceptMap.group.element.target [ # 0..* Concept in target system for element fhir:ConceptMap.group.element.target.code [ code ]; # 0..1 Code that identifies the target element fhir:ConceptMap.group.element.target.display [ string ]; # 0..1 Display for the code fhir:ConceptMap.group.element.target.equivalence [ code ]; # 0..1 relatedto | equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint fhir:ConceptMap.group.element.target.comment [ string ]; # 0..1 Description of status/issues in mapping fhir:ConceptMap.group.element.target.dependsOn [ # 0..* Other elements required for this mapping (from context) fhir:ConceptMap.group.element.target.dependsOn.property [ uri ]; # 1..1 Reference to property mapping depends on fhir:ConceptMap.group.element.target.dependsOn.system [ uri ]; # 0..1 Code System (if necessary) fhir:ConceptMap.group.element.target.dependsOn.code [ string ]; # 1..1 Value of the referenced element fhir:ConceptMap.group.element.target.dependsOn.display [ string ]; # 0..1 Display for the code ], ...; fhir:ConceptMap.group.element.target.product [ See ConceptMap.group.element.target.dependsOn ], ... ; # 0..* Other concepts that this mapping also produces ], ...; ], ...; fhir:ConceptMap.group.unmapped [ # 0..1 When no match in the mappings fhir:ConceptMap.group.unmapped.mode [ code ]; # 1..1 provided | fixed | other-map fhir:ConceptMap.group.unmapped.code [ code ]; # 0..1 Fixed code when mode = fixed fhir:ConceptMap.group.unmapped.display [ string ]; # 0..1 Display for the code fhir:ConceptMap.group.unmapped.url [ uri ]; # 0..1 Canonical URL for other concept map ]; ], ...; ]
Changes
since
DSTU2
| ConceptMap | |
| ConceptMap.title |
|
| ConceptMap.status |
|
| ConceptMap.experimental |
|
| ConceptMap.contact |
|
| ConceptMap.description |
|
| ConceptMap.useContext |
|
| ConceptMap.jurisdiction |
|
| ConceptMap.purpose |
|
| ConceptMap.copyright |
|
| ConceptMap.source[x] |
|
| ConceptMap.target[x] |
|
| ConceptMap.group |
|
| ConceptMap.group.source |
|
| ConceptMap.group.sourceVersion |
|
| ConceptMap.group.target |
|
| ConceptMap.group.targetVersion |
|
| ConceptMap.group.element |
|
| ConceptMap.group.element.display |
|
| ConceptMap.group.element.target.display |
|
| ConceptMap.group.element.target.equivalence |
|
| ConceptMap.group.element.target.comment |
|
| ConceptMap.group.element.target.dependsOn.property |
|
| ConceptMap.group.element.target.dependsOn.system |
|
| ConceptMap.group.element.target.dependsOn.display |
|
| ConceptMap.group.unmapped |
|
| ConceptMap.group.unmapped.mode |
|
| ConceptMap.group.unmapped.code |
|
| ConceptMap.group.unmapped.display |
|
| ConceptMap.group.unmapped.url |
|
| ConceptMap.contact.name |
|
| ConceptMap.contact.telecom |
|
| ConceptMap.element.codeSystem |
|
| ConceptMap.element.target.codeSystem |
|
| ConceptMap.element.target.comments |
|
| ConceptMap.element.target.dependsOn.element |
|
| ConceptMap.element.target.dependsOn.codeSystem |
|
See the Full Difference for further information
This analysis is available as XML or JSON .
See R2 <--> R3 Conversion Maps (status = 2 tests that all execute ok. All tests pass round-trip testing and 1 r3 resources are invalid (1 errors). ).
Alternate
definitions:
Schema
/
Schematron
,
Resource
Profile
Master
Definition
(
XML
,
JSON
),
Questionnaire
XML
Schema
/
Schematron
(for
)
+
JSON
Schema
,
ShEx
(for
Turtle
)
| Path | Definition | Type | Reference |
|---|---|---|---|
| ConceptMap.status | The lifecycle status of a Value Set or Concept Map. | Required |
|
| ConceptMap.jurisdiction |
|
Extensible |
|
| ConceptMap.group.element.target.equivalence | The degree of equivalence between concepts. | Required | ConceptMapEquivalence |
| ConceptMap.group.unmapped.mode | Defines which action to take if there is no match in the group. | Required | ConceptMapGroupUnmappedMode |
on
on
ConceptMap.group.unmapped:
(mode
=
'fixed')
implies
code.exists()
)
on
ConceptMap.group.unmapped:
(mode
=
'other-map')
implies
url.exists()
)
system
,
version
and
code
element
elements
are
the
same
as
used
by
the
Coding
data
type
element
for
each
source
concept.
If
there
is
more
than
one,
the
target
statements
are
cumulative
across
them
The
concept
mappings
in
element
are
arranged
into
groups
that
share
common
source/target
systems.
These
groups
have
no
semantic
signficance;
they
exist
to
make
the
representation
more
concise.
Concept
maps
may
contain
more
than
one
group
with
the
same
source
and
target
-
this
would
be
a
less
concise
representation
but
may
be
useful
in
order
to
maintain
a
fixed
order
for
the
concepts
that
are
mapped.
Concepts
that
are
labeled
as
'unmatched'
are
considered
to
be
unmatched
in
the
target
value
set,
irrespective
of
whether
they
are
contained
in
a
group
with
a
stated
target
system
or
not.
Groups
that
contain
no
target
system
may
only
contained
'unmatched'
concepts.
There
is
no
difference
in
the
meaning
of
an
unmatched
target
whether
or
not
there
is
a
stated
target
system.
The ConceptMap resource is intended to map between concepts defined in a code system. It can also be useful to use the ConceptMap resource to define relationships between concepts defined in other kinds of resources. Here are some common kind of conceptual maps:
Though
these
resources
are
not
explicitly
defining
code
systems,
they
do
define
'concept's
that
can
still
usefully
be
treated
as
code
systems
for
the
sake
of
subsetting
(e.g.
ValueSet
)
and
defining
relationships
(e.g.
ConceptMap
).
Note
that
this
is
different
from
StructureMap
because
that
is
intended
to
define
an
executional
transform
between
structures,
not
a
conceptual
model.
This table summarizes how to treat these items as a terminology:
| StructureDefinition |
The
StructureDefinition.url
(canonical
URL)
is
the
system
.
Each
.snapshot.element.id
in
the
snapshot
is
a
code
in
the
code
system
|
| Questionnaire |
The
Questionnaire.url
(canonical
URL)
is
the
system
.
Each
.item.linkId
in
the
snapshot
is
a
code
in
the
code
system.
Items
with
no
linkId
cannot
be
addressed
|
| DataElement |
The
DataElement.url
(canonical
URL)
is
the
system
.
Each
.element.id
in
the
snapshot
is
a
code
in
the
code
system.
Elements
with
no
id
cannot
be
addressed
|
| Medication | Medication resources are a bit different, since they don't have a canonical URL, and there are not multiple items in a resource. So to refer to a medication resource, the system is [base]/Medication, where base is the server address. The Logical Id of the resource is the code |
Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
| Name | Type | Description |
|
|
| date | date | The concept map publication date | ConceptMap.date | |
| dependson | uri |
Reference
to
|
|
|
| description | string |
|
ConceptMap.description | |
| identifier | token |
|
ConceptMap.identifier | |
| jurisdiction | token | Intended jurisdiction for the concept map | ConceptMap.jurisdiction | |
| name | string |
|
ConceptMap.name | |
| other | uri | Canonical URL for other concept map | ConceptMap.group.unmapped.url | |
| product | uri |
Reference
to
|
|
|
| publisher | string | Name of the publisher of the concept map | ConceptMap.publisher | |
| source | reference | Identifies the source of the concepts which are being mapped |
( ValueSet |
|
|
|
token | Identifies element being mapped |
|
|
|
|
uri | Code System (if value set crosses code systems) |
|
|
|
|
reference | Identifies the source of the concepts which are being mapped |
( ValueSet |
|
| status | token |
|
ConceptMap.status | |
| target | reference | Provides context to the mappings |
( ValueSet |
|
|
|
token | Code that identifies the target element |
|
|
|
|
uri | System of the target (if necessary) |
|
|
| target-uri | reference | Provides context to the mappings |
ConceptMap.target.as(Uri)
( ValueSet ) | |
| title | string | The human-friendly name of the concept map | ConceptMap.title | |
| url | uri |
The
|
ConceptMap.url | |
| version | token |
The
business
version
|
ConceptMap.version |