Concept

Overview

Concept resource has a similar structure as Coding and CodeSystem.concept element. When you upload code system into Aidbox, we split CodeSystem resource into concepts. But for your convenience CRUD operations are allowed as well on the Concept resource. To create and manage simple dictionary/terminology, you can create a set of Concepts using Create operation.
1
resourceType: Concept
2
# id of concept; usually short name for terminology + code
3
id: loinc-17861-6
4
# inactivity flag
5
deprecated: true
6
system: http://loinc.org
7
code: 17861-6
8
display: Calcium [Mass/​volume] in Serum or Plasma
9
# pre-expanded list of valueset ids/urls
10
valueset:
11
- labs
12
definition: <Definition string>
13
hierarchy:
14
- parent-code-1
15
- parent-code-2
16
designation:
17
display:
18
ge: der Calcium
19
es: el calcium
20
ru: Кальций
21
definition:
22
ge: der Calcium
23
es: el calcium
24
property:
25
LOINC:
26
long_common_name: ...
27
relatednames2: ...
Copied!

Structure

deprecated

This is a boolean flag, which can be used to deactivate (but not delete) a concept. This is the best-practice for terminology management - never delete concepts, but deprecate

system

It's a symbolic link on CodeSystem

hierarchy

A hierarchy element contains codes of parent concepts for hierarchical terminologies from top to bottom. This element is used for Subsumption Operation where you test that some code isA another code.

designation

Designation element is copy semantic of CodeSystem.concept.designation - Additional representations for the concept - other languages, aliases, specialised purposes, used for particular purposes, etc. In Aidbox, it is represented in a more database-friendly format.
In CodeSystem.concept.designation is a collection of complex elements:
1
designation:
2
- use:
3
system: http://...designation-usage
4
code: display
5
language: ge
6
value: eigenclass
7
- use:
8
system: http://...designation-usage
9
code: display
10
language: es
11
value: el eigenclass
12
// to access it you need something like this
13
// designation.where(use='display' and language='ge').value
Copied!
In Aidbox, it's grouped by use.code and after that by language attributes:
1
designation:
2
display:
3
ge: der Calcium
4
es: el calcium
5
ru: Кальций
6
definition:
7
ge: der Calcium
8
es: el calcium
9
// much more easy with this format
10
// designation.display.ge
Copied!

property

Be careful, Concept.property is different from a FHIR CodeSystem.concept.property! Concept.property is just an arbitrary JSON object with custom properties. It is good practice to put these props under the unique CodeSystem key.
A property element is a polymorphic element, which contains additional properties for a concept like an axis of classification, etc. In Aidbox, we use a more database-oriented encoding with Object instead of the FHIR generic property array.
Example Concept with property:
1
resourceType: Concept
2
system: http://loinc.org
3
code: 17861-6
4
...
5
property:
6
LOINC:
7
long_common_name: ...
8
relatednames2: ...
Copied!
Last modified 1mo ago