This page is part of the FHIR Specification (v4.3.0: R4B - STU). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
This resource is a non-persisted resource used to pass information into and back from an operation. It has no other use, and there is no RESTful endpoint associated with it.
This resource is a non-persisted resource used to pass information into and back from an operation.
This special resource has no other use than for operation parameters, and there is no RESTful end-point associated with it. For further information, see the operations page.
OperationDefinition defines constraints on the Parameters resource instances that are used to convey the inputs and outputs of the operation.
This resource is referenced by GuidanceResponse.
This resource does not implement any patterns.
Structure
| Name | Flags | Card. | Type | Description & Constraints doco |
|---|---|---|---|---|
| .. Parameters | N | Resource | Operation Request or Response Elements defined in Ancestors: id, meta, implicitRules, language | |
| ... parameter | Σ I | 0..* | BackboneElement | Operation Parameter + Rule: A parameter must have one and only one of (value, resource, part) |
| .... name | Σ | 1..1 | string | Name from the definition |
| .... value[x] | Σ I | 0..1 | If parameter is a data type | |
| ..... valueBase64Binary | base64Binary | |||
| ..... valueBoolean | boolean | |||
| ..... valueCanonical | canonical() | |||
| ..... valueCode | code | |||
| ..... valueDate | date | |||
| ..... valueDateTime | dateTime | |||
| ..... valueDecimal | decimal | |||
| ..... valueId | id | |||
| ..... valueInstant | instant | |||
| ..... valueInteger | integer | |||
| ..... valueMarkdown | markdown | |||
| ..... valueOid | oid | |||
| ..... valuePositiveInt | positiveInt | |||
| ..... valueString | string | |||
| ..... valueTime | time | |||
| ..... valueUnsignedInt | unsignedInt | |||
| ..... valueUri | uri | |||
| ..... valueUrl | url | |||
| ..... valueUuid | uuid | |||
| ..... valueAddress | Address | |||
| ..... valueAge | Age | |||
| ..... valueAnnotation | Annotation | |||
| ..... valueAttachment | Attachment | |||
| ..... valueCodeableConcept | CodeableConcept | |||
| ..... valueCoding | Coding | |||
| ..... valueContactPoint | ContactPoint | |||
| ..... valueCount | Count | |||
| ..... valueDistance | Distance | |||
| ..... valueDuration | Duration | |||
| ..... valueHumanName | HumanName | |||
| ..... valueIdentifier | Identifier | |||
| ..... valueMoney | Money | |||
| ..... valuePeriod | Period | |||
| ..... valueQuantity | Quantity | |||
| ..... valueRange | Range | |||
| ..... valueRatio | Ratio | |||
| ..... valueReference | Reference() | |||
| ..... valueSampledData | SampledData | |||
| ..... valueSignature | Signature | |||
| ..... valueTiming | Timing | |||
| ..... valueContactDetail | ContactDetail | |||
| ..... valueContributor | Contributor | |||
| ..... valueDataRequirement | DataRequirement | |||
| ..... valueExpression | Expression | |||
| ..... valueParameterDefinition | ParameterDefinition | |||
| ..... valueRelatedArtifact | RelatedArtifact | |||
| ..... valueTriggerDefinition | TriggerDefinition | |||
| ..... valueUsageContext | UsageContext | |||
| ..... valueDosage | Dosage | |||
| ..... valueMeta | Meta | |||
| .... resource | Σ I | 0..1 | Resource | If parameter is a whole resource |
| .... part | Σ | 0..* | see parameter | Named part of a multi-part parameter |
doco Documentation for this format | ||||
UML Diagram (Legend)
XML Template
<Parameters xmlns="http://hl7.org/fhir"> doco <!-- from Resource: id, meta, implicitRules, and language --> <parameter> <!-- 0..* Operation Parameter --> <name value="[string ]"/><!-- 1..1 Name from the definition --> <value[x]><!-- ?? 0..1 base64Binary|boolean|canonical|code|date|dateTime|decimal| id|instant|integer|markdown|oid|positiveInt|string|time|unsignedInt|uri|url| uuid|Address|Age|Annotation|Attachment|CodeableConcept|Coding|ContactPoint| Count|Distance|Duration|HumanName|Identifier|Money|Period|Quantity|Range| Ratio|Reference|SampledData|Signature|Timing|ContactDetail|Contributor| DataRequirement|Expression|ParameterDefinition|RelatedArtifact| TriggerDefinition|UsageContext|Dosage|Meta If parameter is a data type --></value[x]> <resource><!-- ?? 0..1 Resource If parameter is a whole resource --></resource> <part><!-- 0..* Content as for Parameters.parameter Named part of a multi-part parameter --></part> </parameter> </Parameters>
JSON Template
{doco
"resourceType" : "Parameters",
// from Resource: id, meta, implicitRules, and language
"parameter" : [{ // Operation Parameter
"name" : "<string >", // R! Name from the definition
// value[x]: If parameter is a data type. One of these 50:
"valueBase64Binary" : "<base64Binary >",
"valueBoolean" : <boolean >,
"valueCanonical" : "<canonical >",
"valueCode" : "<code >",
"valueDate" : "<date >",
"valueDateTime" : "<dateTime >",
"valueDecimal" : <decimal >,
"valueId" : "<id >",
"valueInstant" : "<instant >",
"valueInteger" : <integer >,
"valueMarkdown" : "<markdown >",
"valueOid" : "<oid >",
"valuePositiveInt" : "<positiveInt >",
"valueString" : "<string >",
"valueTime" : "<time >",
"valueUnsignedInt" : "<unsignedInt >",
"valueUri" : "<uri >",
"valueUrl" : "<url >",
"valueUuid" : "<uuid >",
"valueAddress" : { Address },
"valueAge" : { Age },
"valueAnnotation" : { Annotation },
"valueAttachment" : { Attachment },
"valueCodeableConcept" : { CodeableConcept },
"valueCoding" : { Coding },
"valueContactPoint" : { ContactPoint },
"valueCount" : { Count },
"valueDistance" : { Distance },
"valueDuration" : { Duration },
"valueHumanName" : { HumanName },
"valueIdentifier" : { Identifier },
"valueMoney" : { Money },
"valuePeriod" : { Period },
"valueQuantity" : { Quantity },
"valueRange" : { Range },
"valueRatio" : { Ratio },
"valueReference" : { Reference },
"valueSampledData" : { SampledData },
"valueSignature" : { Signature },
"valueTiming" : { Timing },
"valueContactDetail" : { ContactDetail },
"valueContributor" : { Contributor },
"valueDataRequirement" : { DataRequirement },
"valueExpression" : { Expression },
"valueParameterDefinition" : { ParameterDefinition },
"valueRelatedArtifact" : { RelatedArtifact },
"valueTriggerDefinition" : { TriggerDefinition },
"valueUsageContext" : { UsageContext },
"valueDosage" : { Dosage },
"valueMeta" : { Meta },
"resource" : { Resource }, // C? If parameter is a whole resource
"part" : [{ Content as for Parameters.parameter }] // Named part of a multi-part parameter
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .doco [ a fhir:Parameters; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language fhir:Parameters.parameter[ # 0..* Operation Parameter fhir:Parameters.parameter.name[ string ]; # 1..1 Name from the definition # Parameters.parameter.value[x]: 0..1 If parameter is a data type. One of these 50 fhir:Parameters.parameter.valueBase64Binary[ base64Binary ] fhir:Parameters.parameter.valueBoolean[ boolean ] fhir:Parameters.parameter.valueCanonical[ canonical ] fhir:Parameters.parameter.valueCode[ code ] fhir:Parameters.parameter.valueDate[ date ] fhir:Parameters.parameter.valueDateTime[ dateTime ] fhir:Parameters.parameter.valueDecimal[ decimal ] fhir:Parameters.parameter.valueId[ id ] fhir:Parameters.parameter.valueInstant[ instant ] fhir:Parameters.parameter.valueInteger[ integer ] fhir:Parameters.parameter.valueMarkdown[ markdown ] fhir:Parameters.parameter.valueOid[ oid ] fhir:Parameters.parameter.valuePositiveInt[ positiveInt ] fhir:Parameters.parameter.valueString[ string ] fhir:Parameters.parameter.valueTime[ time ] fhir:Parameters.parameter.valueUnsignedInt[ unsignedInt ] fhir:Parameters.parameter.valueUri[ uri ] fhir:Parameters.parameter.valueUrl[ url ] fhir:Parameters.parameter.valueUuid[ uuid ] fhir:Parameters.parameter.valueAddress[ Address ] fhir:Parameters.parameter.valueAge[ Age ] fhir:Parameters.parameter.valueAnnotation[ Annotation ] fhir:Parameters.parameter.valueAttachment[ Attachment ] fhir:Parameters.parameter.valueCodeableConcept[ CodeableConcept ] fhir:Parameters.parameter.valueCoding[ Coding ] fhir:Parameters.parameter.valueContactPoint[ ContactPoint ] fhir:Parameters.parameter.valueCount[ Count ] fhir:Parameters.parameter.valueDistance[ Distance ] fhir:Parameters.parameter.valueDuration[ Duration ] fhir:Parameters.parameter.valueHumanName[ HumanName ] fhir:Parameters.parameter.valueIdentifier[ Identifier ] fhir:Parameters.parameter.valueMoney[ Money ] fhir:Parameters.parameter.valuePeriod[ Period ] fhir:Parameters.parameter.valueQuantity[ Quantity ] fhir:Parameters.parameter.valueRange[ Range ] fhir:Parameters.parameter.valueRatio[ Ratio ] fhir:Parameters.parameter.valueReference[ Reference ] fhir:Parameters.parameter.valueSampledData[ SampledData ] fhir:Parameters.parameter.valueSignature[ Signature ] fhir:Parameters.parameter.valueTiming[ Timing ] fhir:Parameters.parameter.valueContactDetail[ ContactDetail ] fhir:Parameters.parameter.valueContributor[ Contributor ] fhir:Parameters.parameter.valueDataRequirement[ DataRequirement ] fhir:Parameters.parameter.valueExpression[ Expression ] fhir:Parameters.parameter.valueParameterDefinition[ ParameterDefinition ] fhir:Parameters.parameter.valueRelatedArtifact[ RelatedArtifact ] fhir:Parameters.parameter.valueTriggerDefinition[ TriggerDefinition ] fhir:Parameters.parameter.valueUsageContext[ UsageContext ] fhir:Parameters.parameter.valueDosage[ Dosage ] fhir:Parameters.parameter.valueMeta[ Meta ] fhir:Parameters.parameter.resource[ Resource ]; # 0..1 If parameter is a whole resource fhir:Parameters.parameter.part[ See Parameters.parameter ], ... ; # 0..* Named part of a multi-part parameter ], ...; ]
Changes since R4
See the Full Difference for further information
This analysis is available as XML or JSON.
Conversions between R3 and R4
See R3 <--> R4 Conversion Maps (status = 1 test that all execute ok. 1 fail round-trip testing and 1 r3 resources are invalid (0 errors).)
Structure
| Name | Flags | Card. | Type | Description & Constraints doco |
|---|---|---|---|---|
| .. Parameters | N | Resource | Operation Request or Response Elements defined in Ancestors: id, meta, implicitRules, language | |
| ... parameter | Σ I | 0..* | BackboneElement | Operation Parameter + Rule: A parameter must have one and only one of (value, resource, part) |
| .... name | Σ | 1..1 | string | Name from the definition |
| .... value[x] | Σ I | 0..1 | If parameter is a data type | |
| ..... valueBase64Binary | base64Binary | |||
| ..... valueBoolean | boolean | |||
| ..... valueCanonical | canonical() | |||
| ..... valueCode | code | |||
| ..... valueDate | date | |||
| ..... valueDateTime | dateTime | |||
| ..... valueDecimal | decimal | |||
| ..... valueId | id | |||
| ..... valueInstant | instant | |||
| ..... valueInteger | integer | |||
| ..... valueMarkdown | markdown | |||
| ..... valueOid | oid | |||
| ..... valuePositiveInt | positiveInt | |||
| ..... valueString | string | |||
| ..... valueTime | time | |||
| ..... valueUnsignedInt | unsignedInt | |||
| ..... valueUri | uri | |||
| ..... valueUrl | url | |||
| ..... valueUuid | uuid | |||
| ..... valueAddress | Address | |||
| ..... valueAge | Age | |||
| ..... valueAnnotation | Annotation | |||
| ..... valueAttachment | Attachment | |||
| ..... valueCodeableConcept | CodeableConcept | |||
| ..... valueCoding | Coding | |||
| ..... valueContactPoint | ContactPoint | |||
| ..... valueCount | Count | |||
| ..... valueDistance | Distance | |||
| ..... valueDuration | Duration | |||
| ..... valueHumanName | HumanName | |||
| ..... valueIdentifier | Identifier | |||
| ..... valueMoney | Money | |||
| ..... valuePeriod | Period | |||
| ..... valueQuantity | Quantity | |||
| ..... valueRange | Range | |||
| ..... valueRatio | Ratio | |||
| ..... valueReference | Reference() | |||
| ..... valueSampledData | SampledData | |||
| ..... valueSignature | Signature | |||
| ..... valueTiming | Timing | |||
| ..... valueContactDetail | ContactDetail | |||
| ..... valueContributor | Contributor | |||
| ..... valueDataRequirement | DataRequirement | |||
| ..... valueExpression | Expression | |||
| ..... valueParameterDefinition | ParameterDefinition | |||
| ..... valueRelatedArtifact | RelatedArtifact | |||
| ..... valueTriggerDefinition | TriggerDefinition | |||
| ..... valueUsageContext | UsageContext | |||
| ..... valueDosage | Dosage | |||
| ..... valueMeta | Meta | |||
| .... resource | Σ I | 0..1 | Resource | If parameter is a whole resource |
| .... part | Σ | 0..* | see parameter | Named part of a multi-part parameter |
doco Documentation for this format | ||||
UML Diagram (Legend)
XML Template
<Parameters xmlns="http://hl7.org/fhir"> doco <!-- from Resource: id, meta, implicitRules, and language --> <parameter> <!-- 0..* Operation Parameter --> <name value="[string ]"/><!-- 1..1 Name from the definition --> <value[x]><!-- ?? 0..1 base64Binary|boolean|canonical|code|date|dateTime|decimal| id|instant|integer|markdown|oid|positiveInt|string|time|unsignedInt|uri|url| uuid|Address|Age|Annotation|Attachment|CodeableConcept|Coding|ContactPoint| Count|Distance|Duration|HumanName|Identifier|Money|Period|Quantity|Range| Ratio|Reference|SampledData|Signature|Timing|ContactDetail|Contributor| DataRequirement|Expression|ParameterDefinition|RelatedArtifact| TriggerDefinition|UsageContext|Dosage|Meta If parameter is a data type --></value[x]> <resource><!-- ?? 0..1 Resource If parameter is a whole resource --></resource> <part><!-- 0..* Content as for Parameters.parameter Named part of a multi-part parameter --></part> </parameter> </Parameters>
JSON Template
{doco
"resourceType" : "Parameters",
// from Resource: id, meta, implicitRules, and language
"parameter" : [{ // Operation Parameter
"name" : "<string >", // R! Name from the definition
// value[x]: If parameter is a data type. One of these 50:
"valueBase64Binary" : "<base64Binary >",
"valueBoolean" : <boolean >,
"valueCanonical" : "<canonical >",
"valueCode" : "<code >",
"valueDate" : "<date >",
"valueDateTime" : "<dateTime >",
"valueDecimal" : <decimal >,
"valueId" : "<id >",
"valueInstant" : "<instant >",
"valueInteger" : <integer >,
"valueMarkdown" : "<markdown >",
"valueOid" : "<oid >",
"valuePositiveInt" : "<positiveInt >",
"valueString" : "<string >",
"valueTime" : "<time >",
"valueUnsignedInt" : "<unsignedInt >",
"valueUri" : "<uri >",
"valueUrl" : "<url >",
"valueUuid" : "<uuid >",
"valueAddress" : { Address },
"valueAge" : { Age },
"valueAnnotation" : { Annotation },
"valueAttachment" : { Attachment },
"valueCodeableConcept" : { CodeableConcept },
"valueCoding" : { Coding },
"valueContactPoint" : { ContactPoint },
"valueCount" : { Count },
"valueDistance" : { Distance },
"valueDuration" : { Duration },
"valueHumanName" : { HumanName },
"valueIdentifier" : { Identifier },
"valueMoney" : { Money },
"valuePeriod" : { Period },
"valueQuantity" : { Quantity },
"valueRange" : { Range },
"valueRatio" : { Ratio },
"valueReference" : { Reference },
"valueSampledData" : { SampledData },
"valueSignature" : { Signature },
"valueTiming" : { Timing },
"valueContactDetail" : { ContactDetail },
"valueContributor" : { Contributor },
"valueDataRequirement" : { DataRequirement },
"valueExpression" : { Expression },
"valueParameterDefinition" : { ParameterDefinition },
"valueRelatedArtifact" : { RelatedArtifact },
"valueTriggerDefinition" : { TriggerDefinition },
"valueUsageContext" : { UsageContext },
"valueDosage" : { Dosage },
"valueMeta" : { Meta },
"resource" : { Resource }, // C? If parameter is a whole resource
"part" : [{ Content as for Parameters.parameter }] // Named part of a multi-part parameter
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .doco [ a fhir:Parameters; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language fhir:Parameters.parameter[ # 0..* Operation Parameter fhir:Parameters.parameter.name[ string ]; # 1..1 Name from the definition # Parameters.parameter.value[x]: 0..1 If parameter is a data type. One of these 50 fhir:Parameters.parameter.valueBase64Binary[ base64Binary ] fhir:Parameters.parameter.valueBoolean[ boolean ] fhir:Parameters.parameter.valueCanonical[ canonical ] fhir:Parameters.parameter.valueCode[ code ] fhir:Parameters.parameter.valueDate[ date ] fhir:Parameters.parameter.valueDateTime[ dateTime ] fhir:Parameters.parameter.valueDecimal[ decimal ] fhir:Parameters.parameter.valueId[ id ] fhir:Parameters.parameter.valueInstant[ instant ] fhir:Parameters.parameter.valueInteger[ integer ] fhir:Parameters.parameter.valueMarkdown[ markdown ] fhir:Parameters.parameter.valueOid[ oid ] fhir:Parameters.parameter.valuePositiveInt[ positiveInt ] fhir:Parameters.parameter.valueString[ string ] fhir:Parameters.parameter.valueTime[ time ] fhir:Parameters.parameter.valueUnsignedInt[ unsignedInt ] fhir:Parameters.parameter.valueUri[ uri ] fhir:Parameters.parameter.valueUrl[ url ] fhir:Parameters.parameter.valueUuid[ uuid ] fhir:Parameters.parameter.valueAddress[ Address ] fhir:Parameters.parameter.valueAge[ Age ] fhir:Parameters.parameter.valueAnnotation[ Annotation ] fhir:Parameters.parameter.valueAttachment[ Attachment ] fhir:Parameters.parameter.valueCodeableConcept[ CodeableConcept ] fhir:Parameters.parameter.valueCoding[ Coding ] fhir:Parameters.parameter.valueContactPoint[ ContactPoint ] fhir:Parameters.parameter.valueCount[ Count ] fhir:Parameters.parameter.valueDistance[ Distance ] fhir:Parameters.parameter.valueDuration[ Duration ] fhir:Parameters.parameter.valueHumanName[ HumanName ] fhir:Parameters.parameter.valueIdentifier[ Identifier ] fhir:Parameters.parameter.valueMoney[ Money ] fhir:Parameters.parameter.valuePeriod[ Period ] fhir:Parameters.parameter.valueQuantity[ Quantity ] fhir:Parameters.parameter.valueRange[ Range ] fhir:Parameters.parameter.valueRatio[ Ratio ] fhir:Parameters.parameter.valueReference[ Reference ] fhir:Parameters.parameter.valueSampledData[ SampledData ] fhir:Parameters.parameter.valueSignature[ Signature ] fhir:Parameters.parameter.valueTiming[ Timing ] fhir:Parameters.parameter.valueContactDetail[ ContactDetail ] fhir:Parameters.parameter.valueContributor[ Contributor ] fhir:Parameters.parameter.valueDataRequirement[ DataRequirement ] fhir:Parameters.parameter.valueExpression[ Expression ] fhir:Parameters.parameter.valueParameterDefinition[ ParameterDefinition ] fhir:Parameters.parameter.valueRelatedArtifact[ RelatedArtifact ] fhir:Parameters.parameter.valueTriggerDefinition[ TriggerDefinition ] fhir:Parameters.parameter.valueUsageContext[ UsageContext ] fhir:Parameters.parameter.valueDosage[ Dosage ] fhir:Parameters.parameter.valueMeta[ Meta ] fhir:Parameters.parameter.resource[ Resource ]; # 0..1 If parameter is a whole resource fhir:Parameters.parameter.part[ See Parameters.parameter ], ... ; # 0..* Named part of a multi-part parameter ], ...; ]
Changes since Release 4
See the Full Difference for further information
This analysis is available as XML or JSON.
Conversions between R3 and R4
See R3 <--> R4 Conversion Maps (status = 1 test that all execute ok. 1 fail round-trip testing and 1 r3 resources are invalid (0 errors).)
See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) & the dependency analysis
Note: for technical compatibility reasons, the Parameters resource inherits from Resource, but since the parameter exchange format has no end-point and/or persistence, it never has an id, a versionId, or a lastUpdated. The other features of Resource (tags, profiles, security labels, language etc.) may have use when operations are executed.
The following rules apply to name and identifier uniqueness within a Parameters resource:
parameter.resource do not need to be unique, though the interpretation of
non-unique resources, or different versions of the same resource, may be ambiguous in cases where
the parameter names do not clearly differentiate the purpose of the parameter. For
additional commentary, see the notes about about resource uniqueness in Bundles,
though be aware that those rules do not apply to the Parameters resource unless the fullUrl extension is present on parameters with resources.
parameter.resource, the
resolution stops at parameter.resource. This allows resources to appear more than
once in a Parameters resource, and also means that resources cannot reference content in another
resource using an internal reference (except for references inside contained resources)