ConceptMap Profile

This ConceptMap profile is part of the set of resource profiles supported by the API Server used with the athenaPractice 12.3 and athenaFlow 9.12 products. It further describes read and search capabilities of these products. Note: The create and update operations are NOT supported for this resource.

Overview

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.

Scope and Usage

This profile is used to define the content that will be returned by the API Server in response to requests to access ConceptMap resources. All elements listed in the differential profile view are Supported, which means that the API Server is capable of supplying these fields from the product database when they have been populated via the product or its APIs.

Source

The ConceptMap resource provides information about mappings used by the API Server to translate between athenaPractice and athenaFlow specific codes to standard codes used by HL7 FHIR Resources. The content is derived from an external file created during system installation.

Supported Operations

The operations supported by this resource are listed below.

Read Operation

Read operations are executed as specified in the HL7 FHIR RESTful API implementation definition. To read a ConceptMap, an application shall perform an HTTP GET, specifying the identifier of the resources being retrieved.

GET [base]/fhir/ConceptMap/[id]{?_format=[json|xml]&_summary=[true|data]}

Read Operation Parameters

ParameterDescription
[base]Specifies the base URL of the FHIR Server, e.g., https://cpsapisandbox.virenceaz.com:9443/demoAPIServer
[id]Specifies the identifier of the ConceptMap resource to retrieve
[_format]Specifies the format of the output and may be xml or json. When present, the _format value overrides the value of the Accept header in the request.
[_summary]Filters the output to include only summary elements (_summary=true) or to omit the generated narrative (_summary=data). Note: If the generated html narrative for the resource is not going to be used by the call, using _summary=data provides slightly improved API response times.

Read Operation HTTP Response Codes

Response CodeDescription
200 OKThe requested resource was found and is contained within the body of the HTTP response.
401 UnauthorizedAuthorization is required for this request, and either the Authorization header is missing or the supplied user credentials in the Authorization header are not valid or have expired. The body of the HTTP response will contain an OperationOutcome resource that indicates that Authorization is required.
404 Not FoundThe requested resource does not exist. The body of the HTTP response will contain an OperationOutcome resource that indicates that the resource could not be found.
500 Server ErrorThe server may return other error codes to indicate other error conditions. The body of the HTTP response will contain an OperationOutcome resource that indicates the nature of the error.

Search Operation

ConceptMap resources can be enumerated by retrieving the fhir/List resource with an id of ConceptMap

GET [base]/fhir/List/ConceptMap?{_format=[json|xml]&_summary=[true|text|data]}

Search Operation Parameters

ParameterDescription
[base]Specifies the base URL of the FHIR Server, e.g., https://cpsapisandbox.virenceaz.com:9443/demoAPIServer
[_count]Specifies the maximum number of search results to return in a single query. Note: The count of results does not limit the number of additional resources returned via the _include parameter. No more than max-results ConceptMap resources which match the search criteria will be returned. The API Server has default and maximum limits for the value that can be specified for this parameter. These limits may vary depending upon the client application vendors participation level in the AthenaHealth Partner program. Note: The API Server support the HL7 FHIR Paging capability.
[_format]Specifies the format of the output and may be xml or json. When present, the _format value overrides the value of the Accept header in the request.
[_summary]Filters the output to include only narrative elements (_summary=text), summary elements (_summary=true) or to omit the generated narrative (_summary=data). Note: If the generated html narrative for the resource is not going to be used by the call, using _summary=data provides improved API response times, especially when returning larger result sets.

Search Operation HTTP Response Codes

Response CodeDescription
200 OKThe query was performed and any results found are contained within the body of the HTTP response. Note: The search API will return 200 OK when the query itself is successful, regardless of whether or not any matching results were found.
401 UnauthorizedAuthorization is required for this request, and either the Authorization header is missing or the supplied user credentials in the Authorization header are not valid or have expired. The body of the HTTP response will contain an OperationOutcome resource that indicates that Authorization is required.
500 Server ErrorThe server may return other error codes to indicate other error conditions. The body of the HTTP response will contain an OperationOutcome resource that indicates the nature of the error.

Other Operations

This Implementation guide defines 1 operation:

$translate Concept Translation

