DSTU2

This page is part of the FHIR Specification (v0.0.82: (v1.0.2: DSTU 1). 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

6.23.11 Resource ConceptMap - Operations

This resource has 3 2 operations associated with it. it:

$translate Concept Translation
$closure Closure Table Maintenance

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

6.23.11.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 outcome operation returns a set of parameters including a 'result' for whether there is an operationOutcome with hints, warnings, or errors, or acceptable match, and a list of possible matches. Note that the translated code in an extension 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

Formal Definition (as a OperationDefinition ).

URL: [base]/ConceptMap/$translate

URL: [base]/ConceptMap/[id]/$translate

Out Parameters: Name Cardinality Type StructureDefinition Documentation boolean 6.23.11.2 Batch Mode Translation Translate a set of concepts 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 Formal Definition (as a OperationDefinition ). URL: [base]/ConceptMap/$batch Out Parameters: Name Cardinality string
In Parameters:
Name Cardinality Type StructureDefinition 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

valueSet 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

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 1..1 uri

Identifies the value set in which a translation is sought. May be a logical id, or an absolute or relative location

result dependency 1..1 0..*

True if Another element that may help produce the concept could be translated correct mapping

message dependency.element 0..1 string uri

Error details, if result = false. If The element for this is provided when result = true, the message carries hints and wanrings dependency

equivalence dependency.concept 0..1 code CodeableConcept A code indicating the equivalence of the translation, using values from [ConceptMapEquivalence]{concept-equivalence.html} outcome 0..1 Coding

The translation outcome value for this dependency

In Out Parameters:
Name Cardinality Type StructureDefinition Binding Documentation Profile item 0..* Documentation An item to be translated
    concept result 1..1 CodeableConcept boolean

A codeable True if the concept to could be translated. If the source translated successfully. The value can only be true if at least one returned match has an equivalence which is a coding, not unmatched or a code/system pair, wrap it in a CodeableConcept disjoint

    target message 1..* 0..1 uri string

Identifies the value set in which a translation is sought. May be Error details, for display to a logical id, or an absolute or relative location. human. If more than one this is provided, multiple translations are requested for provided when result = true, the concept message carries hints and warnings (e.g. a note that the matches could be improved by providing additional detail)

    map match 0..1 0..* Reference ( ConceptMap )

A specific concept map to use for in the translation. If none is provided, target value set with an equivalence. Note that there may be multiple matches of equal or differing equivalence, and the server chooses which concept map to use matches may include equivalence values that mean that there is no match

Type match.equivalence StructureDefinition 0..1 Documentation item code 0..*

The outcome A code indicating the equivalence of validating an item. There must be an entry for every item in the same order translation, using values from [ConceptMapEquivalence]{concept-map-equivalence.html}

    result match.concept 1..1 0..1 boolean Coding

True if The translation outcome. Note that this would never have userSelected = true, since the concept process of translations implies that the user is not selecting the code (and only the client could be translated know differently)

    message match.product 0..1 0..*

Error details, if result = false. If this Another element that is provided when result = true, the message carries hints and wanrings product of this mapping

    equivalence match.product.element 0..1 code uri

A code indicating the equivalence of the translation, using values from [ConceptMapEquivalence]{concept-equivalence.html}. TODO: what about multiple translations? The element for this product

    outcome match.product.concept 0..1 CodeableConcept Coding

The translation outcome - a CodeableConcept to allow value for multiple translations this product

6.23.11.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" : "outcome",
      "valueCoding" : {
        "system" : "http://hl7.org/fhir/v3/ActStatus",
        "code" : "active",
      }
    }
  ]
}

 

6.23.11.3 6.23.11.2 Closure Table Maintenance

This operation provides support for ongoing maintenance of a client-side closure table based on server-side terminological logic. For details of how this is used, see Maintaining a Closure Table

Formal Definition (as a OperationDefinition ).

URL: [base]/$closure

In Parameters:
Name Cardinality Type StructureDefinition 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 StructureDefinition 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, narrower, wider, 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

6.23.11.2.1 Examples

Request:


POST [base]/$closure

{
  "resourceType" : "Parameters",
  "parameter" : [
    {
      "name" : "name",
      "valueId : "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"
        }
      ]
    },
  ]
}