description: This cross-version extension represents DeviceComponent from http://hl7.org/fhir/StructureDefinition/DeviceComponent|1.0.2 for use in FHIR R4B. package_name: hl7.fhir.uv.xver-r2.r4b derivation: constraint name: Ext_R2_DeviceComponent type: Extension elements: extension: base: {max: '*', min: 0, path: Extension.extension} array: true min: 2 index: 0 slicing: rules: closed ordered: false discriminator: - {path: url, type: value} min: 2 slices: parent: match: {url: parent} schema: base: {max: '*', min: 0, path: Extension.extension} short: Parent resource link index: 16 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: parent} index: 17 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Parent resource link choices: [valueReference] index: 19 valueReference: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: Reference short: Parent resource link choiceOf: value index: 20 required: [url] parameterGroup: match: {url: parameterGroup} schema: base: {max: '*', min: 0, path: Extension.extension} short: Current supported parameter group index: 26 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: parameterGroup} index: 27 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Current supported parameter group choices: [valueCodeableConcept] index: 29 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Current supported parameter group choiceOf: value index: 30 required: [url] type: match: {url: type} schema: base: {max: '*', min: 0, path: Extension.extension} short: What kind of component it is _required: true index: 1 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: type} index: 2 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: What kind of component it is choices: [valueCodeableConcept] index: 4 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: What kind of component it is choiceOf: value index: 5 required: [url] source: match: {url: source} schema: base: {max: '*', min: 0, path: Extension.extension} short: A source device of this component index: 11 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: source} index: 12 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: A source device of this component choices: [valueReference] index: 14 valueReference: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: Reference short: A source device of this component choiceOf: value index: 15 required: [url] productionSpecification: match: {url: productionSpecification} schema: base: {max: '*', min: 0, path: Extension.extension} short: Production specification of the component array: true index: 36 extensions: specType: url: specType base: {max: '*', min: 0, path: Extension.extension} short: Specification type index: 38 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: specType} index: 39 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Specification type choices: [valueCodeableConcept] index: 41 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Specification type choiceOf: value index: 42 required: [url] componentId: url: componentId base: {max: '*', min: 0, path: Extension.extension} short: Internal component unique identification index: 43 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: componentId} index: 44 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Internal component unique identification choices: [valueIdentifier] index: 46 valueIdentifier: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: Identifier short: Internal component unique identification choiceOf: value index: 47 required: [url] productionSpec: url: productionSpec base: {max: '*', min: 0, path: Extension.extension} short: A printable string defining the component index: 48 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: productionSpec} index: 49 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: A printable string defining the component choices: [valueString] index: 51 valueString: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: string short: A printable string defining the component choiceOf: value index: 52 required: [url] elements: extension: base: {max: '*', min: 0, path: Extension.extension} array: true index: 37 slicing: rules: closed ordered: false discriminator: - {path: url, type: value} min: 0 slices: specType: match: {url: specType} schema: base: {max: '*', min: 0, path: Extension.extension} short: Specification type index: 38 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: specType} index: 39 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Specification type choices: [valueCodeableConcept] index: 41 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Specification type choiceOf: value index: 42 required: [url] componentId: match: {url: componentId} schema: base: {max: '*', min: 0, path: Extension.extension} short: Internal component unique identification index: 43 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: componentId} index: 44 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Internal component unique identification choices: [valueIdentifier] index: 46 valueIdentifier: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: Identifier short: Internal component unique identification choiceOf: value index: 47 required: [url] productionSpec: match: {url: productionSpec} schema: base: {max: '*', min: 0, path: Extension.extension} short: A printable string defining the component index: 48 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: productionSpec} index: 49 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: A printable string defining the component choices: [valueString] index: 51 valueString: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: string short: A printable string defining the component choiceOf: value index: 52 required: [url] url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: productionSpecification} index: 53 required: [url] languageCode: match: {url: languageCode} schema: base: {max: '*', min: 0, path: Extension.extension} short: Language code for the human-readable text strings produced by the device index: 54 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: languageCode} index: 55 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Language code for the human-readable text strings produced by the device choices: [valueCodeableConcept] index: 57 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Language code for the human-readable text strings produced by the device choiceOf: value index: 58 required: [url] operationalStatus: match: {url: operationalStatus} schema: base: {max: '*', min: 0, path: Extension.extension} short: Component operational status array: true index: 21 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: operationalStatus} index: 22 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Component operational status choices: [valueCodeableConcept] index: 24 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Component operational status choiceOf: value index: 25 required: [url] measurementPrinciple: match: {url: measurementPrinciple} schema: base: {max: '*', min: 0, path: Extension.extension} short: other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+ index: 31 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: measurementPrinciple} index: 32 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+ choices: [valueCode] index: 34 valueCode: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: code short: other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+ choiceOf: value index: 35 required: [url] lastSystemChange: match: {url: lastSystemChange} schema: base: {max: '*', min: 0, path: Extension.extension} short: Recent system change timestamp _required: true index: 6 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: lastSystemChange} index: 7 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Recent system change timestamp choices: [valueInstant] index: 9 valueInstant: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: instant short: Recent system change timestamp choiceOf: value index: 10 required: [url] url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: 'http://hl7.org/fhir/1.0/StructureDefinition/extension-DeviceComponent'} index: 59 package_version: 0.0.1-snapshot-2 extensions: parent: url: parent base: {max: '*', min: 0, path: Extension.extension} short: Parent resource link index: 16 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: parent} index: 17 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Parent resource link choices: [valueReference] index: 19 valueReference: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: Reference short: Parent resource link choiceOf: value index: 20 required: [url] parameterGroup: url: parameterGroup base: {max: '*', min: 0, path: Extension.extension} short: Current supported parameter group index: 26 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: parameterGroup} index: 27 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Current supported parameter group choices: [valueCodeableConcept] index: 29 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Current supported parameter group choiceOf: value index: 30 required: [url] type: url: type base: {max: '*', min: 0, path: Extension.extension} short: What kind of component it is _required: true index: 1 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: type} index: 2 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: What kind of component it is choices: [valueCodeableConcept] index: 4 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: What kind of component it is choiceOf: value index: 5 required: [url] source: url: source base: {max: '*', min: 0, path: Extension.extension} short: A source device of this component index: 11 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: source} index: 12 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: A source device of this component choices: [valueReference] index: 14 valueReference: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: Reference short: A source device of this component choiceOf: value index: 15 required: [url] productionSpecification: url: productionSpecification base: {max: '*', min: 0, path: Extension.extension} short: Production specification of the component array: true index: 36 extensions: specType: url: specType base: {max: '*', min: 0, path: Extension.extension} short: Specification type index: 38 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: specType} index: 39 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Specification type choices: [valueCodeableConcept] index: 41 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Specification type choiceOf: value index: 42 required: [url] componentId: url: componentId base: {max: '*', min: 0, path: Extension.extension} short: Internal component unique identification index: 43 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: componentId} index: 44 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Internal component unique identification choices: [valueIdentifier] index: 46 valueIdentifier: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: Identifier short: Internal component unique identification choiceOf: value index: 47 required: [url] productionSpec: url: productionSpec base: {max: '*', min: 0, path: Extension.extension} short: A printable string defining the component index: 48 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: productionSpec} index: 49 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: A printable string defining the component choices: [valueString] index: 51 valueString: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: string short: A printable string defining the component choiceOf: value index: 52 required: [url] elements: extension: base: {max: '*', min: 0, path: Extension.extension} array: true index: 37 slicing: rules: closed ordered: false discriminator: - {path: url, type: value} min: 0 slices: specType: match: {url: specType} schema: base: {max: '*', min: 0, path: Extension.extension} short: Specification type index: 38 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: specType} index: 39 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Specification type choices: [valueCodeableConcept] index: 41 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Specification type choiceOf: value index: 42 required: [url] componentId: match: {url: componentId} schema: base: {max: '*', min: 0, path: Extension.extension} short: Internal component unique identification index: 43 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: componentId} index: 44 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Internal component unique identification choices: [valueIdentifier] index: 46 valueIdentifier: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: Identifier short: Internal component unique identification choiceOf: value index: 47 required: [url] productionSpec: match: {url: productionSpec} schema: base: {max: '*', min: 0, path: Extension.extension} short: A printable string defining the component index: 48 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: productionSpec} index: 49 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: A printable string defining the component choices: [valueString] index: 51 valueString: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: string short: A printable string defining the component choiceOf: value index: 52 required: [url] url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: productionSpecification} index: 53 required: [url] languageCode: url: languageCode base: {max: '*', min: 0, path: Extension.extension} short: Language code for the human-readable text strings produced by the device index: 54 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: languageCode} index: 55 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Language code for the human-readable text strings produced by the device choices: [valueCodeableConcept] index: 57 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Language code for the human-readable text strings produced by the device choiceOf: value index: 58 required: [url] operationalStatus: url: operationalStatus base: {max: '*', min: 0, path: Extension.extension} short: Component operational status array: true index: 21 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: operationalStatus} index: 22 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Component operational status choices: [valueCodeableConcept] index: 24 valueCodeableConcept: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: CodeableConcept short: Component operational status choiceOf: value index: 25 required: [url] measurementPrinciple: url: measurementPrinciple base: {max: '*', min: 0, path: Extension.extension} short: other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+ index: 31 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: measurementPrinciple} index: 32 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+ choices: [valueCode] index: 34 valueCode: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: code short: other | chemical | electrical | impedance | nuclear | optical | thermal | biological | mechanical | acoustical | manual+ choiceOf: value index: 35 required: [url] lastSystemChange: url: lastSystemChange base: {max: '*', min: 0, path: Extension.extension} short: Recent system change timestamp _required: true index: 6 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: lastSystemChange} index: 7 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Recent system change timestamp choices: [valueInstant] index: 9 valueInstant: base: {max: '1', min: 0, path: 'Extension.value[x]'} type: instant short: Recent system change timestamp choiceOf: value index: 10 required: [url] class: extension kind: complex-type url: http://hl7.org/fhir/1.0/StructureDefinition/extension-DeviceComponent base: http://hl7.org/fhir/StructureDefinition/Extension|4.3.0 version: 0.0.1-snapshot-2 required: [url]