For more information about operations, including how they are invoked, see Operations .

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

GET [base]/$translate?{operation-parameters}
GET [base]/$translate?{operation-parameters}
In Parameters:
NameCardinalityTypeBindingProfileDocumentation
code0..1code

The code that is to be translated. If a code is provided, a system must be provided

system1..1uri

The system of the code that is to be translated.

targetcode0..1code

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.

targetsystem0..1uri

The target system for the code that is to be translated from/to.

dependency0..*

Another element that may help produce the correct mapping

dependency.element0..1uri

The element for this dependency

dependency.concept0..1CodeableConcept

The value for this dependency

Out Parameters:
NameCardinalityTypeBindingProfileDocumentation
result1..1boolean

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

message0..1string

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)

match0..*

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.equivalence0..1code

A code indicating the equivalence of the translation, using values from [ConceptMapEquivalence]{concept-map-equivalence.html}

match.concept0..1Coding

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)

dependency0..*

Dependencies for this target (replicates input)

dependency.element0..1uri

The element for this dependency

dependency.concept0..1Coding

The value for this dependency

 

Profile Content

The official URL for this profile is:

http://hl7.org/fhir/StructureDefinition/conceptmap-profile

A map from one set of concepts to one or more other concepts

Name Flags Card. Type Description & Constraints
.. ConceptMap0..*ConceptMap A map from one set of concepts to one or more other concepts
... meta0..1Meta Metadata about the resource
... implicitRules?! 0..1uri A set of rules under which this content was created
... language0..1code Language of the resource content

Binding: IETF BCP-47 (required )
... textI0..1Narrative Text summary of the resource, for human interpretation
... contained0..*Resource Contained, inline Resources
... extension0..*Extension Additional Content defined by implementations
... modifierExtension?!0..*Extension Extensions that cannot be ignored
... url0..1uri Globally unique logical id for concept map
... identifier0..1Identifier Additional identifier for the concept map
... version0..1string Logical id for this version of the concept map
... name0..1string Informal name for this concept map
... status?! S1..1code draft | active | retired

Binding: ConformanceResourceStatus (required )
... experimental0..1boolean If for testing purposes, not real usage
... publisher0..1string Name of the publisher (organization or individual)
... contact0..*BackboneElement Contact details of the publisher
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... name0..1string Name of a individual to contact
.... telecom0..*ContactPoint Contact details for individual or publisher
... date0..1dateTime Date for given status
... description0..1string Human language description of the concept map
... useContext0..*CodeableConcept Content intends to support these contexts

Binding: Context of Use ValueSet (extensible )
... requirements0..1string Why needed
... copyright0..1string Use and/or publishing restrictions
... source[x]1..1uri , Reference (ValueSet ), Reference (StructureDefinition )Identifies the source of the concepts which are being mapped
... target[x]1..1uri , Reference (ValueSet ), Reference (StructureDefinition )Provides context to the mappings
... element0..*BackboneElement Mappings for a concept from the source set
.... extension0..*Extension Additional Content defined by implementations
.... modifierExtension?!0..*Extension Extensions that cannot be ignored
.... codeSystem0..1uri Code System (if value set crosses code systems)
.... code0..1code Identifies element being mapped
.... targetI0..*BackboneElement Concept in target system for element

cmd-1: If the map is narrower or inexact, there SHALL be some comments
..... extension0..*Extension Additional Content defined by implementations
..... modifierExtension?!0..*Extension Extensions that cannot be ignored
..... codeSystem0..1uri System of the target (if necessary)
..... code0..1code Code that identifies the target element
..... equivalence?! S1..1code equivalent | equal | wider | subsumes | narrower | specializes | inexact | unmatched | disjoint

Binding: ConceptMapEquivalence (required )
..... commentsI0..1string Description of status/issues in mapping
..... dependsOn0..*BackboneElement Other elements required for this mapping (from context)
...... extension0..*Extension Additional Content defined by implementations
...... modifierExtension?!0..*Extension Extensions that cannot be ignored
...... element1..1uri Reference to element/field/ValueSet mapping depends on
...... codeSystem1..1uri Code System (if necessary)
...... code1..1string Value of the referenced element
..... product0..*Other concepts that this mapping also produces