description: 'STU3: `TestScript.rule` (new:BackboneElement)' package_name: hl7.fhir.uv.xver-r3.r4 derivation: constraint name: ExtensionTestScript_Rule type: Extension elements: extension: base: {max: '*', min: 0, path: Extension.extension} array: true min: 1 index: 0 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: 1 slices: resource: match: {url: resource} schema: short: 'STU3: Assert rule resource reference (new)' _required: true base: {max: '*', min: 0, path: Extension.extension} index: 1 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: resource} index: 2 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Assert rule resource reference choices: [valueReference] index: 4 valueReference: short: Assert rule resource reference refers: ['http://hl7.org/fhir/3.0/StructureDefinition/profile-Resource|0.1.0', 'http://hl7.org/fhir/StructureDefinition/Resource|4.0.1'] type: Reference base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 5 required: [url, valueReference, value] param: match: {url: param} schema: short: 'STU3: Rule parameter template (new)' array: true base: {max: '*', min: 0, path: Extension.extension} index: 6 extensions: name: url: name short: 'STU3: Parameter name matching external assert rule parameter (new)' _required: true base: {max: '*', min: 0, path: Extension.extension} index: 8 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: name} index: 9 value: short: Parameter name matching external assert rule parameter choices: [valueString] base: {max: '1', min: 0, path: 'Extension.value[x]'} index: 11 valueString: short: Parameter name matching external assert rule parameter type: string base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 12 required: [url, valueString, value] value: url: value short: 'STU3: Parameter value defined either explicitly or dynamically (new)' base: {max: '*', min: 0, path: Extension.extension} index: 13 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: value} index: 14 value: short: Parameter value defined either explicitly or dynamically choices: [valueString] base: {max: '1', min: 0, path: 'Extension.value[x]'} index: 16 valueString: short: Parameter value defined either explicitly or dynamically type: string base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 17 required: [url] elements: extension: base: {max: '*', min: 0, path: Extension.extension} array: true min: 1 index: 7 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: 1 slices: name: match: {url: name} schema: short: 'STU3: Parameter name matching external assert rule parameter (new)' _required: true base: {max: '*', min: 0, path: Extension.extension} index: 8 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: name} index: 9 value: short: Parameter name matching external assert rule parameter choices: [valueString] base: {max: '1', min: 0, path: 'Extension.value[x]'} index: 11 valueString: short: Parameter name matching external assert rule parameter type: string base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 12 required: [url, valueString, value] value: match: {url: value} schema: short: 'STU3: Parameter value defined either explicitly or dynamically (new)' base: {max: '*', min: 0, path: Extension.extension} index: 13 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: value} index: 14 value: short: Parameter value defined either explicitly or dynamically choices: [valueString] base: {max: '1', min: 0, path: 'Extension.value[x]'} index: 16 valueString: short: Parameter value defined either explicitly or dynamically type: string base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 17 required: [url] url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: param} index: 18 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} choices: [] index: 20 required: [url, extension] url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: 'http://hl7.org/fhir/3.0/StructureDefinition/extension-TestScript.rule'} index: 21 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} choices: [] index: 23 package_version: 0.1.0 extensions: resource: url: resource short: 'STU3: Assert rule resource reference (new)' _required: true base: {max: '*', min: 0, path: Extension.extension} index: 1 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: resource} index: 2 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} short: Assert rule resource reference choices: [valueReference] index: 4 valueReference: short: Assert rule resource reference refers: ['http://hl7.org/fhir/3.0/StructureDefinition/profile-Resource|0.1.0', 'http://hl7.org/fhir/StructureDefinition/Resource|4.0.1'] type: Reference base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 5 required: [url, valueReference, value] param: url: param short: 'STU3: Rule parameter template (new)' array: true base: {max: '*', min: 0, path: Extension.extension} index: 6 extensions: name: url: name short: 'STU3: Parameter name matching external assert rule parameter (new)' _required: true base: {max: '*', min: 0, path: Extension.extension} index: 8 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: name} index: 9 value: short: Parameter name matching external assert rule parameter choices: [valueString] base: {max: '1', min: 0, path: 'Extension.value[x]'} index: 11 valueString: short: Parameter name matching external assert rule parameter type: string base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 12 required: [url, valueString, value] value: url: value short: 'STU3: Parameter value defined either explicitly or dynamically (new)' base: {max: '*', min: 0, path: Extension.extension} index: 13 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: value} index: 14 value: short: Parameter value defined either explicitly or dynamically choices: [valueString] base: {max: '1', min: 0, path: 'Extension.value[x]'} index: 16 valueString: short: Parameter value defined either explicitly or dynamically type: string base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 17 required: [url] elements: extension: base: {max: '*', min: 0, path: Extension.extension} array: true min: 1 index: 7 slicing: rules: open ordered: false discriminator: - {path: url, type: value} min: 1 slices: name: match: {url: name} schema: short: 'STU3: Parameter name matching external assert rule parameter (new)' _required: true base: {max: '*', min: 0, path: Extension.extension} index: 8 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: name} index: 9 value: short: Parameter name matching external assert rule parameter choices: [valueString] base: {max: '1', min: 0, path: 'Extension.value[x]'} index: 11 valueString: short: Parameter name matching external assert rule parameter type: string base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 12 required: [url, valueString, value] value: match: {url: value} schema: short: 'STU3: Parameter value defined either explicitly or dynamically (new)' base: {max: '*', min: 0, path: Extension.extension} index: 13 elements: url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: value} index: 14 value: short: Parameter value defined either explicitly or dynamically choices: [valueString] base: {max: '1', min: 0, path: 'Extension.value[x]'} index: 16 valueString: short: Parameter value defined either explicitly or dynamically type: string base: {max: '1', min: 0, path: 'Extension.value[x]'} choiceOf: value index: 17 required: [url] url: base: {max: '1', min: 1, path: Extension.url} pattern: {type: Uri, value: param} index: 18 value: base: {max: '1', min: 0, path: 'Extension.value[x]'} choices: [] index: 20 required: [url, extension] class: extension kind: complex-type url: http://hl7.org/fhir/3.0/StructureDefinition/extension-TestScript.rule base: http://hl7.org/fhir/StructureDefinition/Extension|4.0.1 version: 0.1.0 required: [url, extension]