$translate on ConceptMap
All the examples can be found at the "FHIR ConceptMap Resource and translation"
community notebook which is accessible via your Aidbox Notebooks UI Tab
Parameters and usage
Parameter | Type | Description |
---|---|---|
code | required | The code that is to be translated |
system | required | The system for the code that is to be translated |
url | optional | A canonical URL for a concept map. Ignored when ConceptMap id is provided |
reverse | optional | If true, the translate should return all the codes that might be mapped to the given code |
Example request
GET /fhir/ConceptMap/cm1/$translate?code=fetus-speciment&system=http://snomed&reverse=true
status: 200
body:
resourceType: Parameters
parameter:
- name: result
valueBoolean: true
- name: match
part:
- name: equivalence
valueCode: equivalent
- name: concept
valueCoding:
system: http://hl7
code: fetus-scalp
userSelected: false
- name: source
valueUri: http://cm1
- name: product
part:
- name: element
valueUri: http://snomed/scalp-structure
- name: concept
valueCoding:
system: http://snomed
code: scalp-structure
userSelected: false
Ungrouping ConceptMaps on create
ConceptMaps are ungrouped on create to have an opportunity to use Search API instead of $tranalate operation. ConceptMaps are transformed into ConceptMapRule resources.
ConceptMapRule resource schema:
element
as in ConceptMapsource
: source system where concepts to be mapped are definedtarget
: target system that the concepts are to be mapped tosourceValueSet
: the source value set that contains the concepts that are being mappedtargetValueSet
: the target value set which provides context for the mappingsconceptMapId
: id of the original ConceptMapconceptmapUrl
: url of the original ConceptMapunmapped
: as in ConceptMap
Aidbox Search API for ConceptMapRule
GET /fhir/ConceptMapRule?.source=http://hl7.org/fhir/address-use&.target=http://terminology.hl7.org/CodeSystem/v3-AddressUse&.element.code=home&_elements=.element.target
status: 200
body:
resourceType: Bundle
type: searchset
meta:
versionId: '70'
total: 1
link:
- relation: first
url: "/fhir/ConceptMapRule?.source=http://hl7.org/fhir/address-use&.target=http://terminology.hl7.org/CodeSystem/v3-AddressUse&.element.code=home&_elements=.element.target&page=1"
- relation: self
url: "/fhir/ConceptMapRule?.source=http://hl7.org/fhir/address-use&.target=http://terminology.hl7.org/CodeSystem/v3-AddressUse&.element.code=home&_elements=.element.target&page=1"
entry:
- resource:
element:
target:
- code: H
display: home
equivalence: equivalent
id: 7378326f-d142-43d5-8ef4-97cdad65d159
resourceType: ConceptMapRule
Created ConceptMap does not have group
property as it is just a meta header resource.
Convert ConceptMap.json to ndjson bundle
In order to convert a huge ConceptMap to ndjson bundle use this FHIR converter.
java -jar [JAR_PATH] cmndj -i PATH/TO/CONCEPT_MAP.json -o PATH/TO/OUTPUT_BUNDLE.ndjson
The output bundle consists of ConceptMap meta resource and the set of ConceptMapRule resources.
Use aidbox.bulk data importto upload output bundle.
How to get full ConceptMap resource
Aidbox doesn't store ConceptMap groups in ConceptMap resource as mentioned above.
To get full ConceptMap resource make a request using /fhir
prefix.
Example:
GET /fhir/ConceptMap/my-concept-map