PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.uv.crmi@2.0.0
    http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-artifact-operation
description: 'Profile for artifact operations.\n\nThis establishes input parameters when the operation is invoked at the resource\ntype level. The parameters are used to identify or specify the resource for the\noperation.\n\n* `url`: artifact canonical* for the resource as a canonical reference (with or without a version) (or uri for non-canonical resources)\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 a `url`, if the reference is versionless, the latest known version of the resource should be used, as specified in the [Artifact Versioning](artifact-lifecycle.html#artifact-versioning) discussion.\n\nNOTE: This pattern can be applied for operations that are invoked on one or more resources.'
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
            array: 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
        resource:
          match: {name: resource}
          schema:
            mustSupport: true
            array: true
            index: 6
            elements:
              name:
                pattern: {type: Code, value: resource}
                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:
                binding: {strength: required, valueSet: 'http://terminology.hl7.org/ValueSet/artifact-resource-types'}
                index: 11
package_version: 2.0.0
class: profile
kind: resource
url: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-artifact-operation
base: http://hl7.org/fhir/StructureDefinition/OperationDefinition
version: 2.0.0