R4 Ballot #1 (Mixed Normative/Trial use)

This page is part of the FHIR Specification (v3.3.0: R4 Ballot 2). 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

2.44 Parameters Resource

http://www.hl7.org/Special/committees/fiwg/index.cfmMaturity Level: 5 Normative Compartments: Not linked to any defined compartments

Normative Candidate Note: This page is candidate normative content for R4 in the Infrastructure Package. Once normative, it will lose it's Maturity Level, and breaking changes will no longer be made.

This special resource type is used to represent the operation request and response.

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

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Parameters ΣNResourceOperation Request or Response
Elements defined in Ancestors: id, meta, implicitRules, language
... parameter ΣI0..*BackboneElementOperation Parameter
+ A parameter must have only one of (value, resource, part)
.... name Σ1..1stringName from the definition
.... value[x] ΣI0..1*If parameter is a data type
.... resource ΣI0..1ResourceIf parameter is a whole resource
.... part Σ0..*see parameterNamed part of a multi-part parameter

doco Documentation for this format

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 * 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 23:
    "valueInteger" : <integer>,
    "valueDecimal" : <decimal>,
    "valueDateTime" : "<dateTime>",
    "valueDate" : "<date>",
    "valueInstant" : "<instant>",
    "valueString" : "<string>",
    "valueUri" : "<uri>",
    "valueBoolean" : <boolean>,
    "valueCode" : "<code>",
    "valueBase64Binary" : "<base64Binary>",
    "valueCoding" : { Coding },
    "valueCodeableConcept" : { CodeableConcept },
    "valueAttachment" : { Attachment },
    "valueIdentifier" : { Identifier },
    "valueQuantity" : { Quantity },
    "valueRange" : { Range },
    "valuePeriod" : { Period },
    "valueRatio" : { Ratio },
    "valueHumanName" : { HumanName },
    "valueAddress" : { Address },
    "valueContactPoint" : { ContactPoint },
    "valueSchedule" : { Schedule },
    "valueReference" : { Reference },
    "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/> .

[
 # from Element: Element.extension
  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 48
      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.valueParameterDefinition [ ParameterDefinition ]
      fhir:Parameters.parameter.valueDataRequirement [ DataRequirement ]
      fhir:Parameters.parameter.valueRelatedArtifact [ RelatedArtifact ]
      fhir:Parameters.parameter.valueContactDetail [ ContactDetail ]
      fhir:Parameters.parameter.valueContributor [ Contributor ]
      fhir:Parameters.parameter.valueTriggerDefinition [ TriggerDefinition ]
      fhir:Parameters.parameter.valueUsageContext [ UsageContext ]
      fhir:Parameters.parameter.valueDosage [ Dosage ]
    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
  ], ...;
]

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. Parameters ΣNResourceOperation Request or Response
Elements defined in Ancestors: id, meta, implicitRules, language
... parameter ΣI0..*BackboneElementOperation Parameter
+ A parameter must have only one of (value, resource, part)
.... name Σ1..1stringName from the definition
.... value[x] ΣI0..1*If parameter is a data type
.... resource ΣI0..1ResourceIf parameter is a whole resource
.... part Σ0..*see parameterNamed part of a multi-part parameter

doco Documentation for this format

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 * 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 23:
    "valueInteger" : <integer>,
    "valueDecimal" : <decimal>,
    "valueDateTime" : "<dateTime>",
    "valueDate" : "<date>",
    "valueInstant" : "<instant>",
    "valueString" : "<string>",
    "valueUri" : "<uri>",
    "valueBoolean" : <boolean>,
    "valueCode" : "<code>",
    "valueBase64Binary" : "<base64Binary>",
    "valueCoding" : { Coding },
    "valueCodeableConcept" : { CodeableConcept },
    "valueAttachment" : { Attachment },
    "valueIdentifier" : { Identifier },
    "valueQuantity" : { Quantity },
    "valueRange" : { Range },
    "valuePeriod" : { Period },
    "valueRatio" : { Ratio },
    "valueHumanName" : { HumanName },
    "valueAddress" : { Address },
    "valueContactPoint" : { ContactPoint },
    "valueSchedule" : { Schedule },
    "valueReference" : { Reference },
    "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/> .

[
 # from Element: Element.extension
  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 48
      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.valueParameterDefinition [ ParameterDefinition ]
      fhir:Parameters.parameter.valueDataRequirement [ DataRequirement ]
      fhir:Parameters.parameter.valueRelatedArtifact [ RelatedArtifact ]
      fhir:Parameters.parameter.valueContactDetail [ ContactDetail ]
      fhir:Parameters.parameter.valueContributor [ Contributor ]
      fhir:Parameters.parameter.valueTriggerDefinition [ TriggerDefinition ]
      fhir:Parameters.parameter.valueUsageContext [ UsageContext ]
      fhir:Parameters.parameter.valueDosage [ Dosage ]
    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
  ], ...;
]
  • inv-1: On Parameters.parameter: A parameter must have only one of (value, resource, part) (expression on Parameters.parameter: (part.exists() and value.empty() and resource.empty()) or (part.empty() and (value.exists() xor resource.exists())))

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.