All examples below can be executed in the REST Console of your Box in Aidbox.Cloud. Just copy/paste a sample into the REST Console and click the EXECUTE button or press Ctrl+Enter.
CRUD
CRUD is fully supported for the ValueSet resource in Aidbox.
POST /ValueSet
content-type: text/yaml
description: The gender of a person used for administrative purposes. 2
compose:
include:
- system: http://hl7.org/fhir/administrative-gender
exclude:
- system: http://hl7.org/fhir/administrative-gender
concept:
- code: other
- code: unknown
name: AdministrativeGender2
experimental: true
resourceType: ValueSet
status: draft
id: administrative-gender2
url: http://hl7.org/fhir/ValueSet/administrative-gender2
immutable: true
description: The gender of a person used for administrative purposes. 2
compose:
exclude:
- system: http://hl7.org/fhir/administrative-gender
concept:
- code: other
- code: unknown
include:
- system: http://hl7.org/fhir/administrative-gender
name: AdministrativeGender2
experimental: true
resourceType: ValueSet
status: draft
id: administrative-gender2
url: http://hl7.org/fhir/ValueSet/administrative-gender2
immutable: true
PUT /ValueSet/administrative-gender2
description: The gender of a person used for administrative purposes. 2
compose:
include:
- system: http://hl7.org/fhir/administrative-gender
exclude:
- system: http://hl7.org/fhir/administrative-gender
concept:
- code: other
- code: unknown
name: AdministrativeGender2
experimental: true
resourceType: ValueSet
status: draft
id: administrative-gender2
url: http://hl7.org/fhir/ValueSet/administrative-gender2
immutable: true
version: 3.3.2
description: The gender of a person used for administrative purposes. 2
compose:
exclude:
- system: http://hl7.org/fhir/administrative-gender
concept:
- code: other
- code: unknown
include:
- system: http://hl7.org/fhir/administrative-gender
name: AdministrativeGender2
experimental: true
resourceType: ValueSet
status: draft
id: administrative-gender2
url: http://hl7.org/fhir/ValueSet/administrative-gender2
immutable: true
version: 3.3.2
GET /ValueSet/administrative-gender2
description: The gender of a person used for administrative purposes. 2
compose:
exclude:
- system: http://hl7.org/fhir/administrative-gender
concept:
- code: other
- code: unknown
include:
- system: http://hl7.org/fhir/administrative-gender
name: AdministrativeGender2
experimental: true
resourceType: ValueSet
status: draft
id: administrative-gender2
url: http://hl7.org/fhir/ValueSet/administrative-gender2
immutable: true
version: 3.3.2
DELETE /ValueSet/administrative-gender2
ValueSet Compose Parameters
We will show examples of using the compose element by expanding different value sets.
include.concept
Create a ValueSet using the include.concept element. The result will include only listed concepts: kg and m.
POST /ValueSet/$expand
content-type: text/yaml
resourceType: Parameters
parameter:
- name: valueSet
resource:
resourceType: ValueSet
id: sample-valueset-include-concept
status: draft
compose:
include:
- system: http://unitsofmeasure.org
concept:
- code: kg
display: kilogram
- code: m
display: meter
resourceType: ValueSet
id: sample-valueset-include-concept
status: draft
compose:
include:
- system: http://unitsofmeasure.org
concept:
- code: kg
display: kilogram
- code: m
display: meter
expansion:
timestamp: '2018-10-25T14:40:09Z'
identifier:
contains:
- code: kg
system: http://unitsofmeasure.org
display: kilogram
- code: m
system: http://unitsofmeasure.org
display: meter
include.filter
Create a ValueSet using the include.filter element.
expansion:
timestamp: '2018-10-05T11:56:22Z'
identifier: http://hl7.org/fhir/ValueSet/sample-valueset-include-filter
contains:
- {code: sms, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: SMS, definition: 'A contact that can be used for sending an sms message (e.g. mobile phones, some landlines)'}
...
exclude.concept
Create a ValueSet using the exclude.concept element.
Include all concepts from the http://hl7.org/fhir/contact-point-system system and exclude concepts pager, url, and other. Now the value set should include only values phone, fax, email, and sms.
expansion:
timestamp: '2018-10-05T12:13:23Z'
identifier: http://hl7.org/fhir/ValueSet/sample-valueset-exclude-concept
contains:
- {code: phone, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: Phone, definition: The value is a telephone number used for voice calls. Use of full international numbers starting with + is recommended to enable automatic dialing support but not required.}
- {code: fax, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: Fax, definition: The value is a fax machine. Use of full international numbers starting with + is recommended to enable automatic dialing support but not required.}
- {code: email, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: Email, definition: The value is an email address.}
- {code: sms, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: SMS, definition: 'A contact that can be used for sending an sms message (e.g. mobile phones, some landlines)'}
...
exclude.filter
Create a ValueSet using the exclude.filter element.
Include all concepts from the http://hl7.org/fhir/contact-point-system code system and exclude concepts by the filter: exclude all concepts with the length of code = 3 (sms, fax, url). So the value set should include only values: phone, email, pager, and other.
expansion:
timestamp: '2018-10-05T14:59:15Z'
identifier: http://hl7.org/fhir/ValueSet/sample-valueset-exclude-filter
contains:
- {code: phone, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: Phone, definition: The value is a telephone number used for voice calls. Use of full international numbers starting with + is recommended to enable automatic dialing support but not required.}
- {code: email, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: Email, definition: The value is an email address.}
- {code: pager, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: Pager, definition: The value is a pager number. These may be local pager numbers that are only usable on a particular pager system.}
- {code: other, module: fhir-3.3.0, system: 'http://hl7.org/fhir/contact-point-system', display: Other, definition: 'A contact that is not a phone, fax, page or email address and is not expressible as a URL. E.g. Internal mail address. This SHOULD NOT be used for contacts that are expressible as a URL (e.g. Skype, Twitter, Facebook, etc.) Extensions may be used to distinguish "other" contact types.'}
...
include.valueSet
Selects concepts found in this value set. This is an absolute URI that is a reference to ValueSet.url.
concept and filter don't apply to valueSet.
N/B: ValueSet.compose.include.valueSet **** should be an array not a string.
Let's include the administrative-gender value set. There will be 4 concepts: male, female, unknown, and other.
Let's exclude administrative-gender2 which consists of male and female from administrative-gender code system. The result will be 2 values: other and unknown.
expansion:
timestamp: '2018-10-08T12:26:56Z'
identifier: http://hl7.org/fhir/ValueSet/valueset-filter-equals
contains:
- {code: cancelled, module: fhir-3.3.0, system: 'http://hl7.org/fhir/goal-status', display: Cancelled, definition: The previously accepted goal is no longer being sought}
...
Is A (by subsumption)
Let's include all concepts that have a transitive is-a relationship with the concept code in-progress provided as the value including the provided concept itself (i.e. include self and child codes). The result will include 5 values: in-progress, on-target, ahead-of-target, behind-target, and sustaining.
expansion:
timestamp: '2018-10-08T12:56:36Z'
identifier: http://hl7.org/fhir/ValueSet/valueset-filter-is-a
contains:
- code: in-progress
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: In Progress
hierarchy: [accepted]
definition: The goal is being sought but has not yet been reached. (Also applies if goal was reached in the past but there has been regression and goal is being sought again)
- code: on-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: On Target
hierarchy: [accepted, in-progress]
definition: The goal is on schedule for the planned timelines
- code: ahead-of-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Ahead of Target
hierarchy: [accepted, in-progress]
definition: The goal is ahead of the planned timelines
- code: behind-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Behind Target
hierarchy: [accepted, in-progress]
definition: The goal is behind the planned timelines
- code: sustaining
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Sustaining
hierarchy: [accepted, in-progress]
definition: The goal has been met, but ongoing activity is needed to sustain the goal objective
...
Descendent Of (by subsumption)
Let's include all concepts that have a transitive is-a relationship with the concept code in-progress provided as the value excluding the provided concept itself (i.e. include child codes). The result will include 4 values: on-target, ahead-of-target, behind-target, and sustaining.
expansion:
timestamp: '2018-10-08T13:02:33Z'
identifier: http://hl7.org/fhir/ValueSet/valueset-filter-descendent-of
contains:
- code: on-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: On Target
hierarchy: [accepted, in-progress]
definition: The goal is on schedule for the planned timelines
- code: ahead-of-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Ahead of Target
hierarchy: [accepted, in-progress]
definition: The goal is ahead of the planned timelines
- code: behind-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Behind Target
hierarchy: [accepted, in-progress]
definition: The goal is behind the planned timelines
- code: sustaining
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Sustaining
hierarchy: [accepted, in-progress]
definition: The goal has been met, but ongoing activity is needed to sustain the goal objective
...
Not (Is A) (by subsumption)
Let's include all codes where the specified property of the code does not have an is-a relationship with the provided value accepted. The result will include 4 values whose parent is not accepted: proposed, cancelled, rejected, and entered-in-error.
Please notice that regular expressions require an additional character escaping in JSON.
Let's include codes where the specified property of the code matches the regex specified in the provided value \\w{8}. The result will include 4 values that have 8 symbols in length: proposed, accepted, achieved, and rejected.
expansion:
timestamp: '2018-10-08T13:32:27Z'
identifier: http://hl7.org/fhir/ValueSet/valueset-filter-equals
contains:
- {code: proposed, module: fhir-3.3.0, system: 'http://hl7.org/fhir/goal-status', display: Proposed, definition: A goal is proposed for this patient}
- {code: accepted, module: fhir-3.3.0, system: 'http://hl7.org/fhir/goal-status', display: Accepted, definition: A proposed goal was accepted or acknowledged}
- code: achieved
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Achieved
hierarchy: [accepted]
definition: The goal has been met and no further action is needed
- {code: rejected, module: fhir-3.3.0, system: 'http://hl7.org/fhir/goal-status', display: Rejected, definition: A proposed goal was rejected}
...
In Set
Let's include concepts where the specified property of the code is in the set of codes specified in the provided value on-target,ahead-of-target,behind-target (comma separated list). The result will be 3 values: on-target, ahead-of-target, and behind-target.
expansion:
timestamp: '2018-10-08T13:49:22Z'
identifier: http://hl7.org/fhir/ValueSet/valueset-filter-in
contains:
- code: on-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: On Target
hierarchy: [accepted, in-progress]
definition: The goal is on schedule for the planned timelines
- code: ahead-of-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Ahead of Target
hierarchy: [accepted, in-progress]
definition: The goal is ahead of the planned timelines
- code: behind-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Behind Target
hierarchy: [accepted, in-progress]
definition: The goal is behind the planned timelines
...
Not in Set
Let's include concepts where the specified property of the code is not in the set of codes specified in the provided value accepted,achieved,ahead-of-target,behind-target,cancelled,entered-in-error,in-progress,on-hold,on-target,planned (comma separated list). The result will include 3 values: proposed, rejected, and sustaining.
expansion:
timestamp: '2018-10-08T14:10:21Z'
identifier: http://hl7.org/fhir/ValueSet/valueset-filter-not-in
contains:
- {code: proposed, module: fhir-3.3.0, system: 'http://hl7.org/fhir/goal-status', display: Proposed, definition: A goal is proposed for this patient}
- code: sustaining
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Sustaining
hierarchy: [accepted, in-progress]
definition: The goal has been met, but ongoing activity is needed to sustain the goal objective
- {code: rejected, module: fhir-3.3.0, system: 'http://hl7.org/fhir/goal-status', display: Rejected, definition: A proposed goal was rejected}
...
Generalizes (by Subsumption)
This parameter is not supported in Aidbox.
Exists
The specified property of the code has at least one value (if the specified value is true; if the specified value is false, then matches when the specified property of the code has no values).
Let's display concepts where property hierarchy exists. The result will include 8 concepts for which hierarchy is not an empty array: achieved, ahead-of-target, behind-target, in-progress, on-hold, on-target, planned, and sustaining.
expansion:
timestamp: '2018-10-08T15:14:18Z'
identifier: http://hl7.org/fhir/ValueSet/valueset-filter-exists
contains:
- code: planned
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Planned
hierarchy: [accepted]
definition: A goal is planned for this patient
- code: in-progress
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: In Progress
hierarchy: [accepted]
definition: The goal is being sought but has not yet been reached. (Also applies if goal was reached in the past but there has been regression and goal is being sought again)
- code: on-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: On Target
hierarchy: [accepted, in-progress]
definition: The goal is on schedule for the planned timelines
- code: ahead-of-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Ahead of Target
hierarchy: [accepted, in-progress]
definition: The goal is ahead of the planned timelines
- code: behind-target
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Behind Target
hierarchy: [accepted, in-progress]
definition: The goal is behind the planned timelines
- code: sustaining
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Sustaining
hierarchy: [accepted, in-progress]
definition: The goal has been met, but ongoing activity is needed to sustain the goal objective
- code: achieved
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: Achieved
hierarchy: [accepted]
definition: The goal has been met and no further action is needed
- code: on-hold
module: fhir-3.3.0
system: http://hl7.org/fhir/goal-status
display: On Hold
hierarchy: [accepted]
definition: The goal remains a long term objective but is no longer being actively pursued for a temporary period of time.
...