This
page
is
part
of
the
FHIR
Specification
(v3.3.0:
(v4.0.1:
R4
Ballot
2).
-
Mixed
Normative
and
STU
)
in
it's
permanent
home
(it
will
always
be
available
at
this
URL).
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
Work
Group
|
Maturity
Level
:
|
Normative (from v4.0.0) | Compartments : Not linked to any defined compartments |
|
|
This
page
standard.
See
the
Infrastructure
Package
for
further
details.
|
This
resource
is
a
non-persisted
resource
used
to
pass
information
into
and
back
from
an
operation
.
Once
normative,
it
will
lose
it's
Maturity
Level,
It
has
no
other
use,
and
breaking
changes
will
there
is
no
longer
be
made.
RESTful
endpoint
associated
with
it.
This
special
resource
type
is
a
non-persisted
resource
used
to
represent
the
pass
information
into
and
back
from
an
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
operation.
This resource is referenced by GuidanceResponse
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ N | Resource |
Operation
Request
or
Response
Elements defined in Ancestors: id , meta , implicitRules , language |
|
|
Σ I | 0..* | BackboneElement |
Operation
Parameter
+ Rule: A parameter must have one and only one of (value, resource, part) |
|
Σ | 1..1 | string | Name from the definition |
|
Σ I | 0..1 | * | If parameter is a data type |
|
Σ I | 0..1 | Resource | If parameter is a whole resource |
|
Σ | 0..* | see parameter |
Named
part
of
a
multi-part
parameter
|
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
<Parameters xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <parameter> <!-- 0..* Operation Parameter --> <name value="[string]"/><!-- 1..1 Name from the definition -->
<</value[x]> <</resource><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
{
"resourceType" : "",
"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/> .@prefix fhir: <http://hl7.org/fhir/> .![]()
[ # from Element:[ 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# . One of these 48# 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: ] fhir: ] fhir: ]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 R3
| Parameters | |
| Parameters.parameter.value[x] |
|
See the Full Difference for further information
This analysis is available as XML or JSON .
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
|
|---|---|---|---|---|
|
Σ N | Resource |
Operation
Request
or
Response
Elements defined in Ancestors: id , meta , implicitRules , language |
|
|
Σ I | 0..* | BackboneElement |
Operation
Parameter
+ Rule: A parameter must have one and only one of (value, resource, part) |
|
Σ | 1..1 | string | Name from the definition |
|
Σ I | 0..1 | * | If parameter is a data type |
|
Σ I | 0..1 | Resource | If parameter is a whole resource |
|
Σ | 0..* | see parameter |
Named
part
of
a
multi-part
parameter
|
Documentation
for
this
format
|
||||
XML Template
<Parameters xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <parameter> <!-- 0..* Operation Parameter --> <name value="[string]"/><!-- 1..1 Name from the definition -->
<</value[x]> <</resource><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
{
"resourceType" : "",
"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/> .@prefix fhir: <http://hl7.org/fhir/> .![]()
[ # from Element:[ 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# . One of these 48# 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: ] fhir: ] fhir: ]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 3
| Parameters | |
| Parameters.parameter.value[x] |
|
See the Full Difference for further information
This analysis is available as XML or JSON .
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
| id | Level | Location | Description | Expression |
|
inv-1
|
Rule | Parameters.parameter |
A
parameter
must
have
one
and
only
one
of
(value,
resource,
part)
|
|
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 Names | Parameter names can be repeated at any level. The meaning of duplicate parameter names - and whether it is valid to repeat any given parameter name - depends on the context. Typically, operation definitions define what parameters can be used, and whether they can repeat. The order of parameters with different names is not considered significant |
| Resources |
Resources
in
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.
|
| Internal References |
When
internal
references
are
resolved
in
a
resource
in
a
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
)
|
| References | When resolving references in resources, the applicable Operation Definition may specify how references may be resolved between parameters. If a reference cannot be resolved between the parameters, the application should fall back to it's general resource resolution methods |