SMART Base
0.1.1 - ci-build
SMART Base, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.1.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-base/ and changes regularly. See the Directory of published versions
Official URL: http://smart.who.int/base/StructureDefinition/SGTransactionOperation | Version: 0.1.1 | |||
Draft as of 2024-06-12 | Computable Name: SGTransactionOperation |
Smart Guidelines Transaction: see https://profiles.ihe.net/ITI/TF/Volume2/ch-2.html for conventions on transactions
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 extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |
transaction | S | 1..1 | Reference(SGTransactionDefinition) | Extension URL: http://smart.who.int/base/StructureDefinition/Sgtransaction |
title | 1..1 | string | Name for this operation definition (human friendly) | |
status | S | 1..1 | code | draft | active | retired | unknown |
kind | S | 1..1 | code | operation | query |
experimental | 1..1 | boolean | For testing purposes, not real usage | |
description | 1..1 | markdown | Natural language description of the operation definition | |
code | S | 1..1 | code | Recommended name for operation in search url |
system | S | 1..1 | boolean | Invoke at the system level? |
type | S | 1..1 | boolean | Invoke at the type level? |
instance | S | 1..1 | boolean | Invoke on an instance? |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
OperationDefinition | C | 0..* | OperationDefinition | Definition of an operation or a named query cnl-0: Name should be usable as an identifier for the module by machine processing applications such as code generation opd-5: A query operation cannot be defined at the instance level opd-6: A query operation requires input parameters to have a search type opd-7: Named queries always have a single output parameter named 'result' of type Bundle |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
contained | 0..* | Resource | Contained, inline Resources | |
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |
transaction | S | 1..1 | Reference(SGTransactionDefinition) | Extension URL: http://smart.who.int/base/StructureDefinition/Sgtransaction |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
name | ΣC | 1..1 | string | Name for this operation definition (computer friendly) |
title | Σ | 1..1 | string | Name for this operation definition (human friendly) |
status | ?!SΣ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
kind | SΣC | 1..1 | code | operation | query Binding: OperationKind (required): Whether an operation is a normal operation or a query. |
experimental | Σ | 1..1 | boolean | For testing purposes, not real usage |
description | 1..1 | markdown | Natural language description of the operation definition | |
code | SΣ | 1..1 | code | Recommended name for operation in search url |
system | SΣ | 1..1 | boolean | Invoke at the system level? |
type | SΣ | 1..1 | boolean | Invoke at the type level? |
instance | SΣC | 1..1 | boolean | Invoke on an instance? |
Documentation for this format |
Path | Conformance | ValueSet | URI |
OperationDefinition.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|5.0.0 from the FHIR Standard | |
OperationDefinition.kind | required | OperationKindhttp://hl7.org/fhir/ValueSet/operation-kind|5.0.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
cnl-0 | warning | OperationDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$') | |
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-5 | error | OperationDefinition | A query operation cannot be defined at the instance level : (kind = 'query') implies (instance = false) | |
opd-6 | error | OperationDefinition | A query operation requires input parameters to have a search type : (kind = 'query') implies (parameter.all((use = 'in' and searchType.exists()) or (use != 'in'))) | |
opd-7 | error | OperationDefinition | Named queries always have a single output parameter named 'result' of type Bundle : (kind = 'query') implies ((parameter.where(use = 'out').count() = 1) and (parameter.where(use = 'out').all(name = 'result' and type = 'Bundle'))) |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
OperationDefinition | C | 0..* | OperationDefinition | Definition of an operation or a named query cnl-0: Name should be usable as an identifier for the module by machine processing applications such as code generation opd-5: A query operation cannot be defined at the instance level opd-6: A query operation requires input parameters to have a search type opd-7: Named queries always have a single output parameter named 'result' of type Bundle | ||||
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: AllLanguages (required): IETF language tag for a human language
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
transaction | S | 1..1 | Reference(SGTransactionDefinition) | Extension URL: http://smart.who.int/base/StructureDefinition/Sgtransaction | ||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
url | ΣC | 0..1 | uri | Canonical identifier for this operation definition, represented as an absolute URI (globally unique) cnl-1: URL should not contain | or # - these characters make processing canonical references problematic | ||||
identifier | Σ | 0..* | Identifier | Additional identifier for the implementation guide (business identifier) | ||||
version | Σ | 0..1 | string | Business version of the operation definition | ||||
versionAlgorithm[x] | Σ | 0..1 | How to compare versions Binding: VersionAlgorithm (extensible) | |||||
versionAlgorithmString | string | |||||||
versionAlgorithmCoding | Coding | |||||||
name | ΣC | 1..1 | string | Name for this operation definition (computer friendly) | ||||
title | Σ | 1..1 | string | Name for this operation definition (human friendly) | ||||
status | ?!SΣ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
kind | SΣC | 1..1 | code | operation | query Binding: OperationKind (required): Whether an operation is a normal operation or a query. | ||||
experimental | Σ | 1..1 | boolean | For testing purposes, not real usage | ||||
date | Σ | 0..1 | dateTime | Date last changed | ||||
publisher | Σ | 0..1 | string | Name of the publisher/steward (organization or individual) | ||||
contact | Σ | 0..* | ContactDetail | Contact details for the publisher | ||||
description | 1..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: JurisdictionValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
purpose | 0..1 | markdown | Why this operation definition is defined | |||||
copyright | 0..1 | markdown | Use and/or publishing restrictions | |||||
copyrightLabel | 0..1 | string | Copyright holder and year(s) | |||||
affectsState | Σ | 0..1 | boolean | Whether content is changed by the operation | ||||
code | SΣ | 1..1 | code | Recommended name for operation in search url | ||||
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: VersionIndependentResourceTypesAll (required): A type of resource, or a Reference (from all versions)
| ||||
system | SΣ | 1..1 | boolean | Invoke at the system level? | ||||
type | SΣ | 1..1 | boolean | Invoke at the type level? | ||||
instance | SΣC | 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 | |||||
parameter | C | 0..* | 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, Canonical, or a Resource opd-4: SearchParamType can only be specified on in parameters | ||||
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 | C | 1..1 | code | Name in Parameters.parameter.name or in URL | ||||
use | C | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. | ||||
scope | 0..* | code | instance | type | system Binding: OperationParameterScope (required) | |||||
min | 1..1 | integer | Minimum Cardinality | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) | |||||
documentation | 0..1 | markdown | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRTypes (required): A list of all the types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
allowedType | 0..* | code | Allowed sub-type this parameter can have (if type is abstract) Binding: FHIRTypes (required): A list of all the types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | |||||
targetProfile | C | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets. If type is 'Resource', then this constrains the allowed resource types | ||||
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 | URI |
OperationDefinition.language | required | AllLanguageshttp://hl7.org/fhir/ValueSet/all-languages|5.0.0 from the FHIR Standard | |
OperationDefinition.versionAlgorithm[x] | extensible | VersionAlgorithmhttp://hl7.org/fhir/ValueSet/version-algorithm from the FHIR Standard | |
OperationDefinition.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|5.0.0 from the FHIR Standard | |
OperationDefinition.kind | required | OperationKindhttp://hl7.org/fhir/ValueSet/operation-kind|5.0.0 from the FHIR Standard | |
OperationDefinition.jurisdiction | extensible | JurisdictionValueSethttp://hl7.org/fhir/ValueSet/jurisdiction from the FHIR Standard | |
OperationDefinition.resource | required | VersionIndependentResourceTypesAllhttp://hl7.org/fhir/ValueSet/version-independent-all-resource-types|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.scope | required | OperationParameterScopehttp://hl7.org/fhir/ValueSet/operation-parameter-scope|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.type | required | FHIRTypeshttp://hl7.org/fhir/ValueSet/fhir-types|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.allowedType | required | FHIRTypeshttp://hl7.org/fhir/ValueSet/fhir-types|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|5.0.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
cnl-0 | warning | OperationDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$') | |
cnl-1 | warning | OperationDefinition.url | URL should not contain | or # - these characters make processing canonical references problematic : exists() implies matches('^[^|# ]+$') | |
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-1 | error | OperationDefinition.parameter | Either a type must be provided, or parts : type.exists() or part.exists() | |
opd-2 | error | OperationDefinition.parameter | A search type can only be specified for parameters of type string : searchType.exists() implies type = 'string' | |
opd-3 | error | OperationDefinition.parameter | A targetProfile can only be specified for parameters of type Reference, Canonical, or a Resource : targetProfile.exists() implies (type = 'Reference' or type = 'canonical' or type.memberOf('http://hl7.org/fhir/ValueSet/resource-types')) | |
opd-4 | error | OperationDefinition.parameter | SearchParamType can only be specified on in parameters : (use = 'out') implies searchType.empty() | |
opd-5 | error | OperationDefinition | A query operation cannot be defined at the instance level : (kind = 'query') implies (instance = false) | |
opd-6 | error | OperationDefinition | A query operation requires input parameters to have a search type : (kind = 'query') implies (parameter.all((use = 'in' and searchType.exists()) or (use != 'in'))) | |
opd-7 | error | OperationDefinition | Named queries always have a single output parameter named 'result' of type Bundle : (kind = 'query') implies ((parameter.where(use = 'out').count() = 1) and (parameter.where(use = 'out').all(name = 'result' and type = 'Bundle'))) |
This structure is derived from OperationDefinition
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 extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |
transaction | S | 1..1 | Reference(SGTransactionDefinition) | Extension URL: http://smart.who.int/base/StructureDefinition/Sgtransaction |
title | 1..1 | string | Name for this operation definition (human friendly) | |
status | S | 1..1 | code | draft | active | retired | unknown |
kind | S | 1..1 | code | operation | query |
experimental | 1..1 | boolean | For testing purposes, not real usage | |
description | 1..1 | markdown | Natural language description of the operation definition | |
code | S | 1..1 | code | Recommended name for operation in search url |
system | S | 1..1 | boolean | Invoke at the system level? |
type | S | 1..1 | boolean | Invoke at the type level? |
instance | S | 1..1 | boolean | Invoke on an instance? |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
OperationDefinition | C | 0..* | OperationDefinition | Definition of an operation or a named query cnl-0: Name should be usable as an identifier for the module by machine processing applications such as code generation opd-5: A query operation cannot be defined at the instance level opd-6: A query operation requires input parameters to have a search type opd-7: Named queries always have a single output parameter named 'result' of type Bundle |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
contained | 0..* | Resource | Contained, inline Resources | |
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |
transaction | S | 1..1 | Reference(SGTransactionDefinition) | Extension URL: http://smart.who.int/base/StructureDefinition/Sgtransaction |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored |
name | ΣC | 1..1 | string | Name for this operation definition (computer friendly) |
title | Σ | 1..1 | string | Name for this operation definition (human friendly) |
status | ?!SΣ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. |
kind | SΣC | 1..1 | code | operation | query Binding: OperationKind (required): Whether an operation is a normal operation or a query. |
experimental | Σ | 1..1 | boolean | For testing purposes, not real usage |
description | 1..1 | markdown | Natural language description of the operation definition | |
code | SΣ | 1..1 | code | Recommended name for operation in search url |
system | SΣ | 1..1 | boolean | Invoke at the system level? |
type | SΣ | 1..1 | boolean | Invoke at the type level? |
instance | SΣC | 1..1 | boolean | Invoke on an instance? |
Documentation for this format |
Path | Conformance | ValueSet | URI |
OperationDefinition.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|5.0.0 from the FHIR Standard | |
OperationDefinition.kind | required | OperationKindhttp://hl7.org/fhir/ValueSet/operation-kind|5.0.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
cnl-0 | warning | OperationDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$') | |
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-5 | error | OperationDefinition | A query operation cannot be defined at the instance level : (kind = 'query') implies (instance = false) | |
opd-6 | error | OperationDefinition | A query operation requires input parameters to have a search type : (kind = 'query') implies (parameter.all((use = 'in' and searchType.exists()) or (use != 'in'))) | |
opd-7 | error | OperationDefinition | Named queries always have a single output parameter named 'result' of type Bundle : (kind = 'query') implies ((parameter.where(use = 'out').count() = 1) and (parameter.where(use = 'out').all(name = 'result' and type = 'Bundle'))) |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
OperationDefinition | C | 0..* | OperationDefinition | Definition of an operation or a named query cnl-0: Name should be usable as an identifier for the module by machine processing applications such as code generation opd-5: A query operation cannot be defined at the instance level opd-6: A query operation requires input parameters to have a search type opd-7: Named queries always have a single output parameter named 'result' of type Bundle | ||||
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: AllLanguages (required): IETF language tag for a human language
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 1..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
transaction | S | 1..1 | Reference(SGTransactionDefinition) | Extension URL: http://smart.who.int/base/StructureDefinition/Sgtransaction | ||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
url | ΣC | 0..1 | uri | Canonical identifier for this operation definition, represented as an absolute URI (globally unique) cnl-1: URL should not contain | or # - these characters make processing canonical references problematic | ||||
identifier | Σ | 0..* | Identifier | Additional identifier for the implementation guide (business identifier) | ||||
version | Σ | 0..1 | string | Business version of the operation definition | ||||
versionAlgorithm[x] | Σ | 0..1 | How to compare versions Binding: VersionAlgorithm (extensible) | |||||
versionAlgorithmString | string | |||||||
versionAlgorithmCoding | Coding | |||||||
name | ΣC | 1..1 | string | Name for this operation definition (computer friendly) | ||||
title | Σ | 1..1 | string | Name for this operation definition (human friendly) | ||||
status | ?!SΣ | 1..1 | code | draft | active | retired | unknown Binding: PublicationStatus (required): The lifecycle status of an artifact. | ||||
kind | SΣC | 1..1 | code | operation | query Binding: OperationKind (required): Whether an operation is a normal operation or a query. | ||||
experimental | Σ | 1..1 | boolean | For testing purposes, not real usage | ||||
date | Σ | 0..1 | dateTime | Date last changed | ||||
publisher | Σ | 0..1 | string | Name of the publisher/steward (organization or individual) | ||||
contact | Σ | 0..* | ContactDetail | Contact details for the publisher | ||||
description | 1..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: JurisdictionValueSet (extensible): Countries and regions within which this artifact is targeted for use. | ||||
purpose | 0..1 | markdown | Why this operation definition is defined | |||||
copyright | 0..1 | markdown | Use and/or publishing restrictions | |||||
copyrightLabel | 0..1 | string | Copyright holder and year(s) | |||||
affectsState | Σ | 0..1 | boolean | Whether content is changed by the operation | ||||
code | SΣ | 1..1 | code | Recommended name for operation in search url | ||||
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: VersionIndependentResourceTypesAll (required): A type of resource, or a Reference (from all versions)
| ||||
system | SΣ | 1..1 | boolean | Invoke at the system level? | ||||
type | SΣ | 1..1 | boolean | Invoke at the type level? | ||||
instance | SΣC | 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 | |||||
parameter | C | 0..* | 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, Canonical, or a Resource opd-4: SearchParamType can only be specified on in parameters | ||||
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 | C | 1..1 | code | Name in Parameters.parameter.name or in URL | ||||
use | C | 1..1 | code | in | out Binding: OperationParameterUse (required): Whether an operation parameter is an input or an output parameter. | ||||
scope | 0..* | code | instance | type | system Binding: OperationParameterScope (required) | |||||
min | 1..1 | integer | Minimum Cardinality | |||||
max | 1..1 | string | Maximum Cardinality (a number or *) | |||||
documentation | 0..1 | markdown | Description of meaning/use | |||||
type | C | 0..1 | code | What type this parameter has Binding: FHIRTypes (required): A list of all the types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | ||||
allowedType | 0..* | code | Allowed sub-type this parameter can have (if type is abstract) Binding: FHIRTypes (required): A list of all the types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types. | |||||
targetProfile | C | 0..* | canonical(StructureDefinition) | If type is Reference | canonical, allowed targets. If type is 'Resource', then this constrains the allowed resource types | ||||
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 | URI |
OperationDefinition.language | required | AllLanguageshttp://hl7.org/fhir/ValueSet/all-languages|5.0.0 from the FHIR Standard | |
OperationDefinition.versionAlgorithm[x] | extensible | VersionAlgorithmhttp://hl7.org/fhir/ValueSet/version-algorithm from the FHIR Standard | |
OperationDefinition.status | required | PublicationStatushttp://hl7.org/fhir/ValueSet/publication-status|5.0.0 from the FHIR Standard | |
OperationDefinition.kind | required | OperationKindhttp://hl7.org/fhir/ValueSet/operation-kind|5.0.0 from the FHIR Standard | |
OperationDefinition.jurisdiction | extensible | JurisdictionValueSethttp://hl7.org/fhir/ValueSet/jurisdiction from the FHIR Standard | |
OperationDefinition.resource | required | VersionIndependentResourceTypesAllhttp://hl7.org/fhir/ValueSet/version-independent-all-resource-types|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.use | required | OperationParameterUsehttp://hl7.org/fhir/ValueSet/operation-parameter-use|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.scope | required | OperationParameterScopehttp://hl7.org/fhir/ValueSet/operation-parameter-scope|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.type | required | FHIRTypeshttp://hl7.org/fhir/ValueSet/fhir-types|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.allowedType | required | FHIRTypeshttp://hl7.org/fhir/ValueSet/fhir-types|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.searchType | required | SearchParamTypehttp://hl7.org/fhir/ValueSet/search-param-type|5.0.0 from the FHIR Standard | |
OperationDefinition.parameter.binding.strength | required | BindingStrengthhttp://hl7.org/fhir/ValueSet/binding-strength|5.0.0 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
cnl-0 | warning | OperationDefinition | Name should be usable as an identifier for the module by machine processing applications such as code generation : name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$') | |
cnl-1 | warning | OperationDefinition.url | URL should not contain | or # - these characters make processing canonical references problematic : exists() implies matches('^[^|# ]+$') | |
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-1 | error | OperationDefinition.parameter | Either a type must be provided, or parts : type.exists() or part.exists() | |
opd-2 | error | OperationDefinition.parameter | A search type can only be specified for parameters of type string : searchType.exists() implies type = 'string' | |
opd-3 | error | OperationDefinition.parameter | A targetProfile can only be specified for parameters of type Reference, Canonical, or a Resource : targetProfile.exists() implies (type = 'Reference' or type = 'canonical' or type.memberOf('http://hl7.org/fhir/ValueSet/resource-types')) | |
opd-4 | error | OperationDefinition.parameter | SearchParamType can only be specified on in parameters : (use = 'out') implies searchType.empty() | |
opd-5 | error | OperationDefinition | A query operation cannot be defined at the instance level : (kind = 'query') implies (instance = false) | |
opd-6 | error | OperationDefinition | A query operation requires input parameters to have a search type : (kind = 'query') implies (parameter.all((use = 'in' and searchType.exists()) or (use != 'in'))) | |
opd-7 | error | OperationDefinition | Named queries always have a single output parameter named 'result' of type Bundle : (kind = 'query') implies ((parameter.where(use = 'out').count() = 1) and (parameter.where(use = 'out').all(name = 'result' and type = 'Bundle'))) |
This structure is derived from OperationDefinition
Cannot invoke "Object.hashCode()" because "key" is null
Other representations of profile: CSV, Excel, Schematron