Canonical Resource Management Infrastructure Implementation Guide
2.0.0-ballot - STU 2 - Ballot International flag

Canonical Resource Management Infrastructure Implementation Guide, published by HL7 International / Clinical Decision Support. This guide is not an authorized publication; it is the continuous build for version 2.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/crmi-ig/ and changes regularly. See the Directory of published versions

Resource Profile: CRMI Operation Profile: Pageable

Official URL: http://hl7.org/fhir/uv/crmi/StructureDefinition/crmi-pageable-operation Version: 2.0.0-ballot
Standards status: Trial-use Maturity Level: 4 Computable Name: PageableOperation
Other Identifiers: OID:2.16.840.1.113883.4.642.40.38.42.10

Operation that is pageable

This establishes input parameters when the operation might return paging.

  • offset: Pagination offset
  • count: Number of items per page

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. OperationDefinition C 0..* OperationDefinition Definition of an operation or a named query
Constraints: opd-0
... 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)
... 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
Constraints: opd-1, opd-2, opd-3
.... 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:offset SC 0..1 BackboneElement Parameters for the operation/query
Constraints: opd-1, opd-2, opd-3
..... 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: offset
..... 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: integer
.... parameter:count SC 0..1 BackboneElement Parameters for the operation/query
Constraints: opd-1, opd-2, opd-3
..... 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: count
..... 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: integer

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
OperationDefinition.​status Base required PublicationStatus 📍4.0.1 FHIR Std.
OperationDefinition.​kind Base required OperationKind 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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:offset, OperationDefinition.parameter:count Either a type must be provided, or parts type.exists() or part.exists()
opd-2 error OperationDefinition.parameter, OperationDefinition.parameter:offset, OperationDefinition.parameter:count A search type can only be specified for parameters of type string searchType.exists() implies type = 'string'
opd-3 error OperationDefinition.parameter, OperationDefinition.parameter:offset, OperationDefinition.parameter:count 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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. 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:offset S 0..1 BackboneElement Parameters for the operation/query
..... name 1..1 code Name in Parameters.parameter.name or in URL
Fixed Value: offset
..... 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: integer
.... parameter:count S 0..1 BackboneElement Parameters for the operation/query
..... name 1..1 code Name in Parameters.parameter.name or in URL
Fixed Value: count
..... 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: integer

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. OperationDefinition C 0..* OperationDefinition Definition of an operation or a named query
Constraints: opd-0
... 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.
Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... 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
Constraints: opd-1, opd-2, opd-3
.... 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:offset SC 0..1 BackboneElement Parameters for the operation/query
Constraints: opd-1, opd-2, opd-3
..... 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: offset
..... 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: integer
..... 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:count SC 0..1 BackboneElement Parameters for the operation/query
Constraints: opd-1, opd-2, opd-3
..... 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: count
..... 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: integer
..... 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

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
OperationDefinition.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
OperationDefinition.​status Base required PublicationStatus 📍4.0.1 FHIR Std.
OperationDefinition.​kind Base required OperationKind 📍4.0.1 FHIR Std.
OperationDefinition.​jurisdiction Base extensible Jurisdiction 📍4.0.1 FHIR Std.
OperationDefinition.​resource Base required ResourceType 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.searchType Base required SearchParamType 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.binding.strength Base required BindingStrength 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.searchType Base required SearchParamType 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.binding.​strength Base required BindingStrength 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.searchType Base required SearchParamType 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.binding.​strength Base required BindingStrength 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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:offset, OperationDefinition.parameter:count Either a type must be provided, or parts type.exists() or part.exists()
opd-2 error OperationDefinition.parameter, OperationDefinition.parameter:offset, OperationDefinition.parameter:count A search type can only be specified for parameters of type string searchType.exists() implies type = 'string'
opd-3 error OperationDefinition.parameter, OperationDefinition.parameter:offset, OperationDefinition.parameter:count 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: 2 elements
Fixed: 2 elements

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of OperationDefinition.parameter

Maturity: 4

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. OperationDefinition C 0..* OperationDefinition Definition of an operation or a named query
Constraints: opd-0
... 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)
... 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
Constraints: opd-1, opd-2, opd-3
.... 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:offset SC 0..1 BackboneElement Parameters for the operation/query
Constraints: opd-1, opd-2, opd-3
..... 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: offset
..... 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: integer
.... parameter:count SC 0..1 BackboneElement Parameters for the operation/query
Constraints: opd-1, opd-2, opd-3
..... 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: count
..... 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: integer

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
OperationDefinition.​status Base required PublicationStatus 📍4.0.1 FHIR Std.
OperationDefinition.​kind Base required OperationKind 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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:offset, OperationDefinition.parameter:count Either a type must be provided, or parts type.exists() or part.exists()
opd-2 error OperationDefinition.parameter, OperationDefinition.parameter:offset, OperationDefinition.parameter:count A search type can only be specified for parameters of type string searchType.exists() implies type = 'string'
opd-3 error OperationDefinition.parameter, OperationDefinition.parameter:offset, OperationDefinition.parameter:count A targetProfile can only be specified for parameters of type Reference or Canonical targetProfile.exists() implies (type = 'Reference' or type = 'canonical')

Differential View

This structure is derived from OperationDefinition

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. 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:offset S 0..1 BackboneElement Parameters for the operation/query
..... name 1..1 code Name in Parameters.parameter.name or in URL
Fixed Value: offset
..... 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: integer
.... parameter:count S 0..1 BackboneElement Parameters for the operation/query
..... name 1..1 code Name in Parameters.parameter.name or in URL
Fixed Value: count
..... 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: integer

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. OperationDefinition C 0..* OperationDefinition Definition of an operation or a named query
Constraints: opd-0
... 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.
Additional BindingsPurpose
AllLanguages Max Binding
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... 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
Constraints: opd-1, opd-2, opd-3
.... 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:offset SC 0..1 BackboneElement Parameters for the operation/query
Constraints: opd-1, opd-2, opd-3
..... 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: offset
..... 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: integer
..... 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:count SC 0..1 BackboneElement Parameters for the operation/query
Constraints: opd-1, opd-2, opd-3
..... 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: count
..... 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: integer
..... 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

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
OperationDefinition.​language Base preferred Common Languages 📍4.0.1 FHIR Std.
OperationDefinition.​status Base required PublicationStatus 📍4.0.1 FHIR Std.
OperationDefinition.​kind Base required OperationKind 📍4.0.1 FHIR Std.
OperationDefinition.​jurisdiction Base extensible Jurisdiction 📍4.0.1 FHIR Std.
OperationDefinition.​resource Base required ResourceType 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.searchType Base required SearchParamType 📍4.0.1 FHIR Std.
OperationDefinition.​parameter.binding.strength Base required BindingStrength 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.searchType Base required SearchParamType 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:offset.binding.​strength Base required BindingStrength 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.use Base required OperationParameterUse 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.type Base required FHIRAllTypes 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.searchType Base required SearchParamType 📍4.0.1 FHIR Std.
OperationDefinition.​parameter:count.binding.​strength Base required BindingStrength 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
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:offset, OperationDefinition.parameter:count Either a type must be provided, or parts type.exists() or part.exists()
opd-2 error OperationDefinition.parameter, OperationDefinition.parameter:offset, OperationDefinition.parameter:count A search type can only be specified for parameters of type string searchType.exists() implies type = 'string'
opd-3 error OperationDefinition.parameter, OperationDefinition.parameter:offset, OperationDefinition.parameter:count 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: 2 elements
Fixed: 2 elements

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of OperationDefinition.parameter

Maturity: 4

 

Other representations of profile: CSV, Excel, Schematron