description: 'Profile for knowledge artifact operations.\n\nThis establishes input parameters when the operation is involked at the resource\ntype level. The parameters are used to identify or specify the resource for the\noperation.\n\n* `url`: artifact URL* for the resource\n* `version`: artifact version* for the resource\n* `identifier`: business identifier for the resource\n* `resource`: instance of a canonical resource\n\n*The artifact URL for canonical resources is `.url`, for non-canonical resources, it is\nthe extension `artifact-url`. The version for canonical resources is `.version`, for non-canonical\nresources it is the extension `artifact-version`.\n\nNOTE: When invoking canonical operations using any combination of `url`,\n`version`, and `identifier`: \n* if there is one-and-only-one matching resource, the operation should apply, otherwise an error state. \n* if `resource` is specified then `url`, `version`, and `identifier` should be ignored.' package_name: hl7.fhir.uv.crmi derivation: constraint name: ArtifactOperation type: OperationDefinition elements: parameter: index: 0 slicing: rules: open discriminator: - {path: name, type: value} min: null slices: url: match: {name: url} schema: constraint: crmi-artifact-operation-1: {human: Parameter url type is uri or canonical, source: 'http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-artifact-operation', severity: error, expression: type='uri' or type='canonical'} mustSupport: true index: 1 elements: name: pattern: {type: Code, value: url} index: 2 use: pattern: {type: Code, value: in} index: 3 min: pattern: {type: Integer, value: 0} index: 4 max: pattern: {type: String, value: '1'} index: 5 version: match: {name: version} schema: mustSupport: true index: 6 elements: name: pattern: {type: Code, value: version} index: 7 use: pattern: {type: Code, value: in} index: 8 min: pattern: {type: Integer, value: 0} index: 9 max: pattern: {type: String, value: '1'} index: 10 type: pattern: {type: Code, value: string} index: 11 identifier: match: {name: identifier} schema: mustSupport: true index: 12 elements: name: pattern: {type: Code, value: identifier} index: 13 use: pattern: {type: Code, value: in} index: 14 min: pattern: {type: Integer, value: 0} index: 15 max: pattern: {type: String, value: '1'} index: 16 type: pattern: {type: Code, value: string} index: 17 searchType: pattern: {type: Code, value: token} index: 18 resource: match: {name: resource} schema: mustSupport: true index: 19 elements: name: pattern: {type: Code, value: resource} index: 20 use: pattern: {type: Code, value: in} index: 21 min: pattern: {type: Integer, value: 0} index: 22 max: pattern: {type: String, value: '1'} index: 23 type: binding: {strength: required, valueSet: 'http://hl7.org/fhir/uv/crmi/ValueSet/ArtifactResourceTypes'} index: 24 package_version: 1.0.0-snapshot class: profile kind: resource url: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-artifact-operation base: http://hl7.org/fhir/StructureDefinition/OperationDefinition version: 1.0.0-snapshot