FHIR Extensions Pack, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 5.2.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-extensions/ and changes regularly. See the Directory of published versions
Page standards status: Deprecated | Maturity Level: 3 |
Definitions for the questionnaire-constraint extension.
Guidance on how to interpret the contents of this table can be found here
0. Extension | |
Definition | An invariant that must be satisfied before responses to the questionnaire can be considered "complete". |
Short | Constraint |
Comments | This maps to the ElementDefinition.constraint element. See additional guidance and examples in the SDC implementation guide. |
Control | 0..* |
2. Extension.extension:key | |
Slice Name | key |
Definition | Unique id for the constraint within the questionnaire. |
Short | Unique identifier |
Control | 1..1 |
Type | Extension |
4. Extension.extension:key.extension | |
Control | 0..0 |
6. Extension.extension:key.url | |
Type | uri |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Fixed Value | key |
8. Extension.extension:key.value[x] | |
Control | 1..? |
Type | id |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
10. Extension.extension:requirements | |
Slice Name | requirements |
Definition | An explanation of why this extension is required (for documentation purposes). |
Short | Why needed |
Control | 0..1 |
Type | Extension |
12. Extension.extension:requirements.extension | |
Control | 0..0 |
14. Extension.extension:requirements.url | |
Type | uri |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Fixed Value | requirements |
16. Extension.extension:requirements.value[x] | |
Control | 1..? |
Type | string |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
18. Extension.extension:severity | |
Slice Name | severity |
Definition | Indicates how serious violating the invariant is. |
Short | error|warning |
Control | 1..1 |
Type | Extension |
20. Extension.extension:severity.extension | |
Control | 0..0 |
22. Extension.extension:severity.url | |
Type | uri |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Fixed Value | severity |
24. Extension.extension:severity.value[x] | |
Control | 1..? |
Binding | The codes SHALL be taken from ConstraintSeverity (required to http://hl7.org/fhir/ValueSet/constraint-severity )How important the invariant is. |
Type | code |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
26. Extension.extension:expression | |
Slice Name | expression |
Definition | The FHIRPath expression of the rule for computable interpretation. |
Short | Formal rule |
Control | 1..1 |
Type | Extension |
28. Extension.extension:expression.extension | |
Control | 0..0 |
30. Extension.extension:expression.url | |
Type | uri |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Fixed Value | expression |
32. Extension.extension:expression.value[x] | |
Control | 1..? |
Type | string |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
34. Extension.extension:human | |
Slice Name | human |
Definition | A free text expression of the rule to display to the user if the rule is violated. |
Short | Human-readable rule |
Control | 1..1 |
Type | Extension |
36. Extension.extension:human.extension | |
Control | 0..0 |
38. Extension.extension:human.url | |
Type | uri |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Fixed Value | human |
40. Extension.extension:human.value[x] | |
Control | 1..? |
Type | string |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
42. Extension.extension:location | |
Slice Name | location |
Definition | Relative paths to the questions this rule is enforced against. |
Short | Relative path to elements |
Control | 0..* |
Type | Extension |
44. Extension.extension:location.extension | |
Control | 0..0 |
46. Extension.extension:location.url | |
Type | uri |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Fixed Value | location |
48. Extension.extension:location.value[x] | |
Control | 1..? |
Type | string |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
50. Extension.url | |
Fixed Value | http://hl7.org/fhir/StructureDefinition/questionnaire-constraint |
52. Extension.value[x] | |
Control | 0..0 |
Guidance on how to interpret the contents of this table can be found here
0. Extension | |
Definition | An invariant that must be satisfied before responses to the questionnaire can be considered "complete". Optional Extension Element - found in all resources. |
Short | ConstraintOptional Extensions Element |
Comments | This maps to the ElementDefinition.constraint element. See additional guidance and examples in the SDC implementation guide. |
Control | 0..* |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
2. Extension.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | Additional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | Changed:40..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
Slicing | This element introduces a set of slices on Extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
4. Extension.extension:key | |
Slice Name | key |
Definition | Unique id for the constraint within the questionnaire. |
Short | Unique identifierAdditional content defined by implementations |
Control | 10..1* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
6. Extension.extension:key.extension | |
Definition | An Extension May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | ExtensionAdditional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..0* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
8. Extension.extension:key.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | key |
10. Extension.extension:key.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 10..1 This element is affected by the following invariants: ext-1 |
Type | id, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, string, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
12. Extension.extension:requirements | |
Slice Name | requirements |
Definition | An explanation of why this extension is required (for documentation purposes). |
Short | Why neededAdditional content defined by implementations |
Control | 0..1* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
14. Extension.extension:requirements.extension | |
Definition | An Extension May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | ExtensionAdditional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..0* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
16. Extension.extension:requirements.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | requirements |
18. Extension.extension:requirements.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 10..1 This element is affected by the following invariants: ext-1 |
Type | string, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
20. Extension.extension:severity | |
Slice Name | severity |
Definition | Indicates how serious violating the invariant is. |
Short | error|warningAdditional content defined by implementations |
Control | 10..1* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
22. Extension.extension:severity.extension | |
Definition | An Extension May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | ExtensionAdditional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..0* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
24. Extension.extension:severity.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | severity |
26. Extension.extension:severity.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 10..1 This element is affected by the following invariants: ext-1 |
Binding | The codes SHALL be taken from For codes, see ConstraintSeverity (required to http://hl7.org/fhir/ValueSet/constraint-severity )How important the invariant is. |
Type | code, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, string, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
28. Extension.extension:expression | |
Slice Name | expression |
Definition | The FHIRPath expression of the rule for computable interpretation. |
Short | Formal ruleAdditional content defined by implementations |
Control | 10..1* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
30. Extension.extension:expression.extension | |
Definition | An Extension May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | ExtensionAdditional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..0* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
32. Extension.extension:expression.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | expression |
34. Extension.extension:expression.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 10..1 This element is affected by the following invariants: ext-1 |
Type | string, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
36. Extension.extension:human | |
Slice Name | human |
Definition | A free text expression of the rule to display to the user if the rule is violated. |
Short | Human-readable ruleAdditional content defined by implementations |
Control | 10..1* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
38. Extension.extension:human.extension | |
Definition | An Extension May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | ExtensionAdditional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..0* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
40. Extension.extension:human.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | human |
42. Extension.extension:human.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 10..1 This element is affected by the following invariants: ext-1 |
Type | string, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
44. Extension.extension:location | |
Slice Name | location |
Definition | Relative paths to the questions this rule is enforced against. |
Short | Relative path to elementsAdditional content defined by implementations |
Control | 0..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
46. Extension.extension:location.extension | |
Definition | An Extension May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | ExtensionAdditional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | 0..0* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists()) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
48. Extension.extension:location.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | location |
50. Extension.extension:location.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 10..1 This element is affected by the following invariants: ext-1 |
Type | string, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, RatioRange, Coding, SampledData, id, positiveInt, Distance, Availability, integer64, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ExtendedContactDetail, CodeableConcept, ParameterDefinition, dateTime, code, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, CodeableReference, Signature, unsignedInt, time |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
52. Extension.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | http://hl7.org/fhir/StructureDefinition/questionnaire-constraint |
54. Extension.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 0..01 This element is affected by the following invariants: ext-1 |
Type | Choice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference, SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count())) |
Guidance on how to interpret the contents of this table can be found here
0. Extension | |
Definition | An invariant that must be satisfied before responses to the questionnaire can be considered "complete". |
Short | Constraint |
Comments | This maps to the ElementDefinition.constraint element. See additional guidance and examples in the SDC implementation guide. |
Control | 0..* |
Is Modifier | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
2. Extension.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | id |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
4. Extension.extension | |
Definition | May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. |
Short | Additional content defined by implementations |
Comments | There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone. |
Control | Changed:4..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Alternate Names | extensions, user content |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
6. Extension.extension:key | |
Slice Name | key |
Definition | Unique id for the constraint within the questionnaire. |
Short | Unique identifier |
Control | 1..1 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
8. Extension.extension:key.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | id |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
10. Extension.extension:key.extension | |
Definition | An Extension |
Short | Extension |
Control | 0..0 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
12. Extension.extension:key.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | key |
14. Extension.extension:key.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 1..1 This element is affected by the following invariants: ext-1 |
Type | id |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
16. Extension.extension:requirements | |
Slice Name | requirements |
Definition | An explanation of why this extension is required (for documentation purposes). |
Short | Why needed |
Control | 0..1 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
18. Extension.extension:requirements.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | id |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
20. Extension.extension:requirements.extension | |
Definition | An Extension |
Short | Extension |
Control | 0..0 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
22. Extension.extension:requirements.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | requirements |
24. Extension.extension:requirements.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 1..1 This element is affected by the following invariants: ext-1 |
Type | string |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
26. Extension.extension:severity | |
Slice Name | severity |
Definition | Indicates how serious violating the invariant is. |
Short | error|warning |
Control | 1..1 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
28. Extension.extension:severity.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | id |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
30. Extension.extension:severity.extension | |
Definition | An Extension |
Short | Extension |
Control | 0..0 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
32. Extension.extension:severity.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | severity |
34. Extension.extension:severity.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 1..1 This element is affected by the following invariants: ext-1 |
Binding | The codes SHALL be taken from ConstraintSeverity (required to http://hl7.org/fhir/ValueSet/constraint-severity )How important the invariant is. |
Type | code |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
36. Extension.extension:expression | |
Slice Name | expression |
Definition | The FHIRPath expression of the rule for computable interpretation. |
Short | Formal rule |
Control | 1..1 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
38. Extension.extension:expression.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | id |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
40. Extension.extension:expression.extension | |
Definition | An Extension |
Short | Extension |
Control | 0..0 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
42. Extension.extension:expression.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | expression |
44. Extension.extension:expression.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 1..1 This element is affected by the following invariants: ext-1 |
Type | string |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
46. Extension.extension:human | |
Slice Name | human |
Definition | A free text expression of the rule to display to the user if the rule is violated. |
Short | Human-readable rule |
Control | 1..1 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
48. Extension.extension:human.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | id |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
50. Extension.extension:human.extension | |
Definition | An Extension |
Short | Extension |
Control | 0..0 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
52. Extension.extension:human.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | human |
54. Extension.extension:human.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 1..1 This element is affected by the following invariants: ext-1 |
Type | string |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
56. Extension.extension:location | |
Slice Name | location |
Definition | Relative paths to the questions this rule is enforced against. |
Short | Relative path to elements |
Control | 0..* |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
58. Extension.extension:location.id | |
Definition | Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces. |
Short | Unique id for inter-element referencing |
Control | 0..1 This element is affected by the following invariants: ele-1 |
Type | id |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
60. Extension.extension:location.extension | |
Definition | An Extension |
Short | Extension |
Control | 0..0 |
Type | Extension |
Is Modifier | false |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) )ext-1: Must have either extensions or value[x], not both ( extension.exists() != value.exists() ) |
Slicing | This element introduces a set of slices on Extension.extension.extension . The slices areUnordered and Open, and can be differentiated using the following discriminators: |
62. Extension.extension:location.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | location |
64. Extension.extension:location.value[x] | |
Definition | Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 1..1 This element is affected by the following invariants: ext-1 |
Type | string |
[x] Note | SeeChoice of Data Typesfor further information about how to use [x] |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |
66. Extension.url | |
Definition | Source of the definition for the extension code - a logical name or a URL. |
Short | identifies the meaning of the extension |
Comments | 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. |
Control | 1..1 |
Type | uri |
Is Modifier | false |
XML Format | In the XML format, this property is represented as an attribute. |
Summary | false |
Fixed Value | http://hl7.org/fhir/StructureDefinition/questionnaire-constraint |
68. Extension.value[x] | |
Definition | Changed: Value of extension - must be one of a constrained set of the data types (see Extensibility for a list). |
Short | Value of extension |
Control | 0..0 This element is affected by the following invariants: ext-1 |
Type | Choice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, integer64, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, CodeableReference, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, RatioRange, Reference, SampledData, Signature, Timing, ContactDetail, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Availability, ExtendedContactDetail, Dosage, Meta |
Is Modifier | false |
Primitive Value | This primitive element may be present, or absent, or replaced by an extension |
Summary | false |
Invariants | ele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()) ) |