This page is part of the FHIR Specification (v5.0.0-ballot: FHIR R5 Ballot Preview). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions
FHIR Infrastructure Work Group | Maturity Level: 1 | Informative | Use Context: Any |
Summary
Defining URL: | http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant |
Version: | 5.0.0-ballot |
Name: | targetInvariant |
Title: | null |
Modifier: | This extension is not a modifier extension |
Status: | draft |
Definition: | Specifies an invariant that is enforced in the context of an instantiated resource. |
Committee: | FHIR Infrastructure Work Group |
Status: draft. Extension maintained by: Health Level Seven, Inc. - CDS WG
Specifies an invariant that is enforced in the context of an instantiated resource.
Comment:
Can be used on any definitional artifact to define an invariant that is enforced in the context of an instantiated resource. The invariant expression will have access to %target
and %definition
variables, where target is the instantiated resource, and definition is the definition used to instantiate.
Context of Use: Use on Element ID Element
Summary
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | Extension | URL = http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant targetInvariant: Specifies an invariant that is enforced in the context of an instantiated resource. Use on Element ID Element | |
![]() ![]() ![]() | 1..1 | id | A unique identifier for the invariant (unique in the context of the resource). | |
![]() ![]() ![]() | 0..1 | string | A brief description of why the invariant is necessary or appropriate. | |
![]() ![]() ![]() | 1..1 | code | Whether the invariant indicates an error condition or a warning. | |
![]() ![]() ![]() | 1..1 | Expression | An expression providing a formal representation of the invariant condition. | |
![]() |
Full Structure
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | Extension | URL = http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant targetInvariant: Specifies an invariant that is enforced in the context of an instantiated resource. Use on Element ID Element | |
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() | 1..1 | Extension | Unique identifier | |
![]() ![]() ![]() ![]() | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | 1..1 | uri | "key" | |
![]() ![]() ![]() ![]() | 1..1 | id | Value of extension | |
![]() ![]() ![]() | 0..1 | Extension | Why the invariant is defined | |
![]() ![]() ![]() ![]() | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | 1..1 | uri | "requirements" | |
![]() ![]() ![]() ![]() | 1..1 | string | Value of extension | |
![]() ![]() ![]() | 1..1 | Extension | error | warning | |
![]() ![]() ![]() ![]() | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | 1..1 | uri | "severity" | |
![]() ![]() ![]() ![]() | 1..1 | code | Value of extension Binding: ConstraintSeverity (required) | |
![]() ![]() ![]() | 1..1 | Extension | The invariant expression | |
![]() ![]() ![]() ![]() | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | 1..1 | uri | "expression" | |
![]() ![]() ![]() ![]() | 1..1 | Expression | Value of extension | |
![]() ![]() ![]() | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant" | |
![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | base64Binary | |||
![]() ![]() ![]() ![]() | boolean | |||
![]() ![]() ![]() ![]() | canonical(Any) | |||
![]() ![]() ![]() ![]() | 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(Any) | |||
![]() ![]() ![]() ![]() | SampledData | |||
![]() ![]() ![]() ![]() | Signature | |||
![]() ![]() ![]() ![]() | Timing | |||
![]() ![]() ![]() ![]() | ContactDetail | |||
![]() ![]() ![]() ![]() | DataRequirement | |||
![]() ![]() ![]() ![]() | Expression | |||
![]() ![]() ![]() ![]() | ParameterDefinition | |||
![]() ![]() ![]() ![]() | RelatedArtifact | |||
![]() ![]() ![]() ![]() | TriggerDefinition | |||
![]() ![]() ![]() ![]() | UsageContext | |||
![]() ![]() ![]() ![]() | Availability | |||
![]() ![]() ![]() ![]() | ExtendedContactDetail | |||
![]() ![]() ![]() ![]() | Dosage | |||
![]() ![]() ![]() ![]() | Meta | |||
![]() |
XML Template
<!-- targetInvariant --><extension xmlns="http://hl7.org/fhir" url="http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant" > <-- extension sliced by value:url in the specified orderOpen--> <extension url="key"> I 1..1 Extension <!-- I 1..1 Unique identifier --> <valueId value="[id]"/><!-- I 1..1 Value of extension --> </extension> <extension url="requirements"> I 0..1 Extension <!-- I 0..1 Why the invariant is defined --> <valueString value="[string]"/><!-- I 1..1 Value of extension --> </extension> <extension url="severity"> I 1..1 Extension <!-- I 1..1 error | warning --> <valueCode value="[code]"/><!-- I 1..1 Value of extension --> </extension> <extension url="expression"> I 1..1 Extension <!-- I 1..1 The invariant expression --> <valueExpression><!-- I 1..1 Expression Value of extension --></valueExpression> </extension> </extension>
JSON Template
{ // targetInvariant "extension" : [ // sliced by value:url in the specified order, Open { // Unique identifier // I R! // from Element: extension "extension" : [ // sliced by value:url in the specified order, Open ] "url" : "key", // R! "valueId" : "<id>" // I R! Value of extension }, { // Why the invariant is defined // I // from Element: extension "extension" : [ // sliced by value:url in the specified order, Open ] "url" : "requirements", // R! "valueString" : "<string>" // I R! Value of extension }, { // error | warning // I R! // from Element: extension "extension" : [ // sliced by value:url in the specified order, Open ] "url" : "severity", // R! "valueCode" : "<code>" // I R! Value of extension }, { // The invariant expression // I R! // from Element: extension "extension" : [ // sliced by value:url in the specified order, Open ] "url" : "expression", // R! "valueExpression" : { Expression } // I R! Value of extension } ], "extension" : [{ Extension }], // IAdditional content defined by implementations "extension" : { Extension }, // I R! Unique identifier "extension" : { Extension }, // IWhy the invariant is defined "extension" : { Extension }, // I R! error | warning "extension" : { Extension }, // I R! The invariant expression "url" : "http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant" // R! // value[x]: Value of extension: Prohibited }
Summary
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | Extension | URL = http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant targetInvariant: Specifies an invariant that is enforced in the context of an instantiated resource. Use on Element ID Element | |
![]() ![]() ![]() | 1..1 | id | A unique identifier for the invariant (unique in the context of the resource). | |
![]() ![]() ![]() | 0..1 | string | A brief description of why the invariant is necessary or appropriate. | |
![]() ![]() ![]() | 1..1 | code | Whether the invariant indicates an error condition or a warning. | |
![]() ![]() ![]() | 1..1 | Expression | An expression providing a formal representation of the invariant condition. | |
![]() |
Full Structure
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | Extension | URL = http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant targetInvariant: Specifies an invariant that is enforced in the context of an instantiated resource. Use on Element ID Element | |
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() | 1..1 | Extension | Unique identifier | |
![]() ![]() ![]() ![]() | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | 1..1 | uri | "key" | |
![]() ![]() ![]() ![]() | 1..1 | id | Value of extension | |
![]() ![]() ![]() | 0..1 | Extension | Why the invariant is defined | |
![]() ![]() ![]() ![]() | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | 1..1 | uri | "requirements" | |
![]() ![]() ![]() ![]() | 1..1 | string | Value of extension | |
![]() ![]() ![]() | 1..1 | Extension | error | warning | |
![]() ![]() ![]() ![]() | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | 1..1 | uri | "severity" | |
![]() ![]() ![]() ![]() | 1..1 | code | Value of extension Binding: ConstraintSeverity (required) | |
![]() ![]() ![]() | 1..1 | Extension | The invariant expression | |
![]() ![]() ![]() ![]() | 0..1 | id | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | 1..1 | uri | "expression" | |
![]() ![]() ![]() ![]() | 1..1 | Expression | Value of extension | |
![]() ![]() ![]() | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant" | |
![]() ![]() ![]() | 0..0 | |||
![]() ![]() ![]() ![]() | base64Binary | |||
![]() ![]() ![]() ![]() | boolean | |||
![]() ![]() ![]() ![]() | canonical(Any) | |||
![]() ![]() ![]() ![]() | 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(Any) | |||
![]() ![]() ![]() ![]() | SampledData | |||
![]() ![]() ![]() ![]() | Signature | |||
![]() ![]() ![]() ![]() | Timing | |||
![]() ![]() ![]() ![]() | ContactDetail | |||
![]() ![]() ![]() ![]() | DataRequirement | |||
![]() ![]() ![]() ![]() | Expression | |||
![]() ![]() ![]() ![]() | ParameterDefinition | |||
![]() ![]() ![]() ![]() | RelatedArtifact | |||
![]() ![]() ![]() ![]() | TriggerDefinition | |||
![]() ![]() ![]() ![]() | UsageContext | |||
![]() ![]() ![]() ![]() | Availability | |||
![]() ![]() ![]() ![]() | ExtendedContactDetail | |||
![]() ![]() ![]() ![]() | Dosage | |||
![]() ![]() ![]() ![]() | Meta | |||
![]() |
XML Template
<!-- targetInvariant --><extension xmlns="http://hl7.org/fhir" url="http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant" > <-- extension sliced by value:url in the specified orderOpen--> <extension url="key"> I 1..1 Extension <!-- I 1..1 Unique identifier --> <valueId value="[id]"/><!-- I 1..1 Value of extension --> </extension> <extension url="requirements"> I 0..1 Extension <!-- I 0..1 Why the invariant is defined --> <valueString value="[string]"/><!-- I 1..1 Value of extension --> </extension> <extension url="severity"> I 1..1 Extension <!-- I 1..1 error | warning --> <valueCode value="[code]"/><!-- I 1..1 Value of extension --> </extension> <extension url="expression"> I 1..1 Extension <!-- I 1..1 The invariant expression --> <valueExpression><!-- I 1..1 Expression Value of extension --></valueExpression> </extension> </extension>
JSON Template
{ // targetInvariant "extension" : [ // sliced by value:url in the specified order, Open { // Unique identifier // I R! // from Element: extension "extension" : [ // sliced by value:url in the specified order, Open ] "url" : "key", // R! "valueId" : "<id>" // I R! Value of extension }, { // Why the invariant is defined // I // from Element: extension "extension" : [ // sliced by value:url in the specified order, Open ] "url" : "requirements", // R! "valueString" : "<string>" // I R! Value of extension }, { // error | warning // I R! // from Element: extension "extension" : [ // sliced by value:url in the specified order, Open ] "url" : "severity", // R! "valueCode" : "<code>" // I R! Value of extension }, { // The invariant expression // I R! // from Element: extension "extension" : [ // sliced by value:url in the specified order, Open ] "url" : "expression", // R! "valueExpression" : { Expression } // I R! Value of extension } ], "extension" : [{ Extension }], // IAdditional content defined by implementations "extension" : { Extension }, // I R! Unique identifier "extension" : { Extension }, // IWhy the invariant is defined "extension" : { Extension }, // I R! error | warning "extension" : { Extension }, // I R! The invariant expression "url" : "http://hl7.org/fhir/StructureDefinition/cqf-targetInvariant" // R! // value[x]: Value of extension: Prohibited }
Constraints
Search
No Search Extensions defined for this resource |
Examples of this extension
No examples found.