Structured Data Capture
4.0.0 - International flag

Structured Data Capture, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 4.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/sdc/ and changes regularly. See the Directory of published versions

Extension: Enable when expression

Official URL: http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression Version: 4.0.0
Standards status: Trial-use Active as of 2025-10-22 Maturity Level: 4 Computable Name: EnableWhenExpressionExtension
Other Identifiers: OID:2.16.840.1.113883.4.642.40.17.42.22

An expression that returns a boolean value for whether to enable the item. If the expression does not resolve to a boolean, it is considered an error in the design of the Questionnaire. Form renderer behavior is undefined. Some tools may attempt to force the value to be a boolean (e.g. is it a non-empty collection, non-null, non-zero - if so, then true). Systems SHOULD present a warning to the user if a non-boolean valued expression result does not trigger an all-out error.

Context of Use

Additional details on the use of this extension can be found on the Form Behavior page. For information on how enableWhenExpression enables complex conditional logic, refer to the Expressions page - enableWhenExpression section.

Usage info

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Extension Content

Description Differentials, Snapshots, and other representations.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..1 Extension Expression for when to enable the item
... extension 0..0
... url 1..1 uri "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression"
... value[x] C 0..1 Expression Value of extension
Constraints: sdc-inv1

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
sdc-inv1 error Extension.value[x] FHIR query language not allowed. language!='application/x-fhir-query'
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..1 Extension Expression for when to enable the item
... id 0..1 string Unique id for inter-element referencing
... extension 0..0
... url 1..1 uri "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression"

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
sdc-inv1 error Extension.value[x] FHIR query language not allowed. language!='application/x-fhir-query'

Summary

Simple Extension with the type Expression: An expression that returns a boolean value for whether to enable the item. If the expression does not resolve to a boolean, it is considered an error in the design of the Questionnaire. Form renderer behavior is undefined. Some tools may attempt to force the value to be a boolean (e.g. is it a non-empty collection, non-null, non-zero - if so, then true). Systems SHOULD present a warning to the user if a non-boolean valued expression result does not trigger an all-out error.

Maturity: 4

Differential ViewDifferential View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..1 Extension Expression for when to enable the item
... extension 0..0
... url 1..1 uri "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression"
... value[x] C 0..1 Expression Value of extension
Constraints: sdc-inv1

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
sdc-inv1 error Extension.value[x] FHIR query language not allowed. language!='application/x-fhir-query'

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. Extension 0..1 Extension Expression for when to enable the item
... id 0..1 string Unique id for inter-element referencing
... extension 0..0
... url 1..1 uri "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-enableWhenExpression"

doco Documentation for this format

Constraints

Id Grade Path(s) Description Expression
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
sdc-inv1 error Extension.value[x] FHIR query language not allowed. language!='application/x-fhir-query'

Summary

Simple Extension with the type Expression: An expression that returns a boolean value for whether to enable the item. If the expression does not resolve to a boolean, it is considered an error in the design of the Questionnaire. Form renderer behavior is undefined. Some tools may attempt to force the value to be a boolean (e.g. is it a non-empty collection, non-null, non-zero - if so, then true). Systems SHOULD present a warning to the user if a non-boolean valued expression result does not trigger an all-out error.

Maturity: 4

 

Other representations of profile: CSV, Excel, Schematron