This page is part of the Canonical Resource Management Infrastructure Implementation Guide (v1.0.0-snapshot: STU1 Draft) based on FHIR (HL7® FHIR® Standard) R4. . For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-artifact-operation | Version: 1.0.0-snapshot | |||
Draft as of 2024-04-06 | Computable Name: ArtifactOperation | |||
Other Identifiers: OID:2.16.840.1.113883.4.642.40.38.42.3 |
Profile for knowledge artifact operations.
This establishes input parameters when the operation is involked at the resource type level. The parameters are used to identify or specify the resource for the operation.
url
: artifact URL* for the resourceversion
: artifact version* for the resourceidentifier
: business identifier for the resourceresource
: instance of a canonical resource*The artifact URL for canonical resources is .url
, for non-canonical resources, it is
the extension artifact-url
. The version for canonical resources is .version
, for non-canonical
resources it is the extension artifact-version
.
NOTE: When invoking canonical operations using any combination of url
,
version
, and identifier
:
resource
is specified then url
, version
, and identifier
should be ignored.Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from OperationDefinition
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
OperationDefinition | 0..* | OperationDefinition | Definition of an operation or a named query | |
Slices for parameter | 0..* | BackboneElement | Parameters for the operation/query Slice: Unordered, Open by value:name | |
parameter:url | SC | 0..1 | BackboneElement | Parameters for the operation/query crmi-artifact-operation-1: Parameter url type is uri or canonical |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: url | |
use | 1..1 | code | in | out Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
parameter:version | S | 0..1 | BackboneElement | Parameters for the operation/query |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: version | |
use | 1..1 | code | in | out Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | 0..1 | code | What type this parameter has Required Pattern: string | |
parameter:identifier | S | 0..1 | BackboneElement | Parameters for the operation/query |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: identifier | |
use | 1..1 | code | in | out Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | 0..1 | code | What type this parameter has Required Pattern: string | |
searchType | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Required Pattern: token | |
parameter:resource | S | 0..1 | BackboneElement | Parameters for the operation/query |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: resource | |
use | 1..1 | code | in | out Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | 0..1 | code | What type this parameter has Binding: Artifact Resource Types (required) | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
OperationDefinition.parameter:resource.type | required | ArtifactResourceTypeshttp://hl7.org/fhir/uv/crmi/ValueSet/ArtifactResourceTypes from this IG |
Id | Grade | Path(s) | Details | Requirements |
crmi-artifact-operation-1 | error | OperationDefinition.parameter:url | Parameter url type is uri or canonical : type='uri' or type='canonical' |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
OperationDefinition | C | 0..* | OperationDefinition | Definition of an operation or a named query opd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
name | ΣC | 1..1 | string | Name for this operation definition (computer friendly) |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
kind | Σ | 1..1 | code | operation | query Binding: OperationKind (required): Whether an operation is a normal operation or a query. |
code | Σ | 1..1 | code | Name used to invoke the operation |
system | Σ | 1..1 | boolean | Invoke at the system level? |
type | Σ | 1..1 | boolean | Invoke at the type level? |
instance | Σ | 1..1 | boolean | Invoke on an instance? |
Slices for parameter | C | 0..* | BackboneElement | Parameters for the operation/query Slice: Unordered, Open by value:name opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical |
parameter:All Slices | Content/Rules for all slices | |||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. | |
min | 1..1 | integer | Minimum Cardinality | |
max | 1..1 | string | Maximum Cardinality (a number or *) | |
parameter:url | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical crmi-artifact-operation-1: Parameter url type is uri or canonical |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: url | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
parameter:version | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: version | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. Required Pattern: string |
parameter:identifier | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: identifier | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. Required Pattern: string |
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. Required Pattern: token |
parameter:resource | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: resource | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | C | 0..1 | code | What type this parameter has Binding: Artifact Resource Types (required) |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
OperationDefinition.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.0.1 from the FHIR Standard | |
OperationDefinition.kind | required | OperationKindhttp://hl7.org/fhir/ValueSet/operation-kind|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:url.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:version.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:version.type | required | Pattern: stringhttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:identifier.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:identifier.type | required | Pattern: stringhttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:identifier.searchType | required | Pattern: tokenhttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:resource.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:resource.type | required | ArtifactResourceTypeshttp://hl7.org/fhir/uv/crmi/ValueSet/ArtifactResourceTypes from this IG |
Id | Grade | Path(s) | Details | Requirements |
crmi-artifact-operation-1 | error | OperationDefinition.parameter:url | Parameter url type is uri or canonical : type='uri' or type='canonical' | |
dom-2 | error | OperationDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | OperationDefinition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | OperationDefinition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | OperationDefinition | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | OperationDefinition | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
opd-0 | warning | OperationDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') | |
opd-1 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | Either a type must be provided, or parts : type.exists() or part.exists() | |
opd-2 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | A search type can only be specified for parameters of type string : searchType.exists() implies type = 'string' | |
opd-3 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | A targetProfile can only be specified for parameters of type Reference or Canonical : targetProfile.exists() implies (type = 'Reference' or type = 'canonical') |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
OperationDefinition | C | 0..* | OperationDefinition | Definition of an operation or a named query opd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
url | Σ | 0..1 | uri | Canonical identifier for this operation definition, represented as a URI (globally unique) | ||||
version | Σ | 0..1 | string | Business version of the operation definition | ||||
name | ΣC | 1..1 | string | Name for this operation definition (computer friendly) | ||||
title | Σ | 0..1 | string | Name for this operation definition (human friendly) | ||||
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
kind | Σ | 1..1 | code | operation | query Binding: OperationKind (required): Whether an operation is a normal operation or a query. | ||||
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage | ||||
date | Σ | 0..1 | dateTime | Date last changed | ||||
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual) | ||||
contact | Σ | 0..* | ContactDetail | Contact details for the publisher | ||||
description | 0..1 | markdown | Natural language description of the operation definition | |||||
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support | ||||
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for operation definition (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
purpose | 0..1 | markdown | Why this operation definition is defined | |||||
affectsState | Σ | 0..1 | boolean | Whether content is changed by the operation | ||||
code | Σ | 1..1 | code | Name used to invoke the operation | ||||
comment | 0..1 | markdown | Additional information about use | |||||
base | Σ | 0..1 | canonical(OperationDefinition) | Marks this as a profile of the base | ||||
resource | Σ | 0..* | code | Types this operation applies to Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR. | ||||
system | Σ | 1..1 | boolean | Invoke at the system level? | ||||
type | Σ | 1..1 | boolean | Invoke at the type level? | ||||
instance | Σ | 1..1 | boolean | Invoke on an instance? | ||||
inputProfile | 0..1 | canonical(StructureDefinition) | Validation information for in parameters | |||||
outputProfile | 0..1 | canonical(StructureDefinition) | Validation information for out parameters | |||||
Slices for parameter | C | 0..* | BackboneElement | Parameters for the operation/query Slice: Unordered, Open by value:name opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical | ||||
parameter:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. | |||||
min | 1..1 | integer | Minimum Cardinality | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
parameter:url | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical crmi-artifact-operation-1: Parameter url type is uri or canonical | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: url | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |||||
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
parameter:version | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: version | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |||||
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. Required Pattern: string | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
parameter:identifier | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: identifier | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |||||
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. Required Pattern: string | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. Required Pattern: token | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
parameter:resource | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: resource | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |||||
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: Artifact Resource Types (required) | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
overload | 0..* | BackboneElement | Define overloaded variants for when generating code | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
parameterName | 0..* | string | Name of parameter to include in overload | |||||
comment | 0..1 | string | Comments to go on overload | |||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
OperationDefinition.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
OperationDefinition.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.0.1 from the FHIR Standard | ||||
OperationDefinition.kind | required | OperationKindhttp://hl7.org/fhir/ValueSet/operation-kind|4.0.1 from the FHIR Standard | ||||
OperationDefinition.jurisdiction | extensible | Jurisdiction ValueSethttp://hl7.org/fhir/ValueSet/jurisdiction from the FHIR Standard | ||||
OperationDefinition.resource | required | ResourceTypehttp://hl7.org/fhir/ValueSet/resource-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:url.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:url.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:url.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:url.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:version.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:version.type | required | Pattern: stringhttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:version.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:version.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:identifier.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:identifier.type | required | Pattern: stringhttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:identifier.searchType | required | Pattern: tokenhttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:identifier.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:resource.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:resource.type | required | ArtifactResourceTypeshttp://hl7.org/fhir/uv/crmi/ValueSet/ArtifactResourceTypes from this IG | ||||
OperationDefinition.parameter:resource.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:resource.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
crmi-artifact-operation-1 | error | OperationDefinition.parameter:url | Parameter url type is uri or canonical : type='uri' or type='canonical' | |
dom-2 | error | OperationDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | OperationDefinition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | OperationDefinition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | OperationDefinition | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | OperationDefinition | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
opd-0 | warning | OperationDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') | |
opd-1 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | Either a type must be provided, or parts : type.exists() or part.exists() | |
opd-2 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | A search type can only be specified for parameters of type string : searchType.exists() implies type = 'string' | |
opd-3 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | A targetProfile can only be specified for parameters of type Reference or Canonical : targetProfile.exists() implies (type = 'Reference' or type = 'canonical') |
This structure is derived from OperationDefinition
Summary
Must-Support: 4 elements
Fixed: 4 elements
Slices
This structure defines the following Slices:
Differential View
This structure is derived from OperationDefinition
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
OperationDefinition | 0..* | OperationDefinition | Definition of an operation or a named query | |
Slices for parameter | 0..* | BackboneElement | Parameters for the operation/query Slice: Unordered, Open by value:name | |
parameter:url | SC | 0..1 | BackboneElement | Parameters for the operation/query crmi-artifact-operation-1: Parameter url type is uri or canonical |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: url | |
use | 1..1 | code | in | out Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
parameter:version | S | 0..1 | BackboneElement | Parameters for the operation/query |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: version | |
use | 1..1 | code | in | out Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | 0..1 | code | What type this parameter has Required Pattern: string | |
parameter:identifier | S | 0..1 | BackboneElement | Parameters for the operation/query |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: identifier | |
use | 1..1 | code | in | out Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | 0..1 | code | What type this parameter has Required Pattern: string | |
searchType | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Required Pattern: token | |
parameter:resource | S | 0..1 | BackboneElement | Parameters for the operation/query |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: resource | |
use | 1..1 | code | in | out Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | 0..1 | code | What type this parameter has Binding: Artifact Resource Types (required) | |
Documentation for this format |
Path | Conformance | ValueSet | URI |
OperationDefinition.parameter:resource.type | required | ArtifactResourceTypeshttp://hl7.org/fhir/uv/crmi/ValueSet/ArtifactResourceTypes from this IG |
Id | Grade | Path(s) | Details | Requirements |
crmi-artifact-operation-1 | error | OperationDefinition.parameter:url | Parameter url type is uri or canonical : type='uri' or type='canonical' |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
OperationDefinition | C | 0..* | OperationDefinition | Definition of an operation or a named query opd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
name | ΣC | 1..1 | string | Name for this operation definition (computer friendly) |
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
kind | Σ | 1..1 | code | operation | query Binding: OperationKind (required): Whether an operation is a normal operation or a query. |
code | Σ | 1..1 | code | Name used to invoke the operation |
system | Σ | 1..1 | boolean | Invoke at the system level? |
type | Σ | 1..1 | boolean | Invoke at the type level? |
instance | Σ | 1..1 | boolean | Invoke on an instance? |
Slices for parameter | C | 0..* | BackboneElement | Parameters for the operation/query Slice: Unordered, Open by value:name opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical |
parameter:All Slices | Content/Rules for all slices | |||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. | |
min | 1..1 | integer | Minimum Cardinality | |
max | 1..1 | string | Maximum Cardinality (a number or *) | |
parameter:url | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical crmi-artifact-operation-1: Parameter url type is uri or canonical |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: url | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
parameter:version | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: version | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. Required Pattern: string |
parameter:identifier | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: identifier | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. Required Pattern: string |
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. Required Pattern: token |
parameter:resource | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: resource | |
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |
type | C | 0..1 | code | What type this parameter has Binding: Artifact Resource Types (required) |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
OperationDefinition.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.0.1 from the FHIR Standard | |
OperationDefinition.kind | required | OperationKindhttp://hl7.org/fhir/ValueSet/operation-kind|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:url.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:version.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:version.type | required | Pattern: stringhttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:identifier.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:identifier.type | required | Pattern: stringhttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:identifier.searchType | required | Pattern: tokenhttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:resource.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | |
OperationDefinition.parameter:resource.type | required | ArtifactResourceTypeshttp://hl7.org/fhir/uv/crmi/ValueSet/ArtifactResourceTypes from this IG |
Id | Grade | Path(s) | Details | Requirements |
crmi-artifact-operation-1 | error | OperationDefinition.parameter:url | Parameter url type is uri or canonical : type='uri' or type='canonical' | |
dom-2 | error | OperationDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | OperationDefinition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | OperationDefinition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | OperationDefinition | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | OperationDefinition | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
opd-0 | warning | OperationDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') | |
opd-1 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | Either a type must be provided, or parts : type.exists() or part.exists() | |
opd-2 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | A search type can only be specified for parameters of type string : searchType.exists() implies type = 'string' | |
opd-3 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | A targetProfile can only be specified for parameters of type Reference or Canonical : targetProfile.exists() implies (type = 'Reference' or type = 'canonical') |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
OperationDefinition | C | 0..* | OperationDefinition | Definition of an operation or a named query opd-0: Name should be usable as an identifier for the module by machine processing applications such as code generation | ||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
url | Σ | 0..1 | uri | Canonical identifier for this operation definition, represented as a URI (globally unique) | ||||
version | Σ | 0..1 | string | Business version of the operation definition | ||||
name | ΣC | 1..1 | string | Name for this operation definition (computer friendly) | ||||
title | Σ | 0..1 | string | Name for this operation definition (human friendly) | ||||
status | ?!Σ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
kind | Σ | 1..1 | code | operation | query Binding: OperationKind (required): Whether an operation is a normal operation or a query. | ||||
experimental | Σ | 0..1 | boolean | For testing purposes, not real usage | ||||
date | Σ | 0..1 | dateTime | Date last changed | ||||
publisher | Σ | 0..1 | string | Name of the publisher (organization or individual) | ||||
contact | Σ | 0..* | ContactDetail | Contact details for the publisher | ||||
description | 0..1 | markdown | Natural language description of the operation definition | |||||
useContext | Σ | 0..* | UsageContext | The context that the content is intended to support | ||||
jurisdiction | Σ | 0..* | CodeableConcept | Intended jurisdiction for operation definition (if applicable) Binding: Jurisdiction ValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
purpose | 0..1 | markdown | Why this operation definition is defined | |||||
affectsState | Σ | 0..1 | boolean | Whether content is changed by the operation | ||||
code | Σ | 1..1 | code | Name used to invoke the operation | ||||
comment | 0..1 | markdown | Additional information about use | |||||
base | Σ | 0..1 | canonical(OperationDefinition) | Marks this as a profile of the base | ||||
resource | Σ | 0..* | code | Types this operation applies to Binding: ResourceType (required): One of the resource types defined as part of this version of FHIR. | ||||
system | Σ | 1..1 | boolean | Invoke at the system level? | ||||
type | Σ | 1..1 | boolean | Invoke at the type level? | ||||
instance | Σ | 1..1 | boolean | Invoke on an instance? | ||||
inputProfile | 0..1 | canonical(StructureDefinition) | Validation information for in parameters | |||||
outputProfile | 0..1 | canonical(StructureDefinition) | Validation information for out parameters | |||||
Slices for parameter | C | 0..* | BackboneElement | Parameters for the operation/query Slice: Unordered, Open by value:name opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical | ||||
parameter:All Slices | Content/Rules for all slices | |||||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. | |||||
min | 1..1 | integer | Minimum Cardinality | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
parameter:url | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical crmi-artifact-operation-1: Parameter url type is uri or canonical | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: url | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |||||
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
parameter:version | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: version | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |||||
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. Required Pattern: string | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
parameter:identifier | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: identifier | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |||||
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRAllTypes (required): A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. Required Pattern: string | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. Required Pattern: token | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
parameter:resource | SC | 0..1 | BackboneElement | Parameters for the operation/query opd-1: Either a type must be provided, or parts opd-2: A search type can only be specified for parameters of type string opd-3: A targetProfile can only be specified for parameters of type Reference or Canonical | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
name | 1..1 | code | Name in Parameters.parameter.name or in URL Fixed Value: resource | |||||
use | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. Required Pattern: in | |||||
min | 1..1 | integer | Minimum Cardinality Required Pattern: 0 | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) Required Pattern: 1 | |||||
documentation | 0..1 | string | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: Artifact Resource Types (required) | ||||
targetProfile | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets | |||||
searchType | C | 0..1 | code | number | date | string | token | reference | composite | quantity | uri | special Binding: SearchParamType (required): Data types allowed to be used for search parameters. | ||||
binding | 0..1 | BackboneElement | ValueSet details if this is coded | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
strength | 1..1 | code | required | extensible | preferred | example Binding: BindingStrength (required): Indication of the degree of conformance expectations associated with a binding. | |||||
valueSet | 1..1 | canonical(ValueSet) | Source of value set | |||||
referencedFrom | 0..* | BackboneElement | References to this parameter | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
source | 1..1 | string | Referencing parameter | |||||
sourceId | 0..1 | string | Element id of reference | |||||
part | C | 0..* | See parameter (OperationDefinition) | Parts of a nested Parameter | ||||
overload | 0..* | BackboneElement | Define overloaded variants for when generating code | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
parameterName | 0..* | string | Name of parameter to include in overload | |||||
comment | 0..1 | string | Comments to go on overload | |||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
OperationDefinition.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
OperationDefinition.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|4.0.1 from the FHIR Standard | ||||
OperationDefinition.kind | required | OperationKindhttp://hl7.org/fhir/ValueSet/operation-kind|4.0.1 from the FHIR Standard | ||||
OperationDefinition.jurisdiction | extensible | Jurisdiction ValueSethttp://hl7.org/fhir/ValueSet/jurisdiction from the FHIR Standard | ||||
OperationDefinition.resource | required | ResourceTypehttp://hl7.org/fhir/ValueSet/resource-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:url.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:url.type | required | FHIRAllTypeshttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:url.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:url.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:version.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:version.type | required | Pattern: stringhttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:version.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:version.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:identifier.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:identifier.type | required | Pattern: stringhttp://hl7.org/fhir/ValueSet/all-types|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:identifier.searchType | required | Pattern: tokenhttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:identifier.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:resource.use | required | Pattern: inhttp://hl7.org/fhir/ValueSet/operation-parameter-use|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:resource.type | required | ArtifactResourceTypeshttp://hl7.org/fhir/uv/crmi/ValueSet/ArtifactResourceTypes from this IG | ||||
OperationDefinition.parameter:resource.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|4.0.1 from the FHIR Standard | ||||
OperationDefinition.parameter:resource.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
crmi-artifact-operation-1 | error | OperationDefinition.parameter:url | Parameter url type is uri or canonical : type='uri' or type='canonical' | |
dom-2 | error | OperationDefinition | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | OperationDefinition | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | OperationDefinition | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | OperationDefinition | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | OperationDefinition | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
opd-0 | warning | OperationDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.matches('[A-Z]([A-Za-z0-9_]){0,254}') | |
opd-1 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | Either a type must be provided, or parts : type.exists() or part.exists() | |
opd-2 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | A search type can only be specified for parameters of type string : searchType.exists() implies type = 'string' | |
opd-3 | error | OperationDefinition.parameter, OperationDefinition.parameter:url, OperationDefinition.parameter:version, OperationDefinition.parameter:identifier, OperationDefinition.parameter:resource | A targetProfile can only be specified for parameters of type Reference or Canonical : targetProfile.exists() implies (type = 'Reference' or type = 'canonical') |
This structure is derived from OperationDefinition
Summary
Must-Support: 4 elements
Fixed: 4 elements
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron