This
page
is
part
of
the
Continuous
Integration
Build
of
FHIR
Specification
(v5.0.0:
R5
-
STU
).
This
is
the
current
published
version
in
it's
permanent
home
(it
will
always
(will
be
available
incorrect/inconsistent
at
this
URL).
For
a
full
list
of
available
versions,
see
times).
See
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
R2
Responsible
Owner:
FHIR
Infrastructure
Work
Group
|
Standards Status : Normative |
Types Framework Cross Reference: Base Types | Datatypes | Resources | Patterns
The definition of an element in a resource or an extension. The definition includes:
The ElementDefinition type is the core of the FHIR metadata layer, and is closely (conceptually) aligned to ISO 11179 . All the data elements defined in this specification are published as a collection of data elements ( XML or JSON ).
ElementDefinition is used in StructureDefinition
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
Filter:
|
|---|---|---|---|---|
|
Σ N | Element |
Definition
of
an
element
in
a
resource
or
extension
+ Rule: Min <= Max + Rule: if the element definition has a contentReference, it cannot have type, defaultValue, fixed, pattern, example, minValue, maxValue, maxLength, or binding + Rule: Fixed value may only be specified if there is one type + Rule: Pattern may only be specified if there is one type + Rule: Pattern and fixed are mutually exclusive + Rule: Binding can only be present for coded elements, string, and uri if using FHIR-defined types + Rule: Types must be unique by code + Rule: Constraints must be unique by key + Rule: default value and meaningWhenMissing are mutually exclusive + Rule: sliceName must be composed of proper tokens separated by "/" + Rule: Must have a modifier reason if isModifier = true + Rule: Element path SHALL be expressed as a set of '.'-separated components with each component restricted to a maximum of 64 characters and with some limits on the allowed choice of characters + Warning: The first component of the path should be UpperCamelCase. Additional components (following a '.') should be lowerCamelCase. If this syntax is not adhered to, code generation tools may be broken. Logical models may be less concerned about this implication. + Rule: sliceIsConstraining can only appear if slicename is present + Guideline: pattern[x] should be used rather than fixed[x] + Warning: Order has no meaning (and cannot be asserted to have meaning), so enforcing rules on order is improper + Warning: Mappings SHOULD be unique by key + Rule: Can't have valueAlternatives if mustHaveValue is true + Warning: If there's more than one bindable type, it's usually an error for there to be a binding Elements defined in Ancestors: id , extension , modifierExtension |
|
|
Σ C | 1..1 | string |
Path
of
the
element
in
the
hierarchy
of
elements
|
|
Σ | 0..* | code |
xmlAttr
|
xmlText
|
typeAttr
|
cdaText
|
xhtml
Binding: PropertyRepresentation ( Required ) |
|
Σ C | 0..1 | string |
Name
for
this
particular
element
(in
a
set
of
slices)
|
|
Σ
C
|
0..1 | boolean |
If
this
slice
definition
constrains
an
inherited
slice
definition
(or
not)
|
|
Σ T | 0..1 | string |
String
to
display
with
or
prompt
for
element
|
|
Σ | 0..* | Coding |
Corresponding
codes
in
terminologies
Binding: ElementDefinitionCode
(
Example
)
|
|
Σ C | 0..1 | Element |
This
element
is
sliced
-
slices
follow
|
|
Σ | 0..* | Element |
Element
values
that
are
used
to
distinguish
the
slices
|
|
Σ | 1..1 | code |
value
|
exists
|
type
|
profile
|
position
Binding: DiscriminatorType ( Required ) |
|
Σ | 1..1 | string |
Path
to
element
value
|
|
Σ T | 0..1 | string |
Text
description
of
how
slicing
works
(or
not)
|
|
Σ C | 0..1 | boolean |
If
elements
must
be
in
same
order
as
slices
|
|
Σ C | 1..1 | code |
closed
|
open
|
openAtEnd
Binding: SlicingRules ( Required ) |
|
Σ T | 0..1 | string |
Concise
definition
for
space-constrained
presentation
|
|
Σ T | 0..1 | markdown |
Full
formal
definition
as
narrative
text
|
|
Σ T | 0..1 | markdown |
Comments
about
the
use
of
this
element
|
|
Σ T | 0..1 | markdown |
Requirements
satisfied
by
this
|
|
Σ T | 0..* | string |
Other
names
|
|
Σ C | 0..1 | unsignedInt |
Minimum
Cardinality
|
|
Σ C | 0..1 | string |
Maximum
Cardinality
(a
number
or
*)
+ Rule: Max SHALL be a number or "*" |
|
Σ | 0..1 | Element |
Base
definition
information
for
tools
|
|
Σ | 1..1 | string |
Path
that
identifies
the
base
element
|
|
Σ | 1..1 | unsignedInt |
Min
cardinality
of
the
base
element
|
|
Σ | 1..1 | string |
Max
cardinality
of
the
base
element
|
|
Σ C | 0..1 | uri |
Reference
to
definition
of
content
for
the
element
|
|
Σ C | 0..* | Element |
Data
type
and
Profile
for
this
element
+ Rule: Aggregation may only be specified if one of the allowed types for the element is a reference + Rule: targetProfile is only allowed if the type is Reference or canonical + Warning: profiles SHOULD be unique + Warning: targetProfiles SHOULD be unique |
|
Σ C | 1..1 | uri |
Data
type
or
Resource
(reference
to
definition)
Binding: Element Definition Types ( Extensible ) |
|
Σ | 0..* | canonical ( StructureDefinition | ImplementationGuide ) |
Profiles
(StructureDefinition
or
IG)
-
one
must
apply
|
|
Σ C | 0..* | canonical ( StructureDefinition | ImplementationGuide ) |
Profile
(StructureDefinition
or
IG)
on
the
Reference/canonical
target
-
one
must
apply
|
|
Σ C | 0..* | code |
contained
|
referenced
|
bundled
-
how
aggregated
Binding: AggregationMode ( Required ) |
|
Σ | 0..1 | code |
either
|
independent
|
specific
Binding: ReferenceVersionRules ( Required ) |
|
Σ C | 0..1 | * |
Specified
value
if
missing
from
instance
|
|
Σ T C | 0..1 | markdown |
Implicit
meaning
when
this
element
is
missing
|
|
Σ C | 0..1 | string |
What
the
order
of
the
elements
means
|
|
Σ C | 0..1 | * |
Value
must
be
exactly
this
|
|
Σ C | 0..1 | * |
Value
must
have
at
least
these
property
values
|
|
Σ C | 0..* | Element |
Example
value
(as
defined
for
type)
|
|
Σ T | 1..1 | string |
Describes
the
purpose
of
this
example
|
|
Σ | 1..1 | * |
Value
of
Example
(one
of
allowed
types)
|
|
Σ C | 0..1 |
Minimum
Allowed
Value
(for
some
types)
|
|
|
date | |||
|
dateTime | |||
|
instant | |||
|
time | |||
|
decimal | |||
|
integer | |||
|
integer64 | |||
|
positiveInt | |||
|
unsignedInt | |||
|
Quantity | |||
|
Σ C | 0..1 |
Maximum
Allowed
Value
(for
some
types)
|
|
|
date | |||
|
dateTime | |||
|
instant | |||
|
time | |||
|
decimal | |||
|
integer | |||
|
integer64 | |||
|
positiveInt | |||
|
unsignedInt | |||
|
Quantity | |||
|
Σ C | 0..1 | integer |
Max
length
for
string
type
data
|
|
Σ | 0..* | id |
Reference
to
invariant
about
presence
|
|
Σ C | 0..* | Element |
Condition
that
must
evaluate
to
true
+ Warning: Constraints should have an expression or else validators will not be able to enforce them + Rule: Errors cannot be suppressed |
|
Σ C | 1..1 | id |
Target
of
'condition'
reference
above
|
|
Σ | 0..1 | markdown |
Why
this
constraint
is
necessary
or
appropriate
|
|
Σ C | 1..1 | code |
error
|
warning
Binding: ConstraintSeverity ( Required ) |
|
Σ
C
|
0..1 | boolean |
Suppress
warning
or
hint
in
profile
|
|
Σ T | 1..1 | string |
Human
description
of
constraint
|
|
Σ C | 0..1 | string |
FHIRPath
expression
of
constraint
|
|
Σ | 0..1 | canonical ( StructureDefinition ) |
Reference
to
original
source
of
constraint
|
|
Σ
C
|
0..1 | boolean |
For
primitives,
that
a
value
must
be
present
-
not
replaced
by
an
extension
|
|
Σ
C
|
0..* | canonical ( StructureDefinition ) |
Extensions
that
are
allowed
to
replace
a
primitive
value
|
|
Σ | 0..1 | boolean |
If
the
element
must
be
supported
(discouraged
-
see
obligations)
|
|
Σ C | 0..1 | boolean |
If
this
modifies
the
meaning
of
other
elements
|
|
Σ C | 0..1 | string |
Reason
that
this
element
is
marked
as
a
modifier
|
|
Σ | 0..1 | boolean |
Include
when
_summary
=
true?
|
|
Σ C | 0..1 | Element |
ValueSet
details
if
this
is
coded
+ Rule: ValueSet SHALL start with http:// or https:// or urn: or # + Rule: binding SHALL have either description or valueSet + Rule: If the strength is 'descriptive' no value set can ve provided + Guideline: if there's a required binding with no usage, it should be the base binding |
|
Σ | 1..1 | code |
required
|
extensible
|
preferred
|
example
|
descriptive
Binding: BindingStrength ( Required ) |
|
Σ T C | 0..1 | markdown |
Guidance
on
the
|
|
Σ C | 0..1 | canonical ( ValueSet ) |
Source
of
value
set
|
|
Σ
|
0..* | Element |
Additional
Bindings
-
more
rules
about
the
binding
+ Guideline: additionalBindings should have a key |
|
Σ | 0..1 | id |
Unique
identifier
so
additional
bindings
to
be
matched
across
profiles
|
| Σ | 1..1 | code |
maximum
|
minimum
|
required
|
extensible
|
candidate
|
current
|
current-extensible
|
best-practice
|
preferred
|
ui
|
starter
|
component
Binding: Additional Binding Purpose ValueSet ( Required ) |
|
Σ | 1..1 | canonical ( ValueSet ) |
The
value
set
for
the
additional
binding
|
|
Σ | 0..1 | markdown |
Documentation
of
the
purpose
of
use
of
the
binding
|
|
Σ | 0..1 | string |
Concise
documentation
-
for
summary
tables
|
|
Σ | 0..* | UsageContext |
Qualifies
the
usage
-
jurisdiction,
gender,
workflow
status
etc.
|
|
Σ | 0..1 | boolean |
Whether
binding
can
applies
to
all
repeats,
or
just
one
|
|
Σ C | 0..* | Element |
Map
element
to
another
set
of
definitions
|
|
Σ C | 1..1 | id |
Reference
to
mapping
declaration
|
|
Σ | 0..1 | code |
Computable
language
of
mapping
Binding: Mime Types ( Required ) |
|
Σ | 1..1 | string |
Details
of
the
mapping
|
|
Σ | 0..1 | markdown |
Comments
about
the
mapping
or
its
use
|
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
<ElementDefinition xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <path value="[string]"/><!-- I 1..1 Path of the element in the hierarchy of elements --> <representation value="[code]"/><!-- 0..* xmlAttr | xmlText | typeAttr | cdaText | xhtml --> <sliceName value="[string]"/><!-- I 0..1 Name for this particular element (in a set of slices) --> <sliceIsConstraining value="[boolean]"/><!-- I 0..1 If this slice definition constrains an inherited slice definition (or not) --> <label value="[string]"/><!-- 0..1 String to display with or prompt for element --> <code><!-- 0..* Coding Corresponding codes in terminologies--></code> <slicing> <!-- I 0..1 This element is sliced - slices follow --> <discriminator> <!-- 0..* Element values that are used to distinguish the slices --> <type value="[code]"/><!-- 1..1 value | exists | type | profile | position --> <path value="[string]"/><!-- 1..1 Path to element value --> </discriminator> <description value="[string]"/><!-- 0..1 Text description of how slicing works (or not) --> <ordered value="[boolean]"/><!-- I 0..1 If elements must be in same order as slices --> <rules value="[code]"/><!-- I 1..1 closed | open | openAtEnd --> </slicing> <short value="[string]"/><!-- 0..1 Concise definition for space-constrained presentation --> <definition value="[markdown]"/><!-- 0..1 Full formal definition as narrative text --> <comment value="[markdown]"/><!-- 0..1 Comments about the use of this element --> <requirements value="[markdown]"/><!-- 0..1 Requirements satisfied by this element/structure and its constraints --> <alias value="[string]"/><!-- 0..* Other names --> <min value="[unsignedInt]"/><!-- I 0..1 Minimum Cardinality --> <max value="[string]"/><!-- I 0..1 Maximum Cardinality (a number or *) --> <base> <!-- 0..1 Base definition information for tools --> <path value="[string]"/><!-- 1..1 Path that identifies the base element --> <min value="[unsignedInt]"/><!-- 1..1 Min cardinality of the base element --> <max value="[string]"/><!-- 1..1 Max cardinality of the base element --> </base> <contentReference value="[uri]"/><!-- I 0..1 Reference to definition of content for the element --> <type> <!-- I 0..* Data type and Profile for this element --> <code value="[uri]"/><!-- I 1..1 Data type or Resource (reference to definition) --> <profile><!-- 0..* canonical(ImplementationGuide|StructureDefinition) Profiles (StructureDefinition or IG) - one must apply --></profile> <targetProfile><!-- I 0..* canonical(ImplementationGuide|StructureDefinition) Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply --></targetProfile> <aggregation value="[code]"/><!-- I 0..* contained | referenced | bundled - how aggregated --> <versioning value="[code]"/><!-- 0..1 either | independent | specific --> </type> <defaultValue[x]><!-- I 0..1 * Specified value if missing from instance --></defaultValue[x]> <meaningWhenMissing value="[markdown]"/><!-- I 0..1 Implicit meaning when this element is missing --> <orderMeaning value="[string]"/><!-- I 0..1 What the order of the elements means --> <fixed[x]><!-- I 0..1 * Value must be exactly this --></fixed[x]> <If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict"></pattern[x]> < < <</value[x]> </example> <| </minValue[x]> <| </maxValue[x]> < < < < < < < < < <</source> </constraint> < <</valueAlternatives> < < < < < < < <</valueSet> < < <</valueSet> < < <</usage> < </additional> </binding> < < < < < </mapping> </ElementDefinition> If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern[x]><!-- I 0..1 * Value must have at least these property values --></pattern[x]> <example> <!-- I 0..* Example value (as defined for type) --> <label value="[string]"/><!-- 1..1 Describes the purpose of this example --> <value[x]><!-- 1..1 * Value of Example (one of allowed types) --></value[x]> </example> <minValue[x]><!-- I 0..1 date|dateTime|instant|time|decimal|integer|integer64| positiveInt|unsignedInt|Quantity Minimum Allowed Value (for some types) --></minValue[x]> <maxValue[x]><!-- I 0..1 date|dateTime|instant|time|decimal|integer|integer64| positiveInt|unsignedInt|Quantity Maximum Allowed Value (for some types) --></maxValue[x]> <maxLength value="[integer]"/><!-- I 0..1 Max length for string type data --> <condition value="[id]"/><!-- 0..* Reference to invariant about presence --> <constraint> <!-- I 0..* Condition that must evaluate to true --> <key value="[id]"/><!-- I 1..1 Target of 'condition' reference above --> <requirements value="[markdown]"/><!-- 0..1 Why this constraint is necessary or appropriate --> <severity value="[code]"/><!-- I 1..1 error | warning --> <suppress value="[boolean]"/><!-- I 0..1 Suppress warning or hint in profile --> <human value="[string]"/><!-- 1..1 Human description of constraint --> <expression value="[string]"/><!-- I 0..1 FHIRPath expression of constraint --> <source><!-- 0..1 canonical(StructureDefinition) Reference to original source of constraint --></source> </constraint> <mustHaveValue value="[boolean]"/><!-- I 0..1 For primitives, that a value must be present - not replaced by an extension --> <valueAlternatives><!-- I 0..* canonical(StructureDefinition) Extensions that are allowed to replace a primitive value --></valueAlternatives> <mustSupport value="[boolean]"/><!-- 0..1 If the element must be supported (discouraged - see obligations) --> <isModifier value="[boolean]"/><!-- I 0..1 If this modifies the meaning of other elements --> <isModifierReason value="[string]"/><!-- I 0..1 Reason that this element is marked as a modifier --> <isSummary value="[boolean]"/><!-- 0..1 Include when _summary = true? --> <binding> <!-- I 0..1 ValueSet details if this is coded --> <strength value="[code]"/><!-- 1..1 required | extensible | preferred | example | descriptive --> <description value="[markdown]"/><!-- I 0..1 Guidance on the codes to be used --> <valueSet><!-- I 0..1 canonical(ValueSet) Source of value set --></valueSet> <additional> <!-- 0..* Additional Bindings - more rules about the binding --> <key value="[id]"/><!-- 0..1 Unique identifier so additional bindings to be matched across profiles --> <purpose value="[code]"/><!-- 1..1 maximum | minimum | required | extensible | candidate | current | current-extensible | best-practice | preferred | ui | starter | component --> <valueSet><!-- 1..1 canonical(ValueSet) The value set for the additional binding --></valueSet> <documentation value="[markdown]"/><!-- 0..1 Documentation of the purpose of use of the binding --> <shortDoco value="[string]"/><!-- 0..1 Concise documentation - for summary tables --> <usage><!-- 0..* UsageContext Qualifies the usage - jurisdiction, gender, workflow status etc. --></usage> <any value="[boolean]"/><!-- 0..1 Whether binding can applies to all repeats, or just one --> </additional> </binding> <mapping> <!-- I 0..* Map element to another set of definitions --> <identity value="[id]"/><!-- I 1..1 Reference to mapping declaration --> <language value="[code]"/><!-- 0..1 Computable language of mapping --> <map value="[string]"/><!-- 1..1 Details of the mapping --> <comment value="[markdown]"/><!-- 0..1 Comments about the mapping or its use --> </mapping> </ElementDefinition>
JSON Template
{
// from Element: extension
"path" : "<string>", // I R! Path of the element in the hierarchy of elements
"representation" : ["<code>"], // xmlAttr | xmlText | typeAttr | cdaText | xhtml
"sliceName" : "<string>", // I Name for this particular element (in a set of slices)
"sliceIsConstraining" : <boolean>, // I If this slice definition constrains an inherited slice definition (or not)
"label" : "<string>", // String to display with or prompt for element
"code" : [{ Coding }], // Corresponding codes in terminologies
"slicing" : { // I This element is sliced - slices follow
"discriminator" : [{ // Element values that are used to distinguish the slices
"type" : "<code>", // R! value | exists | type | profile | position
"path" : "<string>" // R! Path to element value
}],
"description" : "<string>", // Text description of how slicing works (or not)
"ordered" : <boolean>, // I If elements must be in same order as slices
"rules" : "<code>" // I R! closed | open | openAtEnd
},
"short" : "<string>", // Concise definition for space-constrained presentation
"definition" : "<markdown>", // Full formal definition as narrative text
"comment" : "<markdown>", // Comments about the use of this element
"requirements" : "<markdown>", // Requirements satisfied by this element/structure and its constraints
"alias" : ["<string>"], // Other names
"min" : "<unsignedInt>", // I Minimum Cardinality
"max" : "<string>", // I Maximum Cardinality (a number or *)
"base" : { // Base definition information for tools
"path" : "<string>", // R! Path that identifies the base element
"min" : "<unsignedInt>", // R! Min cardinality of the base element
"max" : "<string>" // R! Max cardinality of the base element
},
"contentReference" : "<uri>", // I Reference to definition of content for the element
"type" : [{ // I Data type and Profile for this element
"code" : "<uri>", // I R! Data type or Resource (reference to definition)
"profile" : ["<canonical(StructureDefinition|ImplementationGuide)>"], // Profiles (StructureDefinition or IG) - one must apply
"targetProfile" : ["<canonical(StructureDefinition|ImplementationGuide)>"], // I Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply
"aggregation" : ["<code>"], // I contained | referenced | bundled - how aggregated
"versioning" : "<code>" // either | independent | specific
}],
// defaultValue[x]: Specified value if missing from instance. One of these 55:
"defaultValueBase64Binary" : "<base64Binary>",
"defaultValueBoolean" : <boolean>,
"defaultValueCanonical" : "<canonical>",
"defaultValueCode" : "<code>",
"defaultValueDate" : "<date>",
"defaultValueDateTime" : "<dateTime>",
"defaultValueDecimal" : <decimal>,
"defaultValueId" : "<id>",
"defaultValueInstant" : "<instant>",
"defaultValueInteger" : <integer>,
"defaultValueInteger64" : "<integer64>",
"defaultValueMarkdown" : "<markdown>",
"defaultValueOid" : "<oid>",
"defaultValuePositiveInt" : "<positiveInt>",
"defaultValueString" : "<string>",
"defaultValueTime" : "<time>",
"defaultValueUnsignedInt" : "<unsignedInt>",
"defaultValueUri" : "<uri>",
"defaultValueUrl" : "<url>",
"defaultValueUuid" : "<uuid>",
"defaultValueAddress" : { Address },
"defaultValueAge" : { Age },
"defaultValueAnnotation" : { Annotation },
"defaultValueAttachment" : { Attachment },
"defaultValueCodeableConcept" : { CodeableConcept },
"defaultValueCodeableReference" : { CodeableReference },
"defaultValueCoding" : { Coding },
"defaultValueContactPoint" : { ContactPoint },
"defaultValueCount" : { Count },
"defaultValueDistance" : { Distance },
"defaultValueDuration" : { Duration },
"defaultValueHumanName" : { HumanName },
"defaultValueIdentifier" : { Identifier },
"defaultValueMoney" : { Money },
"defaultValuePeriod" : { Period },
"defaultValueQuantity" : { Quantity },
"defaultValueRange" : { Range },
"defaultValueRatio" : { Ratio },
"defaultValueRatioRange" : { RatioRange },
"defaultValueReference" : { Reference },
"defaultValueSampledData" : { SampledData },
"defaultValueSignature" : { Signature },
"defaultValueTiming" : { Timing },
"defaultValueContactDetail" : { ContactDetail },
"defaultValueDataRequirement" : { DataRequirement },
"defaultValueExpression" : { Expression },
"defaultValueParameterDefinition" : { ParameterDefinition },
"defaultValueRelatedArtifact" : { RelatedArtifact },
"defaultValueTriggerDefinition" : { TriggerDefinition },
"defaultValueUsageContext" : { UsageContext },
"defaultValueAvailability" : { Availability },
"defaultValueExtendedContactDetail" : { ExtendedContactDetail },
"defaultValueVirtualServiceDetail" : { VirtualServiceDetail },
"defaultValueDosage" : { Dosage },
"defaultValueMeta" : { Meta },
"meaningWhenMissing" : "<markdown>", // I Implicit meaning when this element is missing
"orderMeaning" : "<string>", // I What the order of the elements means
// fixed[x]: Value must be exactly this. One of these 55:
"fixedBase64Binary" : "<base64Binary>",
"fixedBoolean" : <boolean>,
"fixedCanonical" : "<canonical>",
"fixedCode" : "<code>",
"fixedDate" : "<date>",
"fixedDateTime" : "<dateTime>",
"fixedDecimal" : <decimal>,
"fixedId" : "<id>",
"fixedInstant" : "<instant>",
"fixedInteger" : <integer>,
"fixedInteger64" : "<integer64>",
"fixedMarkdown" : "<markdown>",
"fixedOid" : "<oid>",
"fixedPositiveInt" : "<positiveInt>",
"fixedString" : "<string>",
"fixedTime" : "<time>",
"fixedUnsignedInt" : "<unsignedInt>",
"fixedUri" : "<uri>",
"fixedUrl" : "<url>",
"fixedUuid" : "<uuid>",
"fixedAddress" : { Address },
"fixedAge" : { Age },
"fixedAnnotation" : { Annotation },
"fixedAttachment" : { Attachment },
"fixedCodeableConcept" : { CodeableConcept },
"fixedCodeableReference" : { CodeableReference },
"fixedCoding" : { Coding },
"fixedContactPoint" : { ContactPoint },
"fixedCount" : { Count },
"fixedDistance" : { Distance },
"fixedDuration" : { Duration },
"fixedHumanName" : { HumanName },
"fixedIdentifier" : { Identifier },
"fixedMoney" : { Money },
"fixedPeriod" : { Period },
"fixedQuantity" : { Quantity },
"fixedRange" : { Range },
"fixedRatio" : { Ratio },
"fixedRatioRange" : { RatioRange },
"fixedReference" : { Reference },
"fixedSampledData" : { SampledData },
"fixedSignature" : { Signature },
"fixedTiming" : { Timing },
"fixedContactDetail" : { ContactDetail },
"fixedDataRequirement" : { DataRequirement },
"fixedExpression" : { Expression },
"fixedParameterDefinition" : { ParameterDefinition },
"fixedRelatedArtifact" : { RelatedArtifact },
"fixedTriggerDefinition" : { TriggerDefinition },
"fixedUsageContext" : { UsageContext },
"fixedAvailability" : { Availability },
"fixedExtendedContactDetail" : { ExtendedContactDetail },
"fixedVirtualServiceDetail" : { VirtualServiceDetail },
"fixedDosage" : { Dosage },
"fixedMeta" : { Meta },
// pattern[x]: Value must have at least these property values. One of these 55:
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternBase64Binary>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternBase64Binary" : "<base64Binary>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternBoolean>,
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternBoolean" : <boolean>,
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCanonical>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCanonical" : "<canonical>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCode>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCode" : "<code>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDate>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDate" : "<date>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDateTime>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDateTime" : "<dateTime>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDecimal>,
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDecimal" : <decimal>,
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternId>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternId" : "<id>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInstant>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInstant" : "<instant>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInteger>,
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInteger" : <integer>,
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInteger64>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInteger64" : "<integer64>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMarkdown>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMarkdown" : "<markdown>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternOid>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternOid" : "<oid>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternPositiveInt>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternPositiveInt" : "<positiveInt>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternString>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternString" : "<string>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTime>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTime" : "<time>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUnsignedInt>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUnsignedInt" : "<unsignedInt>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUri>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUri" : "<uri>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUrl>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUrl" : "<url>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUuid>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUuid" : "<uuid>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAddress },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAddress" : { Address },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAge },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAge" : { Age },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAnnotation },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAnnotation" : { Annotation },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAttachment },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAttachment" : { Attachment },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCodeableConcept },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCodeableConcept" : { CodeableConcept },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCodeableReference },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCodeableReference" : { CodeableReference },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCoding },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCoding" : { Coding },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternContactPoint },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternContactPoint" : { ContactPoint },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCount },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCount" : { Count },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDistance },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDistance" : { Distance },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDuration },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDuration" : { Duration },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternHumanName },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternHumanName" : { HumanName },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternIdentifier },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternIdentifier" : { Identifier },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMoney },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMoney" : { Money },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternPeriod },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternPeriod" : { Period },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternQuantity },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternQuantity" : { Quantity },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRange },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRange" : { Range },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRatio },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRatio" : { Ratio },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRatioRange },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRatioRange" : { RatioRange },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternReference },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternReference" : { Reference },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternSampledData },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternSampledData" : { SampledData },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternSignature },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternSignature" : { Signature },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTiming },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTiming" : { Timing },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternContactDetail },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternContactDetail" : { ContactDetail },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDataRequirement },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDataRequirement" : { DataRequirement },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternExpression },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternExpression" : { Expression },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternParameterDefinition },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternParameterDefinition" : { ParameterDefinition },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRelatedArtifact },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRelatedArtifact" : { RelatedArtifact },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTriggerDefinition },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTriggerDefinition" : { TriggerDefinition },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUsageContext },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUsageContext" : { UsageContext },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAvailability },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAvailability" : { Availability },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternExtendedContactDetail },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternExtendedContactDetail" : { ExtendedContactDetail },
"patternVirtualServiceDetail" : { VirtualServiceDetail },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDosage },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDosage" : { Dosage },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMeta },
"
"
">"
">,
">",
">",
">",
">",
">,
">",
">",
">,
">",
">",
">",
">",
">",
">",
">",
">",
">",
">",
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
}],
">",
">",
">",
">",
">,
">,
">",
">",
">",
" },
">",
">",
">",
">",
">,
">,
">",
">",
">",
" },
"
"
"
"
"
"
"
"
"
"
}],
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
}]
},
"
"
"
"
"
}]
}
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMeta" : { Meta },
"example" : [{ // I Example value (as defined for type)
"label" : "<string>", // R! Describes the purpose of this example
// value[x]: Value of Example (one of allowed types). One of these 55:
"valueBase64Binary" : "<base64Binary>"
"valueBoolean" : <boolean>,
"valueCanonical" : "<canonical>",
"valueCode" : "<code>",
"valueDate" : "<date>",
"valueDateTime" : "<dateTime>",
"valueDecimal" : <decimal>,
"valueId" : "<id>",
"valueInstant" : "<instant>",
"valueInteger" : <integer>,
"valueInteger64" : "<integer64>",
"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 },
"valueCodeableReference" : { CodeableReference },
"valueCoding" : { Coding },
"valueContactPoint" : { ContactPoint },
"valueCount" : { Count },
"valueDistance" : { Distance },
"valueDuration" : { Duration },
"valueHumanName" : { HumanName },
"valueIdentifier" : { Identifier },
"valueMoney" : { Money },
"valuePeriod" : { Period },
"valueQuantity" : { Quantity },
"valueRange" : { Range },
"valueRatio" : { Ratio },
"valueRatioRange" : { RatioRange },
"valueReference" : { Reference },
"valueSampledData" : { SampledData },
"valueSignature" : { Signature },
"valueTiming" : { Timing },
"valueContactDetail" : { ContactDetail },
"valueDataRequirement" : { DataRequirement },
"valueExpression" : { Expression },
"valueParameterDefinition" : { ParameterDefinition },
"valueRelatedArtifact" : { RelatedArtifact },
"valueTriggerDefinition" : { TriggerDefinition },
"valueUsageContext" : { UsageContext },
"valueAvailability" : { Availability },
"valueExtendedContactDetail" : { ExtendedContactDetail },
"valueVirtualServiceDetail" : { VirtualServiceDetail },
"valueDosage" : { Dosage },
"valueMeta" : { Meta },
}],
// minValue[x]: Minimum Allowed Value (for some types). One of these 10:
"minValueDate" : "<date>",
"minValueDateTime" : "<dateTime>",
"minValueInstant" : "<instant>",
"minValueTime" : "<time>",
"minValueDecimal" : <decimal>,
"minValueInteger" : <integer>,
"minValueInteger64" : "<integer64>",
"minValuePositiveInt" : "<positiveInt>",
"minValueUnsignedInt" : "<unsignedInt>",
"minValueQuantity" : { Quantity },
// maxValue[x]: Maximum Allowed Value (for some types). One of these 10:
"maxValueDate" : "<date>",
"maxValueDateTime" : "<dateTime>",
"maxValueInstant" : "<instant>",
"maxValueTime" : "<time>",
"maxValueDecimal" : <decimal>,
"maxValueInteger" : <integer>,
"maxValueInteger64" : "<integer64>",
"maxValuePositiveInt" : "<positiveInt>",
"maxValueUnsignedInt" : "<unsignedInt>",
"maxValueQuantity" : { Quantity },
"maxLength" : <integer>, // I Max length for string type data
"condition" : ["<id>"], // Reference to invariant about presence
"constraint" : [{ // I Condition that must evaluate to true
"key" : "<id>", // I R! Target of 'condition' reference above
"requirements" : "<markdown>", // Why this constraint is necessary or appropriate
"severity" : "<code>", // I R! error | warning
"suppress" : <boolean>, // I Suppress warning or hint in profile
"human" : "<string>", // R! Human description of constraint
"expression" : "<string>", // I FHIRPath expression of constraint
"source" : "<canonical(StructureDefinition)>" // Reference to original source of constraint
}],
"mustHaveValue" : <boolean>, // I For primitives, that a value must be present - not replaced by an extension
"valueAlternatives" : ["<canonical(StructureDefinition)>"], // I Extensions that are allowed to replace a primitive value
"mustSupport" : <boolean>, // If the element must be supported (discouraged - see obligations)
"isModifier" : <boolean>, // I If this modifies the meaning of other elements
"isModifierReason" : "<string>", // I Reason that this element is marked as a modifier
"isSummary" : <boolean>, // Include when _summary = true?
"binding" : { // I ValueSet details if this is coded
"strength" : "<code>", // R! required | extensible | preferred | example | descriptive
"description" : "<markdown>", // I Guidance on the codes to be used
"valueSet" : "<canonical(ValueSet)>", // I Source of value set
"additional" : [{ // Additional Bindings - more rules about the binding
"key" : "<id>", // Unique identifier so additional bindings to be matched across profiles
"purpose" : "<code>", // R! maximum | minimum | required | extensible | candidate | current | current-extensible | best-practice | preferred | ui | starter | component
"valueSet" : "<canonical(ValueSet)>", // R! The value set for the additional binding
"documentation" : "<markdown>", // Documentation of the purpose of use of the binding
"shortDoco" : "<string>", // Concise documentation - for summary tables
"usage" : [{ UsageContext }], // Qualifies the usage - jurisdiction, gender, workflow status etc.
"any" : <boolean> // Whether binding can applies to all repeats, or just one
}]
},
"mapping" : [{ // I Map element to another set of definitions
"identity" : "<id>", // I R! Reference to mapping declaration
"language" : "<code>", // Computable language of mapping
"map" : "<string>", // R! Details of the mapping
"comment" : "<markdown>" // Comments about the mapping or its use
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: fhir:extension fhir:path [ string ] ; # 1..1 I Path of the element in the hierarchy of elements fhir:representation ( [ code ] ... ) ; # 0..* xmlAttr | xmlText | typeAttr | cdaText | xhtml fhir:sliceName [ string ] ; # 0..1 I Name for this particular element (in a set of slices) fhir:sliceIsConstraining [ boolean ] ; # 0..1 I If this slice definition constrains an inherited slice definition (or not) fhir:label [ string ] ; # 0..1 String to display with or prompt for element fhir:code ( [ Coding ] ... ) ; # 0..* Corresponding codes in terminologies fhir:slicing [ # 0..1 I This element is sliced - slices follow fhir:discriminator ( [ # 0..* Element values that are used to distinguish the slices fhir:type [ code ] ; # 1..1 value | exists | type | profile | position fhir:path [ string ] ; # 1..1 Path to element value ] ... ) ; fhir:description [ string ] ; # 0..1 Text description of how slicing works (or not) fhir:ordered [ boolean ] ; # 0..1 I If elements must be in same order as slices fhir:rules [ code ] ; # 1..1 I closed | open | openAtEnd ] ; fhir:short [ string ] ; # 0..1 Concise definition for space-constrained presentation fhir:definition [ markdown ] ; # 0..1 Full formal definition as narrative text fhir:comment [ markdown ] ; # 0..1 Comments about the use of this element fhir:requirements [ markdown ] ; # 0..1 Requirements satisfied by this element/structure and its constraints fhir:alias ( [ string ] ... ) ; # 0..* Other names fhir:min [ unsignedInt ] ; # 0..1 I Minimum Cardinality fhir:max [ string ] ; # 0..1 I Maximum Cardinality (a number or *) fhir:base [ # 0..1 Base definition information for tools fhir:path [ string ] ; # 1..1 Path that identifies the base element fhir:min [ unsignedInt ] ; # 1..1 Min cardinality of the base element fhir:max [ string ] ; # 1..1 Max cardinality of the base element ] ; fhir:contentReference [ uri ] ; # 0..1 I Reference to definition of content for the element fhir:type ( [ # 0..* I Data type and Profile for this element fhir:code [ uri ] ; # 1..1 I Data type or Resource (reference to definition) fhir:profile ( [ canonical(ImplementationGuide|StructureDefinition) ] ... ) ; # 0..* Profiles (StructureDefinition or IG) - one must apply fhir:targetProfile ( [ canonical(ImplementationGuide|StructureDefinition) ] ... ) ; # 0..* I Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply fhir:aggregation ( [ code ] ... ) ; # 0..* I contained | referenced | bundled - how aggregated fhir:versioning [ code ] ; # 0..1 either | independent | specific ] ... ) ; # defaultValue[x] : 0..1 I Specified value if missing from instance. One of these 55 fhir:defaultValue [ a fhir:Base64Binary ; base64Binary ] fhir:defaultValue [ a fhir:Boolean ; boolean ] fhir:defaultValue [ a fhir:Canonical ; canonical ] fhir:defaultValue [ a fhir:Code ; code ] fhir:defaultValue [ a fhir:Date ; date ] fhir:defaultValue [ a fhir:DateTime ; dateTime ] fhir:defaultValue [ a fhir:Decimal ; decimal ] fhir:defaultValue [ a fhir:Id ; id ] fhir:defaultValue [ a fhir:Instant ; instant ] fhir:defaultValue [ a fhir:Integer ; integer ] fhir:defaultValue [ a fhir:Integer64 ; integer64 ] fhir:defaultValue [ a fhir:Markdown ; markdown ] fhir:defaultValue [ a fhir:Oid ; oid ] fhir:defaultValue [ a fhir:PositiveInt ; positiveInt ] fhir:defaultValue [ a fhir:String ; string ] fhir:defaultValue [ a fhir:Time ; time ] fhir:defaultValue [ a fhir:UnsignedInt ; unsignedInt ] fhir:defaultValue [ a fhir:Uri ; uri ] fhir:defaultValue [ a fhir:Url ; url ] fhir:defaultValue [ a fhir:Uuid ; uuid ] fhir:defaultValue [ a fhir:Address ; Address ] fhir:defaultValue [ a fhir:Age ; Age ] fhir:defaultValue [ a fhir:Annotation ; Annotation ] fhir:defaultValue [ a fhir:Attachment ; Attachment ] fhir:defaultValue [ a fhir:CodeableConcept ; CodeableConcept ] fhir:defaultValue [ a fhir:CodeableReference ; CodeableReference ] fhir:defaultValue [ a fhir:Coding ; Coding ] fhir:defaultValue [ a fhir:ContactPoint ; ContactPoint ] fhir:defaultValue [ a fhir:Count ; Count ] fhir:defaultValue [ a fhir:Distance ; Distance ] fhir:defaultValue [ a fhir:Duration ; Duration ] fhir:defaultValue [ a fhir:HumanName ; HumanName ] fhir:defaultValue [ a fhir:Identifier ; Identifier ] fhir:defaultValue [ a fhir:Money ; Money ] fhir:defaultValue [ a fhir:Period ; Period ] fhir:defaultValue [ a fhir:Quantity ; Quantity ] fhir:defaultValue [ a fhir:Range ; Range ] fhir:defaultValue [ a fhir:Ratio ; Ratio ] fhir:defaultValue [ a fhir:RatioRange ; RatioRange ] fhir:defaultValue [ a fhir:Reference ; Reference ] fhir:defaultValue [ a fhir:SampledData ; SampledData ] fhir:defaultValue [ a fhir:Signature ; Signature ] fhir:defaultValue [ a fhir:Timing ; Timing ] fhir:defaultValue [ a fhir:ContactDetail ; ContactDetail ] fhir:defaultValue [ a fhir:DataRequirement ; DataRequirement ] fhir:defaultValue [ a fhir:Expression ; Expression ] fhir:defaultValue [ a fhir:ParameterDefinition ; ParameterDefinition ] fhir:defaultValue [ a fhir:RelatedArtifact ; RelatedArtifact ] fhir:defaultValue [ a fhir:TriggerDefinition ; TriggerDefinition ] fhir:defaultValue [ a fhir:UsageContext ; UsageContext ] fhir:defaultValue [ a fhir:Availability ; Availability ] fhir:defaultValue [ a fhir:ExtendedContactDetail ; ExtendedContactDetail ] fhir:defaultValue [ a fhir:VirtualServiceDetail ; VirtualServiceDetail ] fhir:defaultValue [ a fhir:Dosage ; Dosage ] fhir:defaultValue [ a fhir:Meta ; Meta ] fhir:meaningWhenMissing [ markdown ] ; # 0..1 I Implicit meaning when this element is missing fhir:orderMeaning [ string ] ; # 0..1 I What the order of the elements means # fixed[x] : 0..1 I Value must be exactly this. One of these 55 fhir:fixed [ a fhir:Base64Binary ; base64Binary ] fhir:fixed [ a fhir:Boolean ; boolean ] fhir:fixed [ a fhir:Canonical ; canonical ] fhir:fixed [ a fhir:Code ; code ] fhir:fixed [ a fhir:Date ; date ] fhir:fixed [ a fhir:DateTime ; dateTime ] fhir:fixed [ a fhir:Decimal ; decimal ] fhir:fixed [ a fhir:Id ; id ] fhir:fixed [ a fhir:Instant ; instant ] fhir:fixed [ a fhir:Integer ; integer ] fhir:fixed [ a fhir:Integer64 ; integer64 ] fhir:fixed [ a fhir:Markdown ; markdown ] fhir:fixed [ a fhir:Oid ; oid ] fhir:fixed [ a fhir:PositiveInt ; positiveInt ] fhir:fixed [ a fhir:String ; string ] fhir:fixed [ a fhir:Time ; time ] fhir:fixed [ a fhir:UnsignedInt ; unsignedInt ] fhir:fixed [ a fhir:Uri ; uri ] fhir:fixed [ a fhir:Url ; url ] fhir:fixed [ a fhir:Uuid ; uuid ] fhir:fixed [ a fhir:Address ; Address ] fhir:fixed [ a fhir:Age ; Age ] fhir:fixed [ a fhir:Annotation ; Annotation ] fhir:fixed [ a fhir:Attachment ; Attachment ] fhir:fixed [ a fhir:CodeableConcept ; CodeableConcept ] fhir:fixed [ a fhir:CodeableReference ; CodeableReference ] fhir:fixed [ a fhir:Coding ; Coding ] fhir:fixed [ a fhir:ContactPoint ; ContactPoint ] fhir:fixed [ a fhir:Count ; Count ] fhir:fixed [ a fhir:Distance ; Distance ] fhir:fixed [ a fhir:Duration ; Duration ] fhir:fixed [ a fhir:HumanName ; HumanName ] fhir:fixed [ a fhir:Identifier ; Identifier ] fhir:fixed [ a fhir:Money ; Money ] fhir:fixed [ a fhir:Period ; Period ] fhir:fixed [ a fhir:Quantity ; Quantity ] fhir:fixed [ a fhir:Range ; Range ] fhir:fixed [ a fhir:Ratio ; Ratio ] fhir:fixed [ a fhir:RatioRange ; RatioRange ] fhir:fixed [ a fhir:Reference ; Reference ] fhir:fixed [ a fhir:SampledData ; SampledData ] fhir:fixed [ a fhir:Signature ; Signature ] fhir:fixed [ a fhir:Timing ; Timing ] fhir:fixed [ a fhir:ContactDetail ; ContactDetail ] fhir:fixed [ a fhir:DataRequirement ; DataRequirement ] fhir:fixed [ a fhir:Expression ; Expression ] fhir:fixed [ a fhir:ParameterDefinition ; ParameterDefinition ] fhir:fixed [ a fhir:RelatedArtifact ; RelatedArtifact ] fhir:fixed [ a fhir:TriggerDefinition ; TriggerDefinition ] fhir:fixed [ a fhir:UsageContext ; UsageContext ] fhir:fixed [ a fhir:Availability ; Availability ] fhir:fixed [ a fhir:ExtendedContactDetail ; ExtendedContactDetail ] fhir:fixed [ a fhir:VirtualServiceDetail ; VirtualServiceDetail ] fhir:fixed [ a fhir:Dosage ; Dosage ] fhir:fixed [ a fhir:Meta ; Meta ] # If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern[x]. One of these 54 If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern[x] : 0..1 I Value must have at least these property values. One of these 55 fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Base64Binary ; base64Binary ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Boolean ; boolean ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Canonical ; canonical ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Code ; code ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Date ; date ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:DateTime ; dateTime ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Decimal ; decimal ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Id ; id ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Instant ; instant ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Integer ; integer ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Integer64 ; integer64 ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Markdown ; markdown ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Oid ; oid ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:PositiveInt ; positiveInt ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:String ; string ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Time ; time ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:UnsignedInt ; unsignedInt ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Uri ; uri ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Url ; url ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Uuid ; uuid ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Address ; Address ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Age ; Age ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Annotation ; Annotation ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Attachment ; Attachment ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:CodeableConcept ; CodeableConcept ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:CodeableReference ; CodeableReference ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Coding ; Coding ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:ContactPoint ; ContactPoint ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Count ; Count ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Distance ; Distance ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Duration ; Duration ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:HumanName ; HumanName ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Identifier ; Identifier ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Money ; Money ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Period ; Period ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Quantity ; Quantity ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Range ; Range ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Ratio ; Ratio ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:RatioRange ; RatioRange ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Reference ; Reference ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:SampledData ; SampledData ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Signature ; Signature ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Timing ; Timing ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:ContactDetail ; ContactDetail ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:DataRequirement ; DataRequirement ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Expression ; Expression ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:ParameterDefinition ; ParameterDefinition ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:RelatedArtifact ; RelatedArtifact ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:TriggerDefinition ; TriggerDefinition ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:UsageContext ; UsageContext ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Availability ; Availability ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:ExtendedContactDetail ; ExtendedContactDetail ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:VirtualServiceDetail ; VirtualServiceDetail ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] fhir: fhir: # . One of these 54 fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] ] ... ) ; # . One of these 10 fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] # . One of these 10 fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ] ... ) ; fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ] ... ) ; ] ; fhir: fhir: fhir: fhir: fhir: ] ... ) ; ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Dosage ; Dosage ] fhir:pattern [ a fhir:Meta ; Meta ] fhir:example ( [ # 0..* I Example value (as defined for type) fhir:label [ string ] ; # 1..1 Describes the purpose of this example # value[x] : 1..1 Value of Example (one of allowed types). One of these 55 fhir:value [ a fhir:Base64Binary ; base64Binary ] fhir:value [ a fhir:Boolean ; boolean ] fhir:value [ a fhir:Canonical ; canonical ] fhir:value [ a fhir:Code ; code ] fhir:value [ a fhir:Date ; date ] fhir:value [ a fhir:DateTime ; dateTime ] fhir:value [ a fhir:Decimal ; decimal ] fhir:value [ a fhir:Id ; id ] fhir:value [ a fhir:Instant ; instant ] fhir:value [ a fhir:Integer ; integer ] fhir:value [ a fhir:Integer64 ; integer64 ] fhir:value [ a fhir:Markdown ; markdown ] fhir:value [ a fhir:Oid ; oid ] fhir:value [ a fhir:PositiveInt ; positiveInt ] fhir:value [ a fhir:String ; string ] fhir:value [ a fhir:Time ; time ] fhir:value [ a fhir:UnsignedInt ; unsignedInt ] fhir:value [ a fhir:Uri ; uri ] fhir:value [ a fhir:Url ; url ] fhir:value [ a fhir:Uuid ; uuid ] fhir:value [ a fhir:Address ; Address ] fhir:value [ a fhir:Age ; Age ] fhir:value [ a fhir:Annotation ; Annotation ] fhir:value [ a fhir:Attachment ; Attachment ] fhir:value [ a fhir:CodeableConcept ; CodeableConcept ] fhir:value [ a fhir:CodeableReference ; CodeableReference ] fhir:value [ a fhir:Coding ; Coding ] fhir:value [ a fhir:ContactPoint ; ContactPoint ] fhir:value [ a fhir:Count ; Count ] fhir:value [ a fhir:Distance ; Distance ] fhir:value [ a fhir:Duration ; Duration ] fhir:value [ a fhir:HumanName ; HumanName ] fhir:value [ a fhir:Identifier ; Identifier ] fhir:value [ a fhir:Money ; Money ] fhir:value [ a fhir:Period ; Period ] fhir:value [ a fhir:Quantity ; Quantity ] fhir:value [ a fhir:Range ; Range ] fhir:value [ a fhir:Ratio ; Ratio ] fhir:value [ a fhir:RatioRange ; RatioRange ] fhir:value [ a fhir:Reference ; Reference ] fhir:value [ a fhir:SampledData ; SampledData ] fhir:value [ a fhir:Signature ; Signature ] fhir:value [ a fhir:Timing ; Timing ] fhir:value [ a fhir:ContactDetail ; ContactDetail ] fhir:value [ a fhir:DataRequirement ; DataRequirement ] fhir:value [ a fhir:Expression ; Expression ] fhir:value [ a fhir:ParameterDefinition ; ParameterDefinition ] fhir:value [ a fhir:RelatedArtifact ; RelatedArtifact ] fhir:value [ a fhir:TriggerDefinition ; TriggerDefinition ] fhir:value [ a fhir:UsageContext ; UsageContext ] fhir:value [ a fhir:Availability ; Availability ] fhir:value [ a fhir:ExtendedContactDetail ; ExtendedContactDetail ] fhir:value [ a fhir:VirtualServiceDetail ; VirtualServiceDetail ] fhir:value [ a fhir:Dosage ; Dosage ] fhir:value [ a fhir:Meta ; Meta ] ] ... ) ; # minValue[x] : 0..1 I Minimum Allowed Value (for some types). One of these 10 fhir:minValue [ a fhir:Date ; date ] fhir:minValue [ a fhir:DateTime ; dateTime ] fhir:minValue [ a fhir:Instant ; instant ] fhir:minValue [ a fhir:Time ; time ] fhir:minValue [ a fhir:Decimal ; decimal ] fhir:minValue [ a fhir:Integer ; integer ] fhir:minValue [ a fhir:Integer64 ; integer64 ] fhir:minValue [ a fhir:PositiveInt ; positiveInt ] fhir:minValue [ a fhir:UnsignedInt ; unsignedInt ] fhir:minValue [ a fhir:Quantity ; Quantity ] # maxValue[x] : 0..1 I Maximum Allowed Value (for some types). One of these 10 fhir:maxValue [ a fhir:Date ; date ] fhir:maxValue [ a fhir:DateTime ; dateTime ] fhir:maxValue [ a fhir:Instant ; instant ] fhir:maxValue [ a fhir:Time ; time ] fhir:maxValue [ a fhir:Decimal ; decimal ] fhir:maxValue [ a fhir:Integer ; integer ] fhir:maxValue [ a fhir:Integer64 ; integer64 ] fhir:maxValue [ a fhir:PositiveInt ; positiveInt ] fhir:maxValue [ a fhir:UnsignedInt ; unsignedInt ] fhir:maxValue [ a fhir:Quantity ; Quantity ] fhir:maxLength [ integer ] ; # 0..1 I Max length for string type data fhir:condition ( [ id ] ... ) ; # 0..* Reference to invariant about presence fhir:constraint ( [ # 0..* I Condition that must evaluate to true fhir:key [ id ] ; # 1..1 I Target of 'condition' reference above fhir:requirements [ markdown ] ; # 0..1 Why this constraint is necessary or appropriate fhir:severity [ code ] ; # 1..1 I error | warning fhir:suppress [ boolean ] ; # 0..1 I Suppress warning or hint in profile fhir:human [ string ] ; # 1..1 Human description of constraint fhir:expression [ string ] ; # 0..1 I FHIRPath expression of constraint fhir:source [ canonical(StructureDefinition) ] ; # 0..1 Reference to original source of constraint ] ... ) ; fhir:mustHaveValue [ boolean ] ; # 0..1 I For primitives, that a value must be present - not replaced by an extension fhir:valueAlternatives ( [ canonical(StructureDefinition) ] ... ) ; # 0..* I Extensions that are allowed to replace a primitive value fhir:mustSupport [ boolean ] ; # 0..1 If the element must be supported (discouraged - see obligations) fhir:isModifier [ boolean ] ; # 0..1 I If this modifies the meaning of other elements fhir:isModifierReason [ string ] ; # 0..1 I Reason that this element is marked as a modifier fhir:isSummary [ boolean ] ; # 0..1 Include when _summary = true? fhir:binding [ # 0..1 I ValueSet details if this is coded fhir:strength [ code ] ; # 1..1 required | extensible | preferred | example | descriptive fhir:description [ markdown ] ; # 0..1 I Guidance on the codes to be used fhir:valueSet [ canonical(ValueSet) ] ; # 0..1 I Source of value set fhir:additional ( [ # 0..* Additional Bindings - more rules about the binding fhir:key [ id ] ; # 0..1 Unique identifier so additional bindings to be matched across profiles fhir:purpose [ code ] ; # 1..1 maximum | minimum | required | extensible | candidate | current | current-extensible | best-practice | preferred | ui | starter | component fhir:valueSet [ canonical(ValueSet) ] ; # 1..1 The value set for the additional binding fhir:documentation [ markdown ] ; # 0..1 Documentation of the purpose of use of the binding fhir:shortDoco [ string ] ; # 0..1 Concise documentation - for summary tables fhir:usage ( [ UsageContext ] ... ) ; # 0..* Qualifies the usage - jurisdiction, gender, workflow status etc. fhir:any [ boolean ] ; # 0..1 Whether binding can applies to all repeats, or just one ] ... ) ; ] ; fhir:mapping ( [ # 0..* I Map element to another set of definitions fhir:identity [ id ] ; # 1..1 I Reference to mapping declaration fhir:language [ code ] ; # 0..1 Computable language of mapping fhir:map [ string ] ; # 1..1 Details of the mapping fhir:comment [ markdown ] ; # 0..1 Comments about the mapping or its use ] ... ) ; ]
Changes since Release 3
Changes from both R4 and R4B
| ElementDefinition | |
| ElementDefinition.slicing.discriminator.type |
|
| ElementDefinition.type.code |
|
| ElementDefinition.type.aggregation |
|
| ElementDefinition.defaultValue[x] |
|
| ElementDefinition.fixed[x] |
|
| ElementDefinition.pattern[x] |
|
| ElementDefinition.example.value[x] |
|
| ElementDefinition.minValue[x] |
|
| ElementDefinition.maxValue[x] |
|
| ElementDefinition.constraint.requirements |
|
| ElementDefinition.constraint.suppress |
|
| ElementDefinition.mustHaveValue |
|
| ElementDefinition.valueAlternatives |
|
| ElementDefinition.binding.strength |
|
| ElementDefinition.binding.description |
|
| ElementDefinition.binding.additional |
|
| ElementDefinition.binding.additional.key |
|
| ElementDefinition.binding.additional.purpose |
|
| ElementDefinition.binding.additional.valueSet |
|
| ElementDefinition.binding.additional.documentation |
|
| ElementDefinition.binding.additional.shortDoco |
|
| ElementDefinition.binding.additional.usage |
|
| ElementDefinition.binding.additional.any |
|
| ElementDefinition.mapping.comment |
|
| ElementDefinition.constraint.xpath |
|
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
Filter:
|
|---|---|---|---|---|
|
Σ N | Element |
Definition
of
an
element
in
a
resource
or
extension
+ Rule: Min <= Max + Rule: if the element definition has a contentReference, it cannot have type, defaultValue, fixed, pattern, example, minValue, maxValue, maxLength, or binding + Rule: Fixed value may only be specified if there is one type + Rule: Pattern may only be specified if there is one type + Rule: Pattern and fixed are mutually exclusive + Rule: Binding can only be present for coded elements, string, and uri if using FHIR-defined types + Rule: Types must be unique by code + Rule: Constraints must be unique by key + Rule: default value and meaningWhenMissing are mutually exclusive + Rule: sliceName must be composed of proper tokens separated by "/" + Rule: Must have a modifier reason if isModifier = true + Rule: Element path SHALL be expressed as a set of '.'-separated components with each component restricted to a maximum of 64 characters and with some limits on the allowed choice of characters + Warning: The first component of the path should be UpperCamelCase. Additional components (following a '.') should be lowerCamelCase. If this syntax is not adhered to, code generation tools may be broken. Logical models may be less concerned about this implication. + Rule: sliceIsConstraining can only appear if slicename is present + Guideline: pattern[x] should be used rather than fixed[x] + Warning: Order has no meaning (and cannot be asserted to have meaning), so enforcing rules on order is improper + Warning: Mappings SHOULD be unique by key + Rule: Can't have valueAlternatives if mustHaveValue is true + Warning: If there's more than one bindable type, it's usually an error for there to be a binding Elements defined in Ancestors: id , extension , modifierExtension |
|
|
Σ C | 1..1 | string |
Path
of
the
element
in
the
hierarchy
of
elements
|
|
Σ | 0..* | code |
xmlAttr
|
xmlText
|
typeAttr
|
cdaText
|
xhtml
Binding: PropertyRepresentation ( Required ) |
|
Σ C | 0..1 | string |
Name
for
this
particular
element
(in
a
set
of
slices)
|
|
Σ
C
|
0..1 | boolean |
If
this
slice
definition
constrains
an
inherited
slice
definition
(or
not)
|
|
Σ T | 0..1 | string |
String
to
display
with
or
prompt
for
element
|
|
Σ | 0..* | Coding |
Corresponding
codes
in
terminologies
Binding: ElementDefinitionCode
(
Example
)
|
|
Σ C | 0..1 | Element |
This
element
is
sliced
-
slices
follow
|
|
Σ | 0..* | Element |
Element
values
that
are
used
to
distinguish
the
slices
|
|
Σ | 1..1 | code |
value
|
exists
|
type
|
profile
|
position
Binding: DiscriminatorType ( Required ) |
|
Σ | 1..1 | string |
Path
to
element
value
|
|
Σ T | 0..1 | string |
Text
description
of
how
slicing
works
(or
not)
|
|
Σ C | 0..1 | boolean |
If
elements
must
be
in
same
order
as
slices
|
|
Σ C | 1..1 | code |
closed
|
open
|
openAtEnd
Binding: SlicingRules ( Required ) |
|
Σ T | 0..1 | string |
Concise
definition
for
space-constrained
presentation
|
|
Σ T | 0..1 | markdown |
Full
formal
definition
as
narrative
text
|
|
Σ T | 0..1 | markdown |
Comments
about
the
use
of
this
element
|
|
Σ T | 0..1 | markdown |
Requirements
satisfied
by
this
|
|
Σ T | 0..* | string |
Other
names
|
|
Σ C | 0..1 | unsignedInt |
Minimum
Cardinality
|
|
Σ C | 0..1 | string |
Maximum
Cardinality
(a
number
or
*)
+ Rule: Max SHALL be a number or "*" |
|
Σ | 0..1 | Element |
Base
definition
information
for
tools
|
|
Σ | 1..1 | string |
Path
that
identifies
the
base
element
|
|
Σ | 1..1 | unsignedInt |
Min
cardinality
of
the
base
element
|
|
Σ | 1..1 | string |
Max
cardinality
of
the
base
element
|
|
Σ C | 0..1 | uri |
Reference
to
definition
of
content
for
the
element
|
|
Σ C | 0..* | Element |
Data
type
and
Profile
for
this
element
+ Rule: Aggregation may only be specified if one of the allowed types for the element is a reference + Rule: targetProfile is only allowed if the type is Reference or canonical + Warning: profiles SHOULD be unique + Warning: targetProfiles SHOULD be unique |
|
Σ C | 1..1 | uri |
Data
type
or
Resource
(reference
to
definition)
Binding: Element Definition Types ( Extensible ) |
|
Σ | 0..* | canonical ( StructureDefinition | ImplementationGuide ) |
Profiles
(StructureDefinition
or
IG)
-
one
must
apply
|
|
Σ C | 0..* | canonical ( StructureDefinition | ImplementationGuide ) |
Profile
(StructureDefinition
or
IG)
on
the
Reference/canonical
target
-
one
must
apply
|
|
Σ C | 0..* | code |
contained
|
referenced
|
bundled
-
how
aggregated
Binding: AggregationMode ( Required ) |
|
Σ | 0..1 | code |
either
|
independent
|
specific
Binding: ReferenceVersionRules ( Required ) |
|
Σ C | 0..1 | * |
Specified
value
if
missing
from
instance
|
|
Σ T C | 0..1 | markdown |
Implicit
meaning
when
this
element
is
missing
|
|
Σ C | 0..1 | string |
What
the
order
of
the
elements
means
|
|
Σ C | 0..1 | * |
Value
must
be
exactly
this
|
|
Σ C | 0..1 | * |
Value
must
have
at
least
these
property
values
|
|
Σ C | 0..* | Element |
Example
value
(as
defined
for
type)
|
|
Σ T | 1..1 | string |
Describes
the
purpose
of
this
example
|
|
Σ | 1..1 | * |
Value
of
Example
(one
of
allowed
types)
|
|
Σ C | 0..1 |
Minimum
Allowed
Value
(for
some
types)
|
|
|
date | |||
|
dateTime | |||
|
instant | |||
|
time | |||
|
decimal | |||
|
integer | |||
|
integer64 | |||
|
positiveInt | |||
|
unsignedInt | |||
|
Quantity | |||
|
Σ C | 0..1 |
Maximum
Allowed
Value
(for
some
types)
|
|
|
date | |||
|
dateTime | |||
|
instant | |||
|
time | |||
|
decimal | |||
|
integer | |||
|
integer64 | |||
|
positiveInt | |||
|
unsignedInt | |||
|
Quantity | |||
|
Σ C | 0..1 | integer |
Max
length
for
string
type
data
|
|
Σ | 0..* | id |
Reference
to
invariant
about
presence
|
|
Σ C | 0..* | Element |
Condition
that
must
evaluate
to
true
+ Warning: Constraints should have an expression or else validators will not be able to enforce them + Rule: Errors cannot be suppressed |
|
Σ C | 1..1 | id |
Target
of
'condition'
reference
above
|
|
Σ | 0..1 | markdown |
Why
this
constraint
is
necessary
or
appropriate
|
|
Σ C | 1..1 | code |
error
|
warning
Binding: ConstraintSeverity ( Required ) |
|
Σ
C
|
0..1 | boolean |
Suppress
warning
or
hint
in
profile
|
|
Σ T | 1..1 | string |
Human
description
of
constraint
|
|
Σ C | 0..1 | string |
FHIRPath
expression
of
constraint
|
|
Σ | 0..1 | canonical ( StructureDefinition ) |
Reference
to
original
source
of
constraint
|
|
Σ
C
|
0..1 | boolean |
For
primitives,
that
a
value
must
be
present
-
not
replaced
by
an
extension
|
|
Σ
C
|
0..* | canonical ( StructureDefinition ) |
Extensions
that
are
allowed
to
replace
a
primitive
value
|
|
Σ | 0..1 | boolean |
If
the
element
must
be
supported
(discouraged
-
see
obligations)
|
|
Σ C | 0..1 | boolean |
If
this
modifies
the
meaning
of
other
elements
|
|
Σ C | 0..1 | string |
Reason
that
this
element
is
marked
as
a
modifier
|
|
Σ | 0..1 | boolean |
Include
when
_summary
=
true?
|
|
Σ C | 0..1 | Element |
ValueSet
details
if
this
is
coded
+ Rule: ValueSet SHALL start with http:// or https:// or urn: or # + Rule: binding SHALL have either description or valueSet + Rule: If the strength is 'descriptive' no value set can ve provided + Guideline: if there's a required binding with no usage, it should be the base binding |
|
Σ | 1..1 | code |
required
|
extensible
|
preferred
|
example
|
descriptive
Binding: BindingStrength ( Required ) |
|
Σ T C | 0..1 | markdown |
Guidance
on
the
|
|
Σ C | 0..1 | canonical ( ValueSet ) |
Source
of
value
set
|
|
Σ
|
0..* | Element |
Additional
Bindings
-
more
rules
about
the
binding
+ Guideline: additionalBindings should have a key |
|
Σ | 0..1 | id |
Unique
identifier
so
additional
bindings
to
be
matched
across
profiles
|
| Σ | 1..1 | code |
maximum
|
minimum
|
required
|
extensible
|
candidate
|
current
|
current-extensible
|
best-practice
|
preferred
|
ui
|
starter
|
component
Binding: Additional Binding Purpose ValueSet ( Required ) |
|
Σ | 1..1 | canonical ( ValueSet ) |
The
value
set
for
the
additional
binding
|
|
Σ | 0..1 | markdown |
Documentation
of
the
purpose
of
use
of
the
binding
|
|
Σ | 0..1 | string |
Concise
documentation
-
for
summary
tables
|
|
Σ | 0..* | UsageContext |
Qualifies
the
usage
-
jurisdiction,
gender,
workflow
status
etc.
|
|
Σ | 0..1 | boolean |
Whether
binding
can
applies
to
all
repeats,
or
just
one
|
|
Σ C | 0..* | Element |
Map
element
to
another
set
of
definitions
|
|
Σ C | 1..1 | id |
Reference
to
mapping
declaration
|
|
Σ | 0..1 | code |
Computable
language
of
mapping
Binding: Mime Types ( Required ) |
|
Σ | 1..1 | string |
Details
of
the
mapping
|
|
Σ | 0..1 | markdown |
Comments
about
the
mapping
or
its
use
|
Documentation
for
this
format
|
||||
XML Template
<ElementDefinition xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <path value="[string]"/><!-- I 1..1 Path of the element in the hierarchy of elements --> <representation value="[code]"/><!-- 0..* xmlAttr | xmlText | typeAttr | cdaText | xhtml --> <sliceName value="[string]"/><!-- I 0..1 Name for this particular element (in a set of slices) --> <sliceIsConstraining value="[boolean]"/><!-- I 0..1 If this slice definition constrains an inherited slice definition (or not) --> <label value="[string]"/><!-- 0..1 String to display with or prompt for element --> <code><!-- 0..* Coding Corresponding codes in terminologies--></code> <slicing> <!-- I 0..1 This element is sliced - slices follow --> <discriminator> <!-- 0..* Element values that are used to distinguish the slices --> <type value="[code]"/><!-- 1..1 value | exists | type | profile | position --> <path value="[string]"/><!-- 1..1 Path to element value --> </discriminator> <description value="[string]"/><!-- 0..1 Text description of how slicing works (or not) --> <ordered value="[boolean]"/><!-- I 0..1 If elements must be in same order as slices --> <rules value="[code]"/><!-- I 1..1 closed | open | openAtEnd --> </slicing> <short value="[string]"/><!-- 0..1 Concise definition for space-constrained presentation --> <definition value="[markdown]"/><!-- 0..1 Full formal definition as narrative text --> <comment value="[markdown]"/><!-- 0..1 Comments about the use of this element --> <requirements value="[markdown]"/><!-- 0..1 Requirements satisfied by this element/structure and its constraints --> <alias value="[string]"/><!-- 0..* Other names --> <min value="[unsignedInt]"/><!-- I 0..1 Minimum Cardinality --> <max value="[string]"/><!-- I 0..1 Maximum Cardinality (a number or *) --> <base> <!-- 0..1 Base definition information for tools --> <path value="[string]"/><!-- 1..1 Path that identifies the base element --> <min value="[unsignedInt]"/><!-- 1..1 Min cardinality of the base element --> <max value="[string]"/><!-- 1..1 Max cardinality of the base element --> </base> <contentReference value="[uri]"/><!-- I 0..1 Reference to definition of content for the element --> <type> <!-- I 0..* Data type and Profile for this element --> <code value="[uri]"/><!-- I 1..1 Data type or Resource (reference to definition) --> <profile><!-- 0..* canonical(ImplementationGuide|StructureDefinition) Profiles (StructureDefinition or IG) - one must apply --></profile> <targetProfile><!-- I 0..* canonical(ImplementationGuide|StructureDefinition) Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply --></targetProfile> <aggregation value="[code]"/><!-- I 0..* contained | referenced | bundled - how aggregated --> <versioning value="[code]"/><!-- 0..1 either | independent | specific --> </type> <defaultValue[x]><!-- I 0..1 * Specified value if missing from instance --></defaultValue[x]> <meaningWhenMissing value="[markdown]"/><!-- I 0..1 Implicit meaning when this element is missing --> <orderMeaning value="[string]"/><!-- I 0..1 What the order of the elements means --> <fixed[x]><!-- I 0..1 * Value must be exactly this --></fixed[x]> <If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict"></pattern[x]> < < <</value[x]> </example> <| </minValue[x]> <| </maxValue[x]> < < < < < < < < < <</source> </constraint> < <</valueAlternatives> < < < < < < < <</valueSet> < < <</valueSet> < < <</usage> < </additional> </binding> < < < < < </mapping> </ElementDefinition> If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern[x]><!-- I 0..1 * Value must have at least these property values --></pattern[x]> <example> <!-- I 0..* Example value (as defined for type) --> <label value="[string]"/><!-- 1..1 Describes the purpose of this example --> <value[x]><!-- 1..1 * Value of Example (one of allowed types) --></value[x]> </example> <minValue[x]><!-- I 0..1 date|dateTime|instant|time|decimal|integer|integer64| positiveInt|unsignedInt|Quantity Minimum Allowed Value (for some types) --></minValue[x]> <maxValue[x]><!-- I 0..1 date|dateTime|instant|time|decimal|integer|integer64| positiveInt|unsignedInt|Quantity Maximum Allowed Value (for some types) --></maxValue[x]> <maxLength value="[integer]"/><!-- I 0..1 Max length for string type data --> <condition value="[id]"/><!-- 0..* Reference to invariant about presence --> <constraint> <!-- I 0..* Condition that must evaluate to true --> <key value="[id]"/><!-- I 1..1 Target of 'condition' reference above --> <requirements value="[markdown]"/><!-- 0..1 Why this constraint is necessary or appropriate --> <severity value="[code]"/><!-- I 1..1 error | warning --> <suppress value="[boolean]"/><!-- I 0..1 Suppress warning or hint in profile --> <human value="[string]"/><!-- 1..1 Human description of constraint --> <expression value="[string]"/><!-- I 0..1 FHIRPath expression of constraint --> <source><!-- 0..1 canonical(StructureDefinition) Reference to original source of constraint --></source> </constraint> <mustHaveValue value="[boolean]"/><!-- I 0..1 For primitives, that a value must be present - not replaced by an extension --> <valueAlternatives><!-- I 0..* canonical(StructureDefinition) Extensions that are allowed to replace a primitive value --></valueAlternatives> <mustSupport value="[boolean]"/><!-- 0..1 If the element must be supported (discouraged - see obligations) --> <isModifier value="[boolean]"/><!-- I 0..1 If this modifies the meaning of other elements --> <isModifierReason value="[string]"/><!-- I 0..1 Reason that this element is marked as a modifier --> <isSummary value="[boolean]"/><!-- 0..1 Include when _summary = true? --> <binding> <!-- I 0..1 ValueSet details if this is coded --> <strength value="[code]"/><!-- 1..1 required | extensible | preferred | example | descriptive --> <description value="[markdown]"/><!-- I 0..1 Guidance on the codes to be used --> <valueSet><!-- I 0..1 canonical(ValueSet) Source of value set --></valueSet> <additional> <!-- 0..* Additional Bindings - more rules about the binding --> <key value="[id]"/><!-- 0..1 Unique identifier so additional bindings to be matched across profiles --> <purpose value="[code]"/><!-- 1..1 maximum | minimum | required | extensible | candidate | current | current-extensible | best-practice | preferred | ui | starter | component --> <valueSet><!-- 1..1 canonical(ValueSet) The value set for the additional binding --></valueSet> <documentation value="[markdown]"/><!-- 0..1 Documentation of the purpose of use of the binding --> <shortDoco value="[string]"/><!-- 0..1 Concise documentation - for summary tables --> <usage><!-- 0..* UsageContext Qualifies the usage - jurisdiction, gender, workflow status etc. --></usage> <any value="[boolean]"/><!-- 0..1 Whether binding can applies to all repeats, or just one --> </additional> </binding> <mapping> <!-- I 0..* Map element to another set of definitions --> <identity value="[id]"/><!-- I 1..1 Reference to mapping declaration --> <language value="[code]"/><!-- 0..1 Computable language of mapping --> <map value="[string]"/><!-- 1..1 Details of the mapping --> <comment value="[markdown]"/><!-- 0..1 Comments about the mapping or its use --> </mapping> </ElementDefinition>
JSON Template
{
// from Element: extension
"path" : "<string>", // I R! Path of the element in the hierarchy of elements
"representation" : ["<code>"], // xmlAttr | xmlText | typeAttr | cdaText | xhtml
"sliceName" : "<string>", // I Name for this particular element (in a set of slices)
"sliceIsConstraining" : <boolean>, // I If this slice definition constrains an inherited slice definition (or not)
"label" : "<string>", // String to display with or prompt for element
"code" : [{ Coding }], // Corresponding codes in terminologies
"slicing" : { // I This element is sliced - slices follow
"discriminator" : [{ // Element values that are used to distinguish the slices
"type" : "<code>", // R! value | exists | type | profile | position
"path" : "<string>" // R! Path to element value
}],
"description" : "<string>", // Text description of how slicing works (or not)
"ordered" : <boolean>, // I If elements must be in same order as slices
"rules" : "<code>" // I R! closed | open | openAtEnd
},
"short" : "<string>", // Concise definition for space-constrained presentation
"definition" : "<markdown>", // Full formal definition as narrative text
"comment" : "<markdown>", // Comments about the use of this element
"requirements" : "<markdown>", // Requirements satisfied by this element/structure and its constraints
"alias" : ["<string>"], // Other names
"min" : "<unsignedInt>", // I Minimum Cardinality
"max" : "<string>", // I Maximum Cardinality (a number or *)
"base" : { // Base definition information for tools
"path" : "<string>", // R! Path that identifies the base element
"min" : "<unsignedInt>", // R! Min cardinality of the base element
"max" : "<string>" // R! Max cardinality of the base element
},
"contentReference" : "<uri>", // I Reference to definition of content for the element
"type" : [{ // I Data type and Profile for this element
"code" : "<uri>", // I R! Data type or Resource (reference to definition)
"profile" : ["<canonical(StructureDefinition|ImplementationGuide)>"], // Profiles (StructureDefinition or IG) - one must apply
"targetProfile" : ["<canonical(StructureDefinition|ImplementationGuide)>"], // I Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply
"aggregation" : ["<code>"], // I contained | referenced | bundled - how aggregated
"versioning" : "<code>" // either | independent | specific
}],
// defaultValue[x]: Specified value if missing from instance. One of these 55:
"defaultValueBase64Binary" : "<base64Binary>",
"defaultValueBoolean" : <boolean>,
"defaultValueCanonical" : "<canonical>",
"defaultValueCode" : "<code>",
"defaultValueDate" : "<date>",
"defaultValueDateTime" : "<dateTime>",
"defaultValueDecimal" : <decimal>,
"defaultValueId" : "<id>",
"defaultValueInstant" : "<instant>",
"defaultValueInteger" : <integer>,
"defaultValueInteger64" : "<integer64>",
"defaultValueMarkdown" : "<markdown>",
"defaultValueOid" : "<oid>",
"defaultValuePositiveInt" : "<positiveInt>",
"defaultValueString" : "<string>",
"defaultValueTime" : "<time>",
"defaultValueUnsignedInt" : "<unsignedInt>",
"defaultValueUri" : "<uri>",
"defaultValueUrl" : "<url>",
"defaultValueUuid" : "<uuid>",
"defaultValueAddress" : { Address },
"defaultValueAge" : { Age },
"defaultValueAnnotation" : { Annotation },
"defaultValueAttachment" : { Attachment },
"defaultValueCodeableConcept" : { CodeableConcept },
"defaultValueCodeableReference" : { CodeableReference },
"defaultValueCoding" : { Coding },
"defaultValueContactPoint" : { ContactPoint },
"defaultValueCount" : { Count },
"defaultValueDistance" : { Distance },
"defaultValueDuration" : { Duration },
"defaultValueHumanName" : { HumanName },
"defaultValueIdentifier" : { Identifier },
"defaultValueMoney" : { Money },
"defaultValuePeriod" : { Period },
"defaultValueQuantity" : { Quantity },
"defaultValueRange" : { Range },
"defaultValueRatio" : { Ratio },
"defaultValueRatioRange" : { RatioRange },
"defaultValueReference" : { Reference },
"defaultValueSampledData" : { SampledData },
"defaultValueSignature" : { Signature },
"defaultValueTiming" : { Timing },
"defaultValueContactDetail" : { ContactDetail },
"defaultValueDataRequirement" : { DataRequirement },
"defaultValueExpression" : { Expression },
"defaultValueParameterDefinition" : { ParameterDefinition },
"defaultValueRelatedArtifact" : { RelatedArtifact },
"defaultValueTriggerDefinition" : { TriggerDefinition },
"defaultValueUsageContext" : { UsageContext },
"defaultValueAvailability" : { Availability },
"defaultValueExtendedContactDetail" : { ExtendedContactDetail },
"defaultValueVirtualServiceDetail" : { VirtualServiceDetail },
"defaultValueDosage" : { Dosage },
"defaultValueMeta" : { Meta },
"meaningWhenMissing" : "<markdown>", // I Implicit meaning when this element is missing
"orderMeaning" : "<string>", // I What the order of the elements means
// fixed[x]: Value must be exactly this. One of these 55:
"fixedBase64Binary" : "<base64Binary>",
"fixedBoolean" : <boolean>,
"fixedCanonical" : "<canonical>",
"fixedCode" : "<code>",
"fixedDate" : "<date>",
"fixedDateTime" : "<dateTime>",
"fixedDecimal" : <decimal>,
"fixedId" : "<id>",
"fixedInstant" : "<instant>",
"fixedInteger" : <integer>,
"fixedInteger64" : "<integer64>",
"fixedMarkdown" : "<markdown>",
"fixedOid" : "<oid>",
"fixedPositiveInt" : "<positiveInt>",
"fixedString" : "<string>",
"fixedTime" : "<time>",
"fixedUnsignedInt" : "<unsignedInt>",
"fixedUri" : "<uri>",
"fixedUrl" : "<url>",
"fixedUuid" : "<uuid>",
"fixedAddress" : { Address },
"fixedAge" : { Age },
"fixedAnnotation" : { Annotation },
"fixedAttachment" : { Attachment },
"fixedCodeableConcept" : { CodeableConcept },
"fixedCodeableReference" : { CodeableReference },
"fixedCoding" : { Coding },
"fixedContactPoint" : { ContactPoint },
"fixedCount" : { Count },
"fixedDistance" : { Distance },
"fixedDuration" : { Duration },
"fixedHumanName" : { HumanName },
"fixedIdentifier" : { Identifier },
"fixedMoney" : { Money },
"fixedPeriod" : { Period },
"fixedQuantity" : { Quantity },
"fixedRange" : { Range },
"fixedRatio" : { Ratio },
"fixedRatioRange" : { RatioRange },
"fixedReference" : { Reference },
"fixedSampledData" : { SampledData },
"fixedSignature" : { Signature },
"fixedTiming" : { Timing },
"fixedContactDetail" : { ContactDetail },
"fixedDataRequirement" : { DataRequirement },
"fixedExpression" : { Expression },
"fixedParameterDefinition" : { ParameterDefinition },
"fixedRelatedArtifact" : { RelatedArtifact },
"fixedTriggerDefinition" : { TriggerDefinition },
"fixedUsageContext" : { UsageContext },
"fixedAvailability" : { Availability },
"fixedExtendedContactDetail" : { ExtendedContactDetail },
"fixedVirtualServiceDetail" : { VirtualServiceDetail },
"fixedDosage" : { Dosage },
"fixedMeta" : { Meta },
// pattern[x]: Value must have at least these property values. One of these 55:
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternBase64Binary>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternBase64Binary" : "<base64Binary>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternBoolean>,
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternBoolean" : <boolean>,
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCanonical>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCanonical" : "<canonical>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCode>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCode" : "<code>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDate>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDate" : "<date>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDateTime>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDateTime" : "<dateTime>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDecimal>,
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDecimal" : <decimal>,
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternId>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternId" : "<id>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInstant>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInstant" : "<instant>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInteger>,
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInteger" : <integer>,
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInteger64>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternInteger64" : "<integer64>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMarkdown>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMarkdown" : "<markdown>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternOid>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternOid" : "<oid>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternPositiveInt>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternPositiveInt" : "<positiveInt>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternString>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternString" : "<string>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTime>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTime" : "<time>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUnsignedInt>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUnsignedInt" : "<unsignedInt>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUri>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUri" : "<uri>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUrl>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUrl" : "<url>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUuid>",
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUuid" : "<uuid>",
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAddress },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAddress" : { Address },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAge },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAge" : { Age },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAnnotation },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAnnotation" : { Annotation },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAttachment },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAttachment" : { Attachment },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCodeableConcept },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCodeableConcept" : { CodeableConcept },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCodeableReference },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCodeableReference" : { CodeableReference },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCoding },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCoding" : { Coding },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternContactPoint },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternContactPoint" : { ContactPoint },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCount },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternCount" : { Count },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDistance },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDistance" : { Distance },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDuration },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDuration" : { Duration },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternHumanName },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternHumanName" : { HumanName },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternIdentifier },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternIdentifier" : { Identifier },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMoney },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMoney" : { Money },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternPeriod },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternPeriod" : { Period },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternQuantity },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternQuantity" : { Quantity },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRange },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRange" : { Range },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRatio },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRatio" : { Ratio },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRatioRange },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRatioRange" : { RatioRange },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternReference },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternReference" : { Reference },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternSampledData },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternSampledData" : { SampledData },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternSignature },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternSignature" : { Signature },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTiming },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTiming" : { Timing },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternContactDetail },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternContactDetail" : { ContactDetail },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDataRequirement },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDataRequirement" : { DataRequirement },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternExpression },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternExpression" : { Expression },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternParameterDefinition },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternParameterDefinition" : { ParameterDefinition },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRelatedArtifact },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternRelatedArtifact" : { RelatedArtifact },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTriggerDefinition },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternTriggerDefinition" : { TriggerDefinition },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUsageContext },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternUsageContext" : { UsageContext },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAvailability },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternAvailability" : { Availability },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternExtendedContactDetail },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternExtendedContactDetail" : { ExtendedContactDetail },
"patternVirtualServiceDetail" : { VirtualServiceDetail },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDosage },
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternDosage" : { Dosage },
"If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMeta },
"
"
">"
">,
">",
">",
">",
">",
">,
">",
">",
">,
">",
">",
">",
">",
">",
">",
">",
">",
">",
">",
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
" },
}],
">",
">",
">",
">",
">,
">,
">",
">",
">",
" },
">",
">",
">",
">",
">,
">,
">",
">",
">",
" },
"
"
"
"
"
"
"
"
"
"
}],
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
}]
},
"
"
"
"
"
}]
}
If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">patternMeta" : { Meta },
"example" : [{ // I Example value (as defined for type)
"label" : "<string>", // R! Describes the purpose of this example
// value[x]: Value of Example (one of allowed types). One of these 55:
"valueBase64Binary" : "<base64Binary>"
"valueBoolean" : <boolean>,
"valueCanonical" : "<canonical>",
"valueCode" : "<code>",
"valueDate" : "<date>",
"valueDateTime" : "<dateTime>",
"valueDecimal" : <decimal>,
"valueId" : "<id>",
"valueInstant" : "<instant>",
"valueInteger" : <integer>,
"valueInteger64" : "<integer64>",
"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 },
"valueCodeableReference" : { CodeableReference },
"valueCoding" : { Coding },
"valueContactPoint" : { ContactPoint },
"valueCount" : { Count },
"valueDistance" : { Distance },
"valueDuration" : { Duration },
"valueHumanName" : { HumanName },
"valueIdentifier" : { Identifier },
"valueMoney" : { Money },
"valuePeriod" : { Period },
"valueQuantity" : { Quantity },
"valueRange" : { Range },
"valueRatio" : { Ratio },
"valueRatioRange" : { RatioRange },
"valueReference" : { Reference },
"valueSampledData" : { SampledData },
"valueSignature" : { Signature },
"valueTiming" : { Timing },
"valueContactDetail" : { ContactDetail },
"valueDataRequirement" : { DataRequirement },
"valueExpression" : { Expression },
"valueParameterDefinition" : { ParameterDefinition },
"valueRelatedArtifact" : { RelatedArtifact },
"valueTriggerDefinition" : { TriggerDefinition },
"valueUsageContext" : { UsageContext },
"valueAvailability" : { Availability },
"valueExtendedContactDetail" : { ExtendedContactDetail },
"valueVirtualServiceDetail" : { VirtualServiceDetail },
"valueDosage" : { Dosage },
"valueMeta" : { Meta },
}],
// minValue[x]: Minimum Allowed Value (for some types). One of these 10:
"minValueDate" : "<date>",
"minValueDateTime" : "<dateTime>",
"minValueInstant" : "<instant>",
"minValueTime" : "<time>",
"minValueDecimal" : <decimal>,
"minValueInteger" : <integer>,
"minValueInteger64" : "<integer64>",
"minValuePositiveInt" : "<positiveInt>",
"minValueUnsignedInt" : "<unsignedInt>",
"minValueQuantity" : { Quantity },
// maxValue[x]: Maximum Allowed Value (for some types). One of these 10:
"maxValueDate" : "<date>",
"maxValueDateTime" : "<dateTime>",
"maxValueInstant" : "<instant>",
"maxValueTime" : "<time>",
"maxValueDecimal" : <decimal>,
"maxValueInteger" : <integer>,
"maxValueInteger64" : "<integer64>",
"maxValuePositiveInt" : "<positiveInt>",
"maxValueUnsignedInt" : "<unsignedInt>",
"maxValueQuantity" : { Quantity },
"maxLength" : <integer>, // I Max length for string type data
"condition" : ["<id>"], // Reference to invariant about presence
"constraint" : [{ // I Condition that must evaluate to true
"key" : "<id>", // I R! Target of 'condition' reference above
"requirements" : "<markdown>", // Why this constraint is necessary or appropriate
"severity" : "<code>", // I R! error | warning
"suppress" : <boolean>, // I Suppress warning or hint in profile
"human" : "<string>", // R! Human description of constraint
"expression" : "<string>", // I FHIRPath expression of constraint
"source" : "<canonical(StructureDefinition)>" // Reference to original source of constraint
}],
"mustHaveValue" : <boolean>, // I For primitives, that a value must be present - not replaced by an extension
"valueAlternatives" : ["<canonical(StructureDefinition)>"], // I Extensions that are allowed to replace a primitive value
"mustSupport" : <boolean>, // If the element must be supported (discouraged - see obligations)
"isModifier" : <boolean>, // I If this modifies the meaning of other elements
"isModifierReason" : "<string>", // I Reason that this element is marked as a modifier
"isSummary" : <boolean>, // Include when _summary = true?
"binding" : { // I ValueSet details if this is coded
"strength" : "<code>", // R! required | extensible | preferred | example | descriptive
"description" : "<markdown>", // I Guidance on the codes to be used
"valueSet" : "<canonical(ValueSet)>", // I Source of value set
"additional" : [{ // Additional Bindings - more rules about the binding
"key" : "<id>", // Unique identifier so additional bindings to be matched across profiles
"purpose" : "<code>", // R! maximum | minimum | required | extensible | candidate | current | current-extensible | best-practice | preferred | ui | starter | component
"valueSet" : "<canonical(ValueSet)>", // R! The value set for the additional binding
"documentation" : "<markdown>", // Documentation of the purpose of use of the binding
"shortDoco" : "<string>", // Concise documentation - for summary tables
"usage" : [{ UsageContext }], // Qualifies the usage - jurisdiction, gender, workflow status etc.
"any" : <boolean> // Whether binding can applies to all repeats, or just one
}]
},
"mapping" : [{ // I Map element to another set of definitions
"identity" : "<id>", // I R! Reference to mapping declaration
"language" : "<code>", // Computable language of mapping
"map" : "<string>", // R! Details of the mapping
"comment" : "<markdown>" // Comments about the mapping or its use
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: fhir:extension fhir:path [ string ] ; # 1..1 I Path of the element in the hierarchy of elements fhir:representation ( [ code ] ... ) ; # 0..* xmlAttr | xmlText | typeAttr | cdaText | xhtml fhir:sliceName [ string ] ; # 0..1 I Name for this particular element (in a set of slices) fhir:sliceIsConstraining [ boolean ] ; # 0..1 I If this slice definition constrains an inherited slice definition (or not) fhir:label [ string ] ; # 0..1 String to display with or prompt for element fhir:code ( [ Coding ] ... ) ; # 0..* Corresponding codes in terminologies fhir:slicing [ # 0..1 I This element is sliced - slices follow fhir:discriminator ( [ # 0..* Element values that are used to distinguish the slices fhir:type [ code ] ; # 1..1 value | exists | type | profile | position fhir:path [ string ] ; # 1..1 Path to element value ] ... ) ; fhir:description [ string ] ; # 0..1 Text description of how slicing works (or not) fhir:ordered [ boolean ] ; # 0..1 I If elements must be in same order as slices fhir:rules [ code ] ; # 1..1 I closed | open | openAtEnd ] ; fhir:short [ string ] ; # 0..1 Concise definition for space-constrained presentation fhir:definition [ markdown ] ; # 0..1 Full formal definition as narrative text fhir:comment [ markdown ] ; # 0..1 Comments about the use of this element fhir:requirements [ markdown ] ; # 0..1 Requirements satisfied by this element/structure and its constraints fhir:alias ( [ string ] ... ) ; # 0..* Other names fhir:min [ unsignedInt ] ; # 0..1 I Minimum Cardinality fhir:max [ string ] ; # 0..1 I Maximum Cardinality (a number or *) fhir:base [ # 0..1 Base definition information for tools fhir:path [ string ] ; # 1..1 Path that identifies the base element fhir:min [ unsignedInt ] ; # 1..1 Min cardinality of the base element fhir:max [ string ] ; # 1..1 Max cardinality of the base element ] ; fhir:contentReference [ uri ] ; # 0..1 I Reference to definition of content for the element fhir:type ( [ # 0..* I Data type and Profile for this element fhir:code [ uri ] ; # 1..1 I Data type or Resource (reference to definition) fhir:profile ( [ canonical(ImplementationGuide|StructureDefinition) ] ... ) ; # 0..* Profiles (StructureDefinition or IG) - one must apply fhir:targetProfile ( [ canonical(ImplementationGuide|StructureDefinition) ] ... ) ; # 0..* I Profile (StructureDefinition or IG) on the Reference/canonical target - one must apply fhir:aggregation ( [ code ] ... ) ; # 0..* I contained | referenced | bundled - how aggregated fhir:versioning [ code ] ; # 0..1 either | independent | specific ] ... ) ; # defaultValue[x] : 0..1 I Specified value if missing from instance. One of these 55 fhir:defaultValue [ a fhir:Base64Binary ; base64Binary ] fhir:defaultValue [ a fhir:Boolean ; boolean ] fhir:defaultValue [ a fhir:Canonical ; canonical ] fhir:defaultValue [ a fhir:Code ; code ] fhir:defaultValue [ a fhir:Date ; date ] fhir:defaultValue [ a fhir:DateTime ; dateTime ] fhir:defaultValue [ a fhir:Decimal ; decimal ] fhir:defaultValue [ a fhir:Id ; id ] fhir:defaultValue [ a fhir:Instant ; instant ] fhir:defaultValue [ a fhir:Integer ; integer ] fhir:defaultValue [ a fhir:Integer64 ; integer64 ] fhir:defaultValue [ a fhir:Markdown ; markdown ] fhir:defaultValue [ a fhir:Oid ; oid ] fhir:defaultValue [ a fhir:PositiveInt ; positiveInt ] fhir:defaultValue [ a fhir:String ; string ] fhir:defaultValue [ a fhir:Time ; time ] fhir:defaultValue [ a fhir:UnsignedInt ; unsignedInt ] fhir:defaultValue [ a fhir:Uri ; uri ] fhir:defaultValue [ a fhir:Url ; url ] fhir:defaultValue [ a fhir:Uuid ; uuid ] fhir:defaultValue [ a fhir:Address ; Address ] fhir:defaultValue [ a fhir:Age ; Age ] fhir:defaultValue [ a fhir:Annotation ; Annotation ] fhir:defaultValue [ a fhir:Attachment ; Attachment ] fhir:defaultValue [ a fhir:CodeableConcept ; CodeableConcept ] fhir:defaultValue [ a fhir:CodeableReference ; CodeableReference ] fhir:defaultValue [ a fhir:Coding ; Coding ] fhir:defaultValue [ a fhir:ContactPoint ; ContactPoint ] fhir:defaultValue [ a fhir:Count ; Count ] fhir:defaultValue [ a fhir:Distance ; Distance ] fhir:defaultValue [ a fhir:Duration ; Duration ] fhir:defaultValue [ a fhir:HumanName ; HumanName ] fhir:defaultValue [ a fhir:Identifier ; Identifier ] fhir:defaultValue [ a fhir:Money ; Money ] fhir:defaultValue [ a fhir:Period ; Period ] fhir:defaultValue [ a fhir:Quantity ; Quantity ] fhir:defaultValue [ a fhir:Range ; Range ] fhir:defaultValue [ a fhir:Ratio ; Ratio ] fhir:defaultValue [ a fhir:RatioRange ; RatioRange ] fhir:defaultValue [ a fhir:Reference ; Reference ] fhir:defaultValue [ a fhir:SampledData ; SampledData ] fhir:defaultValue [ a fhir:Signature ; Signature ] fhir:defaultValue [ a fhir:Timing ; Timing ] fhir:defaultValue [ a fhir:ContactDetail ; ContactDetail ] fhir:defaultValue [ a fhir:DataRequirement ; DataRequirement ] fhir:defaultValue [ a fhir:Expression ; Expression ] fhir:defaultValue [ a fhir:ParameterDefinition ; ParameterDefinition ] fhir:defaultValue [ a fhir:RelatedArtifact ; RelatedArtifact ] fhir:defaultValue [ a fhir:TriggerDefinition ; TriggerDefinition ] fhir:defaultValue [ a fhir:UsageContext ; UsageContext ] fhir:defaultValue [ a fhir:Availability ; Availability ] fhir:defaultValue [ a fhir:ExtendedContactDetail ; ExtendedContactDetail ] fhir:defaultValue [ a fhir:VirtualServiceDetail ; VirtualServiceDetail ] fhir:defaultValue [ a fhir:Dosage ; Dosage ] fhir:defaultValue [ a fhir:Meta ; Meta ] fhir:meaningWhenMissing [ markdown ] ; # 0..1 I Implicit meaning when this element is missing fhir:orderMeaning [ string ] ; # 0..1 I What the order of the elements means # fixed[x] : 0..1 I Value must be exactly this. One of these 55 fhir:fixed [ a fhir:Base64Binary ; base64Binary ] fhir:fixed [ a fhir:Boolean ; boolean ] fhir:fixed [ a fhir:Canonical ; canonical ] fhir:fixed [ a fhir:Code ; code ] fhir:fixed [ a fhir:Date ; date ] fhir:fixed [ a fhir:DateTime ; dateTime ] fhir:fixed [ a fhir:Decimal ; decimal ] fhir:fixed [ a fhir:Id ; id ] fhir:fixed [ a fhir:Instant ; instant ] fhir:fixed [ a fhir:Integer ; integer ] fhir:fixed [ a fhir:Integer64 ; integer64 ] fhir:fixed [ a fhir:Markdown ; markdown ] fhir:fixed [ a fhir:Oid ; oid ] fhir:fixed [ a fhir:PositiveInt ; positiveInt ] fhir:fixed [ a fhir:String ; string ] fhir:fixed [ a fhir:Time ; time ] fhir:fixed [ a fhir:UnsignedInt ; unsignedInt ] fhir:fixed [ a fhir:Uri ; uri ] fhir:fixed [ a fhir:Url ; url ] fhir:fixed [ a fhir:Uuid ; uuid ] fhir:fixed [ a fhir:Address ; Address ] fhir:fixed [ a fhir:Age ; Age ] fhir:fixed [ a fhir:Annotation ; Annotation ] fhir:fixed [ a fhir:Attachment ; Attachment ] fhir:fixed [ a fhir:CodeableConcept ; CodeableConcept ] fhir:fixed [ a fhir:CodeableReference ; CodeableReference ] fhir:fixed [ a fhir:Coding ; Coding ] fhir:fixed [ a fhir:ContactPoint ; ContactPoint ] fhir:fixed [ a fhir:Count ; Count ] fhir:fixed [ a fhir:Distance ; Distance ] fhir:fixed [ a fhir:Duration ; Duration ] fhir:fixed [ a fhir:HumanName ; HumanName ] fhir:fixed [ a fhir:Identifier ; Identifier ] fhir:fixed [ a fhir:Money ; Money ] fhir:fixed [ a fhir:Period ; Period ] fhir:fixed [ a fhir:Quantity ; Quantity ] fhir:fixed [ a fhir:Range ; Range ] fhir:fixed [ a fhir:Ratio ; Ratio ] fhir:fixed [ a fhir:RatioRange ; RatioRange ] fhir:fixed [ a fhir:Reference ; Reference ] fhir:fixed [ a fhir:SampledData ; SampledData ] fhir:fixed [ a fhir:Signature ; Signature ] fhir:fixed [ a fhir:Timing ; Timing ] fhir:fixed [ a fhir:ContactDetail ; ContactDetail ] fhir:fixed [ a fhir:DataRequirement ; DataRequirement ] fhir:fixed [ a fhir:Expression ; Expression ] fhir:fixed [ a fhir:ParameterDefinition ; ParameterDefinition ] fhir:fixed [ a fhir:RelatedArtifact ; RelatedArtifact ] fhir:fixed [ a fhir:TriggerDefinition ; TriggerDefinition ] fhir:fixed [ a fhir:UsageContext ; UsageContext ] fhir:fixed [ a fhir:Availability ; Availability ] fhir:fixed [ a fhir:ExtendedContactDetail ; ExtendedContactDetail ] fhir:fixed [ a fhir:VirtualServiceDetail ; VirtualServiceDetail ] fhir:fixed [ a fhir:Dosage ; Dosage ] fhir:fixed [ a fhir:Meta ; Meta ] # If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern[x]. One of these 54 If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern[x] : 0..1 I Value must have at least these property values. One of these 55 fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Base64Binary ; base64Binary ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Boolean ; boolean ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Canonical ; canonical ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Code ; code ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Date ; date ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:DateTime ; dateTime ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Decimal ; decimal ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Id ; id ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Instant ; instant ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Integer ; integer ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Integer64 ; integer64 ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Markdown ; markdown ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Oid ; oid ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:PositiveInt ; positiveInt ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:String ; string ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Time ; time ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:UnsignedInt ; unsignedInt ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Uri ; uri ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Url ; url ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Uuid ; uuid ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Address ; Address ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Age ; Age ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Annotation ; Annotation ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Attachment ; Attachment ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:CodeableConcept ; CodeableConcept ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:CodeableReference ; CodeableReference ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Coding ; Coding ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:ContactPoint ; ContactPoint ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Count ; Count ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Distance ; Distance ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Duration ; Duration ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:HumanName ; HumanName ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Identifier ; Identifier ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Money ; Money ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Period ; Period ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Quantity ; Quantity ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Range ; Range ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Ratio ; Ratio ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:RatioRange ; RatioRange ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Reference ; Reference ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:SampledData ; SampledData ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Signature ; Signature ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Timing ; Timing ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:ContactDetail ; ContactDetail ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:DataRequirement ; DataRequirement ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Expression ; Expression ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:ParameterDefinition ; ParameterDefinition ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:RelatedArtifact ; RelatedArtifact ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:TriggerDefinition ; TriggerDefinition ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:UsageContext ; UsageContext ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Availability ; Availability ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:ExtendedContactDetail ; ExtendedContactDetail ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:VirtualServiceDetail ; VirtualServiceDetail ] fhir:If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern ] fhir: fhir: # . One of these 54 fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] ] ... ) ; # . One of these 10 fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] # . One of these 10 fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: ] fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ] ... ) ; fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ] ... ) ; ] ; fhir: fhir: fhir: fhir: fhir: ] ... ) ; ] If a pattern[x] is declared on a repeating element, the pattern applies to all repetitions. If the desire is for a pattern to apply to only one element or a subset of elements, slicing must be used. See [Examples of Patterns](elementdefinition-examples.html#pattern-examples) for examples of pattern usage and the effect it will have." class="dict">pattern [ a fhir:Dosage ; Dosage ] fhir:pattern [ a fhir:Meta ; Meta ] fhir:example ( [ # 0..* I Example value (as defined for type) fhir:label [ string ] ; # 1..1 Describes the purpose of this example # value[x] : 1..1 Value of Example (one of allowed types). One of these 55 fhir:value [ a fhir:Base64Binary ; base64Binary ] fhir:value [ a fhir:Boolean ; boolean ] fhir:value [ a fhir:Canonical ; canonical ] fhir:value [ a fhir:Code ; code ] fhir:value [ a fhir:Date ; date ] fhir:value [ a fhir:DateTime ; dateTime ] fhir:value [ a fhir:Decimal ; decimal ] fhir:value [ a fhir:Id ; id ] fhir:value [ a fhir:Instant ; instant ] fhir:value [ a fhir:Integer ; integer ] fhir:value [ a fhir:Integer64 ; integer64 ] fhir:value [ a fhir:Markdown ; markdown ] fhir:value [ a fhir:Oid ; oid ] fhir:value [ a fhir:PositiveInt ; positiveInt ] fhir:value [ a fhir:String ; string ] fhir:value [ a fhir:Time ; time ] fhir:value [ a fhir:UnsignedInt ; unsignedInt ] fhir:value [ a fhir:Uri ; uri ] fhir:value [ a fhir:Url ; url ] fhir:value [ a fhir:Uuid ; uuid ] fhir:value [ a fhir:Address ; Address ] fhir:value [ a fhir:Age ; Age ] fhir:value [ a fhir:Annotation ; Annotation ] fhir:value [ a fhir:Attachment ; Attachment ] fhir:value [ a fhir:CodeableConcept ; CodeableConcept ] fhir:value [ a fhir:CodeableReference ; CodeableReference ] fhir:value [ a fhir:Coding ; Coding ] fhir:value [ a fhir:ContactPoint ; ContactPoint ] fhir:value [ a fhir:Count ; Count ] fhir:value [ a fhir:Distance ; Distance ] fhir:value [ a fhir:Duration ; Duration ] fhir:value [ a fhir:HumanName ; HumanName ] fhir:value [ a fhir:Identifier ; Identifier ] fhir:value [ a fhir:Money ; Money ] fhir:value [ a fhir:Period ; Period ] fhir:value [ a fhir:Quantity ; Quantity ] fhir:value [ a fhir:Range ; Range ] fhir:value [ a fhir:Ratio ; Ratio ] fhir:value [ a fhir:RatioRange ; RatioRange ] fhir:value [ a fhir:Reference ; Reference ] fhir:value [ a fhir:SampledData ; SampledData ] fhir:value [ a fhir:Signature ; Signature ] fhir:value [ a fhir:Timing ; Timing ] fhir:value [ a fhir:ContactDetail ; ContactDetail ] fhir:value [ a fhir:DataRequirement ; DataRequirement ] fhir:value [ a fhir:Expression ; Expression ] fhir:value [ a fhir:ParameterDefinition ; ParameterDefinition ] fhir:value [ a fhir:RelatedArtifact ; RelatedArtifact ] fhir:value [ a fhir:TriggerDefinition ; TriggerDefinition ] fhir:value [ a fhir:UsageContext ; UsageContext ] fhir:value [ a fhir:Availability ; Availability ] fhir:value [ a fhir:ExtendedContactDetail ; ExtendedContactDetail ] fhir:value [ a fhir:VirtualServiceDetail ; VirtualServiceDetail ] fhir:value [ a fhir:Dosage ; Dosage ] fhir:value [ a fhir:Meta ; Meta ] ] ... ) ; # minValue[x] : 0..1 I Minimum Allowed Value (for some types). One of these 10 fhir:minValue [ a fhir:Date ; date ] fhir:minValue [ a fhir:DateTime ; dateTime ] fhir:minValue [ a fhir:Instant ; instant ] fhir:minValue [ a fhir:Time ; time ] fhir:minValue [ a fhir:Decimal ; decimal ] fhir:minValue [ a fhir:Integer ; integer ] fhir:minValue [ a fhir:Integer64 ; integer64 ] fhir:minValue [ a fhir:PositiveInt ; positiveInt ] fhir:minValue [ a fhir:UnsignedInt ; unsignedInt ] fhir:minValue [ a fhir:Quantity ; Quantity ] # maxValue[x] : 0..1 I Maximum Allowed Value (for some types). One of these 10 fhir:maxValue [ a fhir:Date ; date ] fhir:maxValue [ a fhir:DateTime ; dateTime ] fhir:maxValue [ a fhir:Instant ; instant ] fhir:maxValue [ a fhir:Time ; time ] fhir:maxValue [ a fhir:Decimal ; decimal ] fhir:maxValue [ a fhir:Integer ; integer ] fhir:maxValue [ a fhir:Integer64 ; integer64 ] fhir:maxValue [ a fhir:PositiveInt ; positiveInt ] fhir:maxValue [ a fhir:UnsignedInt ; unsignedInt ] fhir:maxValue [ a fhir:Quantity ; Quantity ] fhir:maxLength [ integer ] ; # 0..1 I Max length for string type data fhir:condition ( [ id ] ... ) ; # 0..* Reference to invariant about presence fhir:constraint ( [ # 0..* I Condition that must evaluate to true fhir:key [ id ] ; # 1..1 I Target of 'condition' reference above fhir:requirements [ markdown ] ; # 0..1 Why this constraint is necessary or appropriate fhir:severity [ code ] ; # 1..1 I error | warning fhir:suppress [ boolean ] ; # 0..1 I Suppress warning or hint in profile fhir:human [ string ] ; # 1..1 Human description of constraint fhir:expression [ string ] ; # 0..1 I FHIRPath expression of constraint fhir:source [ canonical(StructureDefinition) ] ; # 0..1 Reference to original source of constraint ] ... ) ; fhir:mustHaveValue [ boolean ] ; # 0..1 I For primitives, that a value must be present - not replaced by an extension fhir:valueAlternatives ( [ canonical(StructureDefinition) ] ... ) ; # 0..* I Extensions that are allowed to replace a primitive value fhir:mustSupport [ boolean ] ; # 0..1 If the element must be supported (discouraged - see obligations) fhir:isModifier [ boolean ] ; # 0..1 I If this modifies the meaning of other elements fhir:isModifierReason [ string ] ; # 0..1 I Reason that this element is marked as a modifier fhir:isSummary [ boolean ] ; # 0..1 Include when _summary = true? fhir:binding [ # 0..1 I ValueSet details if this is coded fhir:strength [ code ] ; # 1..1 required | extensible | preferred | example | descriptive fhir:description [ markdown ] ; # 0..1 I Guidance on the codes to be used fhir:valueSet [ canonical(ValueSet) ] ; # 0..1 I Source of value set fhir:additional ( [ # 0..* Additional Bindings - more rules about the binding fhir:key [ id ] ; # 0..1 Unique identifier so additional bindings to be matched across profiles fhir:purpose [ code ] ; # 1..1 maximum | minimum | required | extensible | candidate | current | current-extensible | best-practice | preferred | ui | starter | component fhir:valueSet [ canonical(ValueSet) ] ; # 1..1 The value set for the additional binding fhir:documentation [ markdown ] ; # 0..1 Documentation of the purpose of use of the binding fhir:shortDoco [ string ] ; # 0..1 Concise documentation - for summary tables fhir:usage ( [ UsageContext ] ... ) ; # 0..* Qualifies the usage - jurisdiction, gender, workflow status etc. fhir:any [ boolean ] ; # 0..1 Whether binding can applies to all repeats, or just one ] ... ) ; ] ; fhir:mapping ( [ # 0..* I Map element to another set of definitions fhir:identity [ id ] ; # 1..1 I Reference to mapping declaration fhir:language [ code ] ; # 0..1 Computable language of mapping fhir:map [ string ] ; # 1..1 Details of the mapping fhir:comment [ markdown ] ; # 0..1 Comments about the mapping or its use ] ... ) ; ]
Changes since Release 3
Changes from both R4 and R4B
| ElementDefinition | |
| ElementDefinition.slicing.discriminator.type |
|
| ElementDefinition.type.code |
|
| ElementDefinition.type.aggregation |
|
| ElementDefinition.defaultValue[x] |
|
| ElementDefinition.fixed[x] |
|
| ElementDefinition.pattern[x] |
|
| ElementDefinition.example.value[x] |
|
| ElementDefinition.minValue[x] |
|
| ElementDefinition.maxValue[x] |
|
| ElementDefinition.constraint.requirements |
|
| ElementDefinition.constraint.suppress |
|
| ElementDefinition.mustHaveValue |
|
| ElementDefinition.valueAlternatives |
|
| ElementDefinition.binding.strength |
|
| ElementDefinition.binding.description |
|
| ElementDefinition.binding.additional |
|
| ElementDefinition.binding.additional.key |
|
| ElementDefinition.binding.additional.purpose |
|
| ElementDefinition.binding.additional.valueSet |
|
| ElementDefinition.binding.additional.documentation |
|
| ElementDefinition.binding.additional.shortDoco |
|
| ElementDefinition.binding.additional.usage |
|
| ElementDefinition.binding.additional.any |
|
| ElementDefinition.mapping.comment |
|
| ElementDefinition.constraint.xpath |
|
See the Full Difference for further information
Constraints
| id | Level | Location | Description | Expression |
eld-2
|
Rule | (base) | Min <= Max | min.empty() or max.empty() or (max = '*') or iif(max != '*', min <= max.toInteger()) |
eld-3
|
Rule | ElementDefinition.max | Max SHALL be a number or "*" | empty() or ($this = '*') or (toInteger() >= 0) |
eld-4
|
Rule | ElementDefinition.type | Aggregation may only be specified if one of the allowed types for the element is a reference | aggregation.empty() or (code = 'Reference') or (code = 'canonical') or (code = 'CodeableReference') |
eld-5
|
Rule | (base) | if the element definition has a contentReference, it cannot have type, defaultValue, fixed, pattern, example, minValue, maxValue, maxLength, or binding | contentReference.empty() or (type.empty() and defaultValue.empty() and fixed.empty() and pattern.empty() and example.empty() and minValue.empty() and maxValue.empty() and maxLength.empty() and binding.empty()) |
eld-6
|
Rule | (base) | Fixed value may only be specified if there is one type | fixed.empty() or (type.count() <= 1) |
eld-7
|
Rule | (base) | Pattern may only be specified if there is one type | pattern.empty() or (type.count() <= 1) |
eld-8
|
Rule | (base) | Pattern and fixed are mutually exclusive | pattern.empty() or fixed.empty() |
eld-11
|
Rule | (base) | Binding can only be present for coded elements, string, and uri if using FHIR-defined types |
binding.empty()
or
type.code.empty()
or
|
eld-12
|
Rule | ElementDefinition.binding | ValueSet SHALL start with http:// or https:// or urn: or # | valueSet.exists() implies (valueSet.startsWith('http:') or valueSet.startsWith('https') or valueSet.startsWith('urn:') or valueSet.startsWith('#')) |
eld-13
|
Rule | (base) | Types must be unique by code | type.select(code).isDistinct() |
eld-14
|
Rule | (base) | Constraints must be unique by key | constraint.select(key).isDistinct() |
eld-15
|
Rule | (base) | default value and meaningWhenMissing are mutually exclusive | defaultValue.empty() or meaningWhenMissing.empty() |
eld-16
|
Rule | (base) | sliceName must be composed of proper tokens separated by "/" | sliceName.empty() or sliceName.matches('^[a-zA-Z0-9\\/\\-_\\[\\]\\@]+$') |
eld-17
|
Rule | ElementDefinition.type | targetProfile is only allowed if the type is Reference or canonical | (code='Reference' or code = 'canonical' or code = 'CodeableReference') or targetProfile.empty() |
eld-18
|
Rule | (base) | Must have a modifier reason if isModifier = true | (isModifier.exists() and isModifier) implies isModifierReason.exists() |
eld-19
|
Rule | (base) | Element path SHALL be expressed as a set of '.'-separated components with each component restricted to a maximum of 64 characters and with some limits on the allowed choice of characters | path.matches('^[^\\s\\.,:;\\\'"\\/|?!@#$%&*()\\[\\]{}]{1,64}(\\.[^\\s\\.,:;\\\'"\\/|?!@#$%&*()\\[\\]{}]{1,64}(\\[x\\])?(\\:[^\\s\\.]+)?)*$') |
eld-20
|
Warning | (base) | The first component of the path should be UpperCamelCase. Additional components (following a '.') should be lowerCamelCase. If this syntax is not adhered to, code generation tools may be broken. Logical models may be less concerned about this implication. | path.matches('^[A-Za-z][A-Za-z0-9]{0,63}(\\.[a-z][A-Za-z0-9]{0,63}(\\[x])?)*$') |
eld-21
|
Warning | ElementDefinition.constraint | Constraints should have an expression or else validators will not be able to enforce them | expression.exists() |
eld-22
|
Rule | (base) | sliceIsConstraining can only appear if slicename is present | sliceIsConstraining.exists() implies sliceName.exists() |
eld-23
|
Rule | ElementDefinition.binding | binding SHALL have either description or valueSet | description.exists() or valueSet.exists() |
eld-24
|
Guideline | (base) | pattern[x] should be used rather than fixed[x] |
fixed.exists().not()
This is (only) a best practice guideline because:
|
eld-25
|
Warning | (base) | Order has no meaning (and cannot be asserted to have meaning), so enforcing rules on order is improper | orderMeaning.empty() implies slicing.where(rules='openAtEnd' or ordered).exists().not() |
eld-26
|
Rule | ElementDefinition.constraint | Errors cannot be suppressed | (severity = 'error') implies suppress.empty() |
eld-27
|
Warning | (base) | Mappings SHOULD be unique by key | mapping.select(identity).isDistinct() |
eld-28
|
Rule | (base) | Can't have valueAlternatives if mustHaveValue is true | mustHaveValue.value implies valueAlternatives.empty() |
eld-29
| Warning | ElementDefinition.type | profiles SHOULD be unique | profile.isDistinct() |
eld-30
| Warning | ElementDefinition.type | targetProfiles SHOULD be unique | targetProfile.isDistinct() |
eld-31
| Guideline | ElementDefinition.binding.additional | additionalBindings should have a key |
key.exists()
This is (only) a best practice guideline because:
|
eld-32
| Rule | ElementDefinition.binding | If the strength is 'descriptive' no value set can ve provided | strength = 'descriptive' implies valueSet.empty() |
eld-33
| Warning | (base) | If there's more than one bindable type, it's usually an error for there to be a binding | type.where(code in 'code' | 'Coding' | 'CodeableConcept' | 'CodeableReference' | 'uri' | 'string' | 'Quantity').count() > 1 implies binding.empty() |
eld-34
| Guideline | ElementDefinition.binding | if there's a required binding with no usage, it should be the base binding |
strength
!=
'required'
implies
additional.where(purpose
=
'required'
and
usage.empty()).empty()
This is (only) a best practice guideline because:
|
The
path
element
is
the
most
important
property
of
the
element
definition.
It
both
names
the
element,
and
locates
the
element
within
a
hierarchy
defined
within
a
particular
context.
Within
the
FHIR
specification,
there
is
only
one
original
definition
for
each
path.
This
is
the
master
definition
to
which
all
the
other
definitions
with
the
same
path
must
conform.
All elements defined within the FHIR specification itself are defined within a StructureDefinition that defines a resource, or a datatype. This defines the identity of the element and provides the context in which the meaning of the element is understood. When Elements are defined, the following rules apply:
If the element is polymorphic (has more than one datatype), then the end of the path for the element SHALL be "[x]" to designate that the name of the element may vary when serialized. The "[x]" is not considered to be part of the official element name, though it may frequently appear in documentation that way.
Elements may be defined in:
resource
,
complex-type
or
primitive-type
,
where
derivation
=
specialization
.
These
are
either
Resources
or
Datatypes
defined
in
the
specification
logical
StructureDefinitions
with
derivation
=
constraint
(i.e.
(i.e.,
Resource
and
Datatype
profiles)
are
not
allowed
to
define
or
include
ElementDefinitions
with
a
path
not
defined
within
the
base
type
definition
from
which
they
derive
(e.g.
(e.g.,
in
the
FHIR
specification).
In
addition
to
the
path,
every
ElementDefinition
SHALL
have
a
populated
id
,
and
the
id
SHALL
have
a
unique
value
populated
by
following
this
algorithm:
pathpart:slicename/reslicename
Note
that
in
a
profile
with
no
slices,
this
id
will
match
the
path
exactly
and
entirely.
id
values
constructed
in
this
fashion
are
unique,
and
persistent,
and
may
be
used
as
the
target
of
external
references
into
the
definition,
where
necessary.
The
datatype
ElementDefinition
is
used
in
StructureDefinition
.
The
way
its
elements
are
to
be
used
and
interpreted
depends
on
the
context:
| ElementDefinition field |
Type
definition,
|
Type definition, following elements |
Constraint
Definition,
|
Constraint Definition, following elements |
| sliceName | prohibited | prohibited | prohibited | required for slices, else prohibited |
| label | optional | optional | recommended | recommended |
| code | optional | optional | optional | optional |
| slicing | prohibited |
|
prohibited | optional |
| short/definition | required | required | required ‡ | required ‡ |
|
|
prohibited | optional | prohibited ‡ | optional ‡ |
| comment | optional | optional | optional | optional |
| alias | optional | optional | optional | optional |
| base |
snapshot:
differential: optional |
snapshot:
differential: optional |
|
|
| type |
|
required | optional | optional |
| nameReference | prohibited | optional | prohibited | optional |
| min/max | optional§ | required | optional | optional † |
| defaultValue[x] | prohibited | optional | prohibited | optional † |
| meaningWhenMissing | prohibited | optional | prohibited | optional † |
| fixed[x] | prohibited | prohibited | prohibited | optional |
| pattern[x] | prohibited | prohibited | prohibited | optional |
| example[x] | prohibited | optional | prohibited | optional |
| minValue[x] | prohibited | prohibited | prohibited | optional |
| maxValue[x] | prohibited | prohibited | prohibited | optional |
| maxLength | prohibited | prohibited | prohibited | optional |
| mustSupport |
|
|
optional | optional |
| isModifier |
|
optional |
|
optional † |
| isSummary |
|
optional |
|
optional † |
| binding | prohibited | optional |
|
optional |
| constraint | optional | optional | optional ∆ | optional ∆ |
| condition |
|
optional |
|
optional ∆ |
| mapping | optional | optional | optional ∆ | optional ∆ |
Notes:
Notes:♉
.
separators
in
the
path.
It
is
not
always
present
in
differentials
baseDefinition
element,
or
where
the
derivation
type
is
'specialization'
baseDefinition
element
and
a
derivation
of
'constraint'
-
.
This
occurs
when
the
generic
behavior
of
the
FHIR
primitive
type
is
not
desired
then
it
will
typically
also
include
a
structuredefinition-fhir-type
extension.
This
extension
might
further
constrain
the
allowed
value
of
an
element
that
might
be
treated
as
a
string.
For
example,
limiting
the
permitted
value
regex,
length,
etc.
to
the
corresponding
FHIR-defined
datatype
(but
NOT
permitting
the
additional
elements
such
as
id
and
extension).
If
the
extension
is
not
present,
no
additional
constraints
apply.
The use of Path and type depends more deeply on the context where the ElementDefinition is used:
| Context | path (1st element) | path (following elements) | type (1st element) |
|
Base
definition
of
a
datatype
(example: Quantity - XML , JSON ) |
Name of the type | Path inside the datatype |
Element
|
|
A
constrained
datatype
(example: Money - XML , JSON ) |
Name of the base type | Path inside the datatype | Name of the base type |
|
Base
definition
of
a
resource
(example: Patient - XML , JSON ) |
The name of the resource | Path inside the resource |
DomainResource
or
sometimes
Resource
|
|
Constraint
on
a
resource
(example: DAF Patient - XML , JSON ) |
The name of the resource |
Path
inside
the
resource
(including into the datatypes) |
The name of the resource |
|
Base
Extension
(which
is
a
standard
datatype)
(example: Extension - XML , JSON ) |
Extension
|
Extension.value[x]
or
Extension.extension
|
Extension
|
|
A
defined
Extension
(example: Extension - XML , JSON ) |
Extension
|
Extension.value[x]
or
Extension.extension
(for
complex
extensions)
|
Extension
|
There
are
additional
notes
about
the
use
of
ElementDefinition
when
defining
Extensions
on
the
Defining
Extensions
page.
For a description of slicing, see Slicing
slicing
can
only
be
used
on
the
first
repetition
of
an
element.
This
first
element
that
declares
slicing
is
considered
to
be
the
slicing
entry
sliceName
@default
applies
to
all
entries
that
are
not
in
any
other
slice
slicing
information)
is
understood
to
be
the
set
of
constraints
that
apply
to
all
slices
and
entries,
whether
they
have
a
defined
slice
or
not
It's
use
follows
the
"normal
case",
except:
slicing
must
be
present
min
governs
the
number
of
total
occurrences
of
the
sliced
element
including
the
number
of
occurrences
in
the
open
portion
of
the
slice
(individual
slices
may
have
a
different
min
value).
max
,
type
(
code
,
profile
,
targetProfile
,
aggregation
and
versioning
),
fixed[x]
,
pattern[x]
,
minValue[x]
,
maxValue[x]
,
maxLength
,
constraints
,
required
and
extensible
bindings
(including
additional
bindings),
mustHaveValue
,
valueAlternatives
.
Obligations
apply
across
all
slices
unless
the
obligation
specifies
an
'applicable-number'
mustSupport
assertions
that
do
not
specify
otherwise
cannot
be
assumed
to
apply
to
all
slices
and
entries.
This
is
for
legacy
reasons
-
the
only
way
to
determine
the
applicability
of
mustSupport
and
unspecified
obligations
is
to
read
the
applicable
documentation,
and
in
the
absence
of
this,
consult
the
relevant
implementation
community
(see
further
discussion
on
the
implementation
obligations
page
).
Note
that
a
slice
labelled
as
must-support
can't
be
considered
to
have
no
need
to
support
just
because
the
slicer
element
is
not
labelled
as
must-support
-
the
documentation
(if
available)
must
be
consulted.
Elements that allow a choice of multiple types can be constrained. In principle, there are two different types of constraints to apply:
When constraining elements with multiple types, the following rules apply:
StructureDefinition.baseDefinition
:
min
and
max
are
always
required
StructureDefinition.differential
:
min
and
max
are
always
optional;
if
they
are
not
present,
they
default
to
the
min
and
max
from
the
base
definition
StructureDefinition.snapshot
:
min
and
max
are
always
required
All primitive data types have a value and also extensions. Even if the element is present, the value might not be present; instead, an extension may be present the either provides information about why the value is not present, or provides an expression that might be used to generate a value in a particular context. Some common extensions that might appear in place of a primitive value:
In
many
cases,
profiles
want
to
make
a
primitive
element
required
(min
=
1),
and
also
want
to
say
that
when
a
primitive
element
is
present,
the
value
must
be
present,
since
the
value
is
what
is
processed
by
applications.
The
flag
mustHaveValue
can
be
set
to
true
to
indicate
that
the
primitive
data
type
must
have
value
if
present
(so
it
has
impact
whatever
the
value
of
min
).
Note
that
this
flag
is
a
short
cut,
equivalent
to
the
profile
walking
into
the
primitive
data
type
and
setting
min
=
1
for
the
value.
The
short
cut
is
preferable
because
it's
simpler
and
more
concise
for
implementers.
Alternatively,
profiles
may
wish
to
allow
the
primitive
value
to
be
replaced
by
some
extensions
but
not
others.
In
this
case,
the
profiles
can
list
the
allowable
extensions
using
the
valueAlternatives
element,
which
contains
a
list
of
the
extensions
that
can
appear
if
the
primitive
value
is
not
present.
Note
that
this
list
is
a
short
cut
for
actually
profiling
the
extensions
on
the
primitive
data
type
and
making
a
co-occurence
constraint,
but
has
no
effect
when
the
value
is
present
.
For further discussion regarding populating primitive values, see Exchanging Data using FHIR .
Most elements have a minimum cardinality of 0, which means that they may be missing from a resource when it is exchanged between systems. Generally, when an element is missing, all that an application processing the resource can say about the element is that the value is unknown - it may have a correct value, but it has not been provided for security or workflow reasons. On the other hand, it might not have a value at all. All the application can say is that the value is unknown.
This also applies when the element is present, but has no value or child elements, and only has extensions instead.
However, for some elements, this specification makes specific rules about what it means if the element is missing. Constraints on other structures cannot change the missing meaning of an element. Here is a list of all elements with a default value or a missing meaning:
This specification does not define any default values for resources or datatypes because:
Note that default values can be defined in Logical Models .
For further information about bindings, see Terminology bindings .
The primary focus of the FHIR specification is on correct application behavior around what is exchanged and how: valid APIs and resource instances. However many FHIR implementation guides are interested in specifying additional obligations about how the applications involved handle the data that is being exchanged.
Element
Definitions
use
the
property
mustSupport
to
indicate
that
there
are
rules
that
apply
to
how
the
data
is
handled.
In
addition,
the
Obligation
Extension
extension
can
be
used
to
make
more
detailed
statements
about
application
behavior.
See
Implementation
Obligations
for
the
proper
use
of
these
features.