description: Specifies a constraint that is enforced on instantiated (or target) resources. This extension can be applied to definitional resources (such as ActivityDefinition or Measure) and indicates that the constraint should be enforced on resources that are instantiated from the definition. For example, this extension can be used to define a constraint such as `numerator count must be less than or equal to denominator count`. package_name: hl7.fhir.uv.extensions.r3 derivation: constraint name: TargetConstraint type: Extension elements: extension: short: Unique identifier type: Extension index: 0 slicing: slices: key: match: {} schema: short: Unique identifier type: Extension _required: true index: 0 extensions: {} elements: extension: {index: 1} url: type: uri pattern: {type: uri, value: key} index: 2 value: choices: [valueId] index: 4 valueId: {type: id, choiceOf: value, index: 5} required: [value, valueId] requirements: match: {} schema: type: Extension short: Why the constraint is defined index: 6 extensions: {} elements: extension: {index: 7} url: type: uri pattern: {type: uri, value: requirements} index: 8 value: choices: [valueMarkdown] index: 10 valueMarkdown: {type: markdown, choiceOf: value, index: 11} required: [value, valueMarkdown] severity: match: {} schema: type: Extension short: error | warning _required: true index: 12 extensions: {} elements: extension: {index: 13} url: type: uri pattern: {type: uri, value: severity} index: 14 value: choices: [valueCode] index: 16 valueCode: {type: code, choiceOf: value, index: 17} required: [value, valueCode] expression: match: {} schema: short: The invariant expression type: Extension _required: true index: 18 extensions: _datatype: url: h type: Extension short: DataType name 'Expression' from R5 index: 20 elements: value: pattern: {type: string, value: Expression} choices: [valueString] type: string index: 22 valueString: type: string pattern: {type: string, value: Expression} choiceOf: value index: 23 required: [value, valueString] description: url: description short: Natural language description of the condition index: 24 extensions: {} elements: extension: {index: 25} url: pattern: {type: uri, value: description} type: uri index: 26 value: choices: [valueString] index: 28 valueString: {type: string, choiceOf: value, index: 29} required: [value, valueString] name: url: name short: Short name assigned to expression for reuse index: 30 extensions: {} elements: extension: {index: 31} url: pattern: {type: uri, value: name} type: uri index: 32 value: choices: [valueCode] index: 34 valueCode: {type: code, choiceOf: value, index: 35} required: [value, valueCode] language: url: language short: text/cql | text/fhirpath | application/x-fhir-query | etc. index: 36 extensions: {} elements: extension: {index: 37} url: pattern: {type: uri, value: language} type: uri index: 38 value: choices: [valueCode] index: 40 valueCode: {type: code, choiceOf: value, index: 41} required: [value, valueCode] expression: url: expression short: Expression in specified language index: 42 extensions: {} elements: extension: {index: 43} url: pattern: {type: uri, value: expression} type: uri index: 44 value: choices: [valueString] index: 46 valueString: {type: string, choiceOf: value, index: 47} required: [value, valueString] reference: url: reference short: Where the expression is found index: 48 extensions: {} elements: extension: {index: 49} url: pattern: {type: uri, value: reference} type: uri index: 50 value: choices: [valueUri] index: 52 valueUri: {type: uri, choiceOf: value, index: 53} required: [value, valueUri] elements: extension: array: true index: 19 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: null slices: _datatype: match: {url: null} schema: type: Extension short: DataType name 'Expression' from R5 url: h index: 20 elements: value: pattern: {type: string, value: Expression} choices: [valueString] type: string index: 22 valueString: type: string pattern: {type: string, value: Expression} choiceOf: value index: 23 required: [value, valueString] description: match: {url: description} schema: short: Natural language description of the condition index: 24 extensions: {} elements: extension: {index: 25} url: pattern: {type: uri, value: description} type: uri index: 26 value: choices: [valueString] index: 28 valueString: {type: string, choiceOf: value, index: 29} required: [value, valueString] name: match: {url: name} schema: short: Short name assigned to expression for reuse index: 30 extensions: {} elements: extension: {index: 31} url: pattern: {type: uri, value: name} type: uri index: 32 value: choices: [valueCode] index: 34 valueCode: {type: code, choiceOf: value, index: 35} required: [value, valueCode] language: match: {url: language} schema: short: text/cql | text/fhirpath | application/x-fhir-query | etc. index: 36 extensions: {} elements: extension: {index: 37} url: pattern: {type: uri, value: language} type: uri index: 38 value: choices: [valueCode] index: 40 valueCode: {type: code, choiceOf: value, index: 41} required: [value, valueCode] expression: match: {url: expression} schema: short: Expression in specified language index: 42 extensions: {} elements: extension: {index: 43} url: pattern: {type: uri, value: expression} type: uri index: 44 value: choices: [valueString] index: 46 valueString: {type: string, choiceOf: value, index: 47} required: [value, valueString] reference: match: {url: reference} schema: short: Where the expression is found index: 48 extensions: {} elements: extension: {index: 49} url: pattern: {type: uri, value: reference} type: uri index: 50 value: choices: [valueUri] index: 52 valueUri: {type: uri, choiceOf: value, index: 53} required: [value, valueUri] url: type: uri pattern: {type: uri, value: expression} index: 54 value: choices: [] index: 56 human: match: {} schema: type: Extension short: Human-readable rule _required: true index: 57 extensions: {} elements: extension: {index: 58} url: type: uri pattern: {type: uri, value: human} index: 59 value: choices: [valueString] index: 61 valueString: {type: string, choiceOf: value, index: 62} required: [value, valueString] location: match: {} schema: type: Extension short: Relative path to elements array: true index: 63 extensions: {} elements: extension: {index: 64} url: type: uri pattern: {type: uri, value: location} index: 65 value: choices: [valueString] index: 67 valueString: {type: string, choiceOf: value, index: 68} required: [value, valueString] url: pattern: {type: uri, value: 'http://hl7.org/fhir/StructureDefinition/targetConstraint'} type: uri index: 69 value: choices: [] index: 71 package_version: 5.3.0-ballot-tc1 extensions: key: url: null short: Unique identifier type: Extension _required: true index: 0 extensions: {} elements: extension: {index: 1} url: type: uri pattern: {type: uri, value: key} index: 2 value: choices: [valueId] index: 4 valueId: {type: id, choiceOf: value, index: 5} required: [value, valueId] requirements: url: null type: Extension short: Why the constraint is defined index: 6 extensions: {} elements: extension: {index: 7} url: type: uri pattern: {type: uri, value: requirements} index: 8 value: choices: [valueMarkdown] index: 10 valueMarkdown: {type: markdown, choiceOf: value, index: 11} required: [value, valueMarkdown] severity: url: null type: Extension short: error | warning _required: true index: 12 extensions: {} elements: extension: {index: 13} url: type: uri pattern: {type: uri, value: severity} index: 14 value: choices: [valueCode] index: 16 valueCode: {type: code, choiceOf: value, index: 17} required: [value, valueCode] expression: url: null short: The invariant expression type: Extension _required: true index: 18 extensions: _datatype: url: h type: Extension short: DataType name 'Expression' from R5 index: 20 elements: value: pattern: {type: string, value: Expression} choices: [valueString] type: string index: 22 valueString: type: string pattern: {type: string, value: Expression} choiceOf: value index: 23 required: [value, valueString] description: url: description short: Natural language description of the condition index: 24 extensions: {} elements: extension: {index: 25} url: pattern: {type: uri, value: description} type: uri index: 26 value: choices: [valueString] index: 28 valueString: {type: string, choiceOf: value, index: 29} required: [value, valueString] name: url: name short: Short name assigned to expression for reuse index: 30 extensions: {} elements: extension: {index: 31} url: pattern: {type: uri, value: name} type: uri index: 32 value: choices: [valueCode] index: 34 valueCode: {type: code, choiceOf: value, index: 35} required: [value, valueCode] language: url: language short: text/cql | text/fhirpath | application/x-fhir-query | etc. index: 36 extensions: {} elements: extension: {index: 37} url: pattern: {type: uri, value: language} type: uri index: 38 value: choices: [valueCode] index: 40 valueCode: {type: code, choiceOf: value, index: 41} required: [value, valueCode] expression: url: expression short: Expression in specified language index: 42 extensions: {} elements: extension: {index: 43} url: pattern: {type: uri, value: expression} type: uri index: 44 value: choices: [valueString] index: 46 valueString: {type: string, choiceOf: value, index: 47} required: [value, valueString] reference: url: reference short: Where the expression is found index: 48 extensions: {} elements: extension: {index: 49} url: pattern: {type: uri, value: reference} type: uri index: 50 value: choices: [valueUri] index: 52 valueUri: {type: uri, choiceOf: value, index: 53} required: [value, valueUri] elements: extension: array: true index: 19 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: null slices: _datatype: match: {url: null} schema: type: Extension short: DataType name 'Expression' from R5 url: h index: 20 elements: value: pattern: {type: string, value: Expression} choices: [valueString] type: string index: 22 valueString: type: string pattern: {type: string, value: Expression} choiceOf: value index: 23 required: [value, valueString] description: match: {url: description} schema: short: Natural language description of the condition index: 24 extensions: {} elements: extension: {index: 25} url: pattern: {type: uri, value: description} type: uri index: 26 value: choices: [valueString] index: 28 valueString: {type: string, choiceOf: value, index: 29} required: [value, valueString] name: match: {url: name} schema: short: Short name assigned to expression for reuse index: 30 extensions: {} elements: extension: {index: 31} url: pattern: {type: uri, value: name} type: uri index: 32 value: choices: [valueCode] index: 34 valueCode: {type: code, choiceOf: value, index: 35} required: [value, valueCode] language: match: {url: language} schema: short: text/cql | text/fhirpath | application/x-fhir-query | etc. index: 36 extensions: {} elements: extension: {index: 37} url: pattern: {type: uri, value: language} type: uri index: 38 value: choices: [valueCode] index: 40 valueCode: {type: code, choiceOf: value, index: 41} required: [value, valueCode] expression: match: {url: expression} schema: short: Expression in specified language index: 42 extensions: {} elements: extension: {index: 43} url: pattern: {type: uri, value: expression} type: uri index: 44 value: choices: [valueString] index: 46 valueString: {type: string, choiceOf: value, index: 47} required: [value, valueString] reference: match: {url: reference} schema: short: Where the expression is found index: 48 extensions: {} elements: extension: {index: 49} url: pattern: {type: uri, value: reference} type: uri index: 50 value: choices: [valueUri] index: 52 valueUri: {type: uri, choiceOf: value, index: 53} required: [value, valueUri] url: type: uri pattern: {type: uri, value: expression} index: 54 value: choices: [] index: 56 human: url: null type: Extension short: Human-readable rule _required: true index: 57 extensions: {} elements: extension: {index: 58} url: type: uri pattern: {type: uri, value: human} index: 59 value: choices: [valueString] index: 61 valueString: {type: string, choiceOf: value, index: 62} required: [value, valueString] location: url: null type: Extension short: Relative path to elements array: true index: 63 extensions: {} elements: extension: {index: 64} url: type: uri pattern: {type: uri, value: location} index: 65 value: choices: [valueString] index: 67 valueString: {type: string, choiceOf: value, index: 68} required: [value, valueString] class: extension kind: complex-type url: http://hl7.org/fhir/StructureDefinition/targetConstraint base: http://hl7.org/fhir/StructureDefinition/Extension version: 5.3.0-ballot-tc1 required: [extension]