Package | hl7.fhir.uv.sdc |
Type | StructureDefinition |
Id | sdc-questionnaire-answerOptionsToggleExpression |
FHIR Version | R4 |
Source | http://hl7.org/fhir/uv/sdc/https://build.fhir.org/ig/HL7/sdc/StructureDefinition-sdc-questionnaire-answerOptionsToggleExpression.html |
URL | http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression |
Version | 4.0.0-ballot |
Status | active |
Date | 2025-07-14T18:38:59+00:00 |
Name | AnswerOptionsToggleExpressionExtension |
Title | Answer Options Toggle Expression |
Realm | uv |
Authority | hl7 |
Description | A complex expression that provides a list of the allowed options that should be enabled or disabled based on the evaluation of a provided expression. It allows toggling of allowed answers based on context, including the answers provided to other expressions. Any options not listed by one of the answerOptionsToggleExpression occurrences are presumed to be 'enabled' |
Purpose | This is used when the set of options are fixed, but there is a need to toggle some of them on or off (as opposed to having the entire set of options dynamic, as is supported by answerExpression). |
Type | Extension |
Kind | complex-type |
StructureDefinition | |
sdc-questionnaire-behave | Advanced Behavior Questionnaire |
dtr-std-questionnaire | DTR Standard Questionnaire |
sdc-questionnaire-behave | Advanced Behavior Questionnaire |
No resources found
Note: links and images are rebased to the (stated) source
Generated Narrative: StructureDefinition sdc-questionnaire-answerOptionsToggleExpression
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
![]() ![]() | 0..* | Extension | Expression constraining allowed answers | |
![]() ![]() ![]() | 2..* | Extension | Extension | |
![]() ![]() ![]() | Content/Rules for all slices | |||
![]() ![]() ![]() ![]() | 1..* | Extension | Option(s) to toggle | |
![]() ![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() ![]() | 1..1 | uri | "option" | |
![]() ![]() ![]() ![]() ![]() | 1..1 | The option value to control | ||
![]() ![]() ![]() ![]() ![]() ![]() | date | |||
![]() ![]() ![]() ![]() ![]() ![]() | dateTime | |||
![]() ![]() ![]() ![]() ![]() ![]() | decimal | |||
![]() ![]() ![]() ![]() ![]() ![]() | integer | |||
![]() ![]() ![]() ![]() ![]() ![]() | string | |||
![]() ![]() ![]() ![]() ![]() ![]() | time | |||
![]() ![]() ![]() ![]() ![]() ![]() | uri | |||
![]() ![]() ![]() ![]() ![]() ![]() | Coding | |||
![]() ![]() ![]() ![]() ![]() ![]() | Quantity(SimpleQuantity) | |||
![]() ![]() ![]() ![]() ![]() ![]() | Reference(Any) | |||
![]() ![]() ![]() ![]() | 1..1 | Extension | The expression to toggle on | |
![]() ![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() ![]() | 1..1 | uri | "expression" | |
![]() ![]() ![]() ![]() ![]() | 1..1 | Expression | Expression value | |
![]() ![]() ![]() | 1..1 | uri | "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression" | |
![]() ![]() ![]() | 0..0 | |||
{ "resourceType": "StructureDefinition", "id": "sdc-questionnaire-answerOptionsToggleExpression", "text": { "status": "extensions", "div": "<!-- snip (see above) -->" }, "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "fhir" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 4, "_valueInteger": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom", "valueCanonical": "http://hl7.org/fhir/uv/sdc/ImplementationGuide/hl7.fhir.uv.sdc" } ] } }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "trial-use", "_valueCode": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom", "valueCanonical": "http://hl7.org/fhir/uv/sdc/ImplementationGuide/hl7.fhir.uv.sdc" } ] } } ], "url": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression", "identifier": [ { "system": "urn:ietf:rfc:3986", "value": "urn:oid:2.16.840.1.113883.4.642.40.17.42.12" } ], "version": "4.0.0-ballot", "name": "AnswerOptionsToggleExpressionExtension", "title": "Answer Options Toggle Expression", "status": "active", "date": "2025-07-14T18:38:59+00:00", "publisher": "HL7 International / FHIR Infrastructure", "contact": [ { "name": "HL7 International / FHIR Infrastructure", "telecom": [ { "system": "url", "value": "http://www.hl7.org/Special/committees/fiwg" } ] }, { "telecom": [ { "system": "url", "value": "http://www.hl7.org/Special/committees/fiwg" } ] } ], "description": "A complex expression that provides a list of the allowed options that should be enabled or disabled based on the evaluation of a provided expression. It allows toggling of allowed answers based on context, including the answers provided to other expressions. Any options not listed by one of the answerOptionsToggleExpression occurrences are presumed to be 'enabled'", "jurisdiction": [ { "coding": [ { "system": "http://unstats.un.org/unsd/methods/m49/m49.htm", "code": "001", "display": "World" } ] } ], "purpose": "This is used when the set of options are fixed, but there is a need to toggle some of them on or off (as opposed to having the entire set of options dynamic, as is supported by answerExpression).", "fhirVersion": "4.0.1", "mapping": [ { "identity": "rim", "uri": "http://hl7.org/v3", "name": "RIM Mapping" } ], "kind": "complex-type", "abstract": false, "context": [ { "type": "element", "expression": "Questionnaire.item" }, { "type": "element", "expression": "ElementDefinition" } ], "type": "Extension", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension", "derivation": "constraint", "snapshot": { "extension": [ { "url": "http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version", "valueString": "4.0.1" } ], "element": [ { "id": "Extension", "path": "Extension", "short": "Expression constraining allowed answers", "definition": "A complex expression that provides a list of the allowed options that should be enabled or disabled based on the evaluation of a provided expression. It allows toggling of allowed answers based on context, including the answers provided to other expressions.", "comment": "For example, this allows a list of conditions to be modified based on the gender of the patient", "min": 0, "max": "*", "base": { "path": "Extension", "min": 0, "max": "*" }, "condition": [ "ele-1" ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), 'value')])", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false }, { "id": "Extension.id", "path": "Extension.id", "representation": [ "xmlAttr" ], "short": "Unique id for inter-element referencing", "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.", "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "n/a" } ] }, { "id": "Extension.extension", "path": "Extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "short": "Extension", "definition": "An Extension", "min": 2, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:option", "path": "Extension.extension", "sliceName": "option", "short": "Option(s) to toggle", "definition": "Each repetition is an option to toggle based on the expression", "min": 1, "max": "*", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:option.id", "path": "Extension.extension.id", "representation": [ "xmlAttr" ], "short": "Unique id for inter-element referencing", "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.", "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "n/a" } ] }, { "id": "Extension.extension:option.extension", "path": "Extension.extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "short": "Extension", "definition": "An Extension", "min": 0, "max": "0", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:option.url", "path": "Extension.extension.url", "representation": [ "xmlAttr" ], "short": "identifies the meaning of the extension", "definition": "Source of the definition for the extension code - a logical name or a URL.", "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.", "min": 1, "max": "1", "base": { "path": "Extension.url", "min": 1, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "uri" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "fixedUri": "option", "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.extension:option.value[x]", "path": "Extension.extension.value[x]", "short": "The option value to control", "definition": "Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.html) for a list).", "min": 1, "max": "1", "base": { "path": "Extension.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "date" }, { "code": "dateTime" }, { "code": "decimal" }, { "code": "integer" }, { "code": "string" }, { "code": "time" }, { "code": "uri" }, { "code": "Coding" }, { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] }, { "code": "Reference" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.extension:expression", "path": "Extension.extension", "sliceName": "expression", "short": "The expression to toggle on", "definition": "If this expression evaluate's to 'true', then the specified options should be enabled, otherwise they should be disabled.", "min": 1, "max": "1", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:expression.id", "path": "Extension.extension.id", "representation": [ "xmlAttr" ], "short": "Unique id for inter-element referencing", "definition": "Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.", "min": 0, "max": "1", "base": { "path": "Element.id", "min": 0, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "string" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "n/a" } ] }, { "id": "Extension.extension:expression.extension", "path": "Extension.extension.extension", "slicing": { "discriminator": [ { "type": "value", "path": "url" } ], "description": "Extensions are always sliced by (at least) url", "rules": "open" }, "short": "Extension", "definition": "An Extension", "min": 0, "max": "0", "base": { "path": "Element.extension", "min": 0, "max": "*" }, "type": [ { "code": "Extension" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" }, { "key": "ext-1", "severity": "error", "human": "Must have either extensions or value[x], not both", "expression": "extension.exists() != value.exists()", "xpath": "exists(f:extension)!=exists(f:*[starts-with(local-name(.), \"value\")])", "source": "http://hl7.org/fhir/StructureDefinition/Extension" } ], "isModifier": false, "isSummary": false }, { "id": "Extension.extension:expression.url", "path": "Extension.extension.url", "representation": [ "xmlAttr" ], "short": "identifies the meaning of the extension", "definition": "Source of the definition for the extension code - a logical name or a URL.", "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.", "min": 1, "max": "1", "base": { "path": "Extension.url", "min": 1, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "uri" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "fixedUri": "expression", "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.extension:expression.value[x]", "path": "Extension.extension.value[x]", "short": "Expression value", "definition": "Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.html) for a list).", "min": 1, "max": "1", "base": { "path": "Extension.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "Expression" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.url", "path": "Extension.url", "representation": [ "xmlAttr" ], "short": "identifies the meaning of the extension", "definition": "Source of the definition for the extension code - a logical name or a URL.", "comment": "The definition may point directly to a computable or human-readable definition of the extensibility codes, or it may be a logical URI as declared in some other specification. The definition SHALL be a URI for the Structure Definition defining the extension.", "min": 1, "max": "1", "base": { "path": "Extension.url", "min": 1, "max": "1" }, "type": [ { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type", "valueUrl": "uri" } ], "code": "http://hl7.org/fhirpath/System.String" } ], "fixedUri": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression", "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] }, { "id": "Extension.value[x]", "path": "Extension.value[x]", "short": "Value of extension", "definition": "Value of extension - must be one of a constrained set of the data types (see [Extensibility](http://hl7.org/fhir/R4/extensibility.html) for a list).", "min": 0, "max": "0", "base": { "path": "Extension.value[x]", "min": 0, "max": "1" }, "type": [ { "code": "base64Binary" }, { "code": "boolean" }, { "code": "canonical" }, { "code": "code" }, { "code": "date" }, { "code": "dateTime" }, { "code": "decimal" }, { "code": "id" }, { "code": "instant" }, { "code": "integer" }, { "code": "markdown" }, { "code": "oid" }, { "code": "positiveInt" }, { "code": "string" }, { "code": "time" }, { "code": "unsignedInt" }, { "code": "uri" }, { "code": "url" }, { "code": "uuid" }, { "code": "Address" }, { "code": "Age" }, { "code": "Annotation" }, { "code": "Attachment" }, { "code": "CodeableConcept" }, { "code": "Coding" }, { "code": "ContactPoint" }, { "code": "Count" }, { "code": "Distance" }, { "code": "Duration" }, { "code": "HumanName" }, { "code": "Identifier" }, { "code": "Money" }, { "code": "Period" }, { "code": "Quantity" }, { "code": "Range" }, { "code": "Ratio" }, { "code": "Reference" }, { "code": "SampledData" }, { "code": "Signature" }, { "code": "Timing" }, { "code": "ContactDetail" }, { "code": "Contributor" }, { "code": "DataRequirement" }, { "code": "Expression" }, { "code": "ParameterDefinition" }, { "code": "RelatedArtifact" }, { "code": "TriggerDefinition" }, { "code": "UsageContext" }, { "code": "Dosage" }, { "code": "Meta" } ], "constraint": [ { "key": "ele-1", "severity": "error", "human": "All FHIR elements must have a @value or children", "expression": "hasValue() or (children().count() > id.count())", "xpath": "@value|f:*|h:div", "source": "http://hl7.org/fhir/StructureDefinition/Element" } ], "isModifier": false, "isSummary": false, "mapping": [ { "identity": "rim", "map": "N/A" } ] } ] }, "differential": { "element": [ { "id": "Extension", "path": "Extension", "short": "Expression constraining allowed answers", "definition": "A complex expression that provides a list of the allowed options that should be enabled or disabled based on the evaluation of a provided expression. It allows toggling of allowed answers based on context, including the answers provided to other expressions.", "comment": "For example, this allows a list of conditions to be modified based on the gender of the patient" }, { "id": "Extension.extension", "path": "Extension.extension", "min": 2 }, { "id": "Extension.extension:option", "path": "Extension.extension", "sliceName": "option", "short": "Option(s) to toggle", "definition": "Each repetition is an option to toggle based on the expression", "min": 1, "max": "*" }, { "id": "Extension.extension:option.extension", "path": "Extension.extension.extension", "max": "0" }, { "id": "Extension.extension:option.url", "path": "Extension.extension.url", "fixedUri": "option" }, { "id": "Extension.extension:option.value[x]", "path": "Extension.extension.value[x]", "short": "The option value to control", "min": 1, "type": [ { "code": "date" }, { "code": "dateTime" }, { "code": "decimal" }, { "code": "integer" }, { "code": "string" }, { "code": "time" }, { "code": "uri" }, { "code": "Coding" }, { "code": "Quantity", "profile": [ "http://hl7.org/fhir/StructureDefinition/SimpleQuantity" ] }, { "code": "Reference" } ] }, { "id": "Extension.extension:expression", "path": "Extension.extension", "sliceName": "expression", "short": "The expression to toggle on", "definition": "If this expression evaluate's to 'true', then the specified options should be enabled, otherwise they should be disabled.", "min": 1, "max": "1" }, { "id": "Extension.extension:expression.extension", "path": "Extension.extension.extension", "max": "0" }, { "id": "Extension.extension:expression.url", "path": "Extension.extension.url", "fixedUri": "expression" }, { "id": "Extension.extension:expression.value[x]", "path": "Extension.extension.value[x]", "short": "Expression value", "min": 1, "type": [ { "code": "Expression" } ] }, { "id": "Extension.url", "path": "Extension.url", "fixedUri": "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-answerOptionsToggleExpression" }, { "id": "Extension.value[x]", "path": "Extension.value[x]", "max": "0" } ] } }