This
page
is
part
of
the
FHIR
Specification
(v4.3.0:
R4B
(v5.0.0-ballot:
R5
Ballot
-
STU
see
ballot
notes
).
The
current
version
which
supercedes
this
version
is
5.0.0
.
For
a
full
list
of
available
versions,
see
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
Work
Group
|
Maturity Level : 4 | Standards Status : Partially Normative |
Types
Framework
Cross
Reference:
Base
Types
standard.
See
the
Infrastructure
|
Datatypes
Package
for
further
details.
|
Resources
|
Patterns
This page describes a set of types used for conveying metadata about knowledge resources (mainly for Terminology , Conformance and Clinical Definition resources).
Table of Contents
| ContactDetail |
|
ParameterDefinition | RelatedArtifact |
| TriggerDefinition | Expression | UsageContext | ExtendedContactDetail |
| VirtualServiceDetail | Availability | MonetaryComponent |
For
an
index
of
all
data
types,
datatypes,
see
the
Data
types
Datatypes
page
.
See also Examples , Detailed Descriptions and Mappings .
The ContactDetail structure defines general contact details.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ N | Element |
Contact
information
Elements defined in Ancestors: id , extension |
|
|
Σ | 0..1 | string |
Name
of
an
individual
to
contact
|
|
Σ | 0..* | ContactPoint |
Contact
details
for
individual
or
organization
|
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
< xmlns="http://hl7.org/fhir"><ContactDetail xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <name value="[string]"/><!-- 0..1 Name of an individual to contact --> <telecom><!-- 0..* ContactPoint Contact details for individual or organization --></telecom></[name]></ContactDetail>
JSON Template
{
// from Element: extension
"name" : "<string>", // Name of an individual to contact
"telecom" : [{ ContactPoint }] // Contact details for individual or organization
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ContactDetail.name [ string ]; # 0..1 Name of an individual to contact fhir:ContactDetail.telecom [ ContactPoint ], ... ; # 0..* Contact details for individual or organization ]
Changes since Release 3
| ContactDetail |
|
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ N | Element |
Contact
information
Elements defined in Ancestors: id , extension |
|
|
Σ | 0..1 | string |
Name
of
an
individual
to
contact
|
|
Σ | 0..* | ContactPoint |
Contact
details
for
individual
or
organization
|
Documentation
for
this
format
|
||||
XML Template
< xmlns="http://hl7.org/fhir"><ContactDetail xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <name value="[string]"/><!-- 0..1 Name of an individual to contact --> <telecom><!-- 0..* ContactPoint Contact details for individual or organization --></telecom></[name]></ContactDetail>
JSON Template
{
// from Element: extension
"name" : "<string>", // Name of an individual to contact
"telecom" : [{ ContactPoint }] // Contact details for individual or organization
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ContactDetail.name [ string ]; # 0..1 Name of an individual to contact fhir:ContactDetail.telecom [ ContactPoint ], ... ; # 0..* Contact details for individual or organization ]
Constraints
ContactDetail
is
used
in
the
following
places:
Contributor
,
ActivityDefinition
,
ActorDefinition
,
CanonicalResource
,
CapabilityStatement
,
ChargeItemDefinition
,
Citation
,
CodeSystem
,
CompartmentDefinition
,
ConceptMap
,
ConditionDefinition
,
EventDefinition
,
Evidence
,
EvidenceReport
,
EvidenceVariable
,
ExampleScenario
,
GraphDefinition
,
ImplementationGuide
,
Library
,
Measure
,
MessageDefinition
,
MetadataResource
,
NamingSystem
,
ObservationDefinition
,
OperationDefinition
,
Parameters
,
PlanDefinition
,
Questionnaire
,
ResearchDefinition
,
ResearchElementDefinition
,
ResearchStudy
Requirements
,
SearchParameter
,
SpecimenDefinition
,
StructureDefinition
,
StructureMap
,
SubscriptionTopic
,
Task
,
TerminologyCapabilities
,
TestScript
and
ValueSet
See also Examples , Detailed Descriptions and Mappings .
The DataRequirement structure defines a general data requirement for a knowledge asset such as a decision support rule or quality measure.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Describes
a
required
data
item
Elements defined in Ancestors: id , extension |
|
|
Σ | 1..1 | code |
The
type
of
the
required
data
|
|
Σ | 0..* | canonical ( StructureDefinition ) |
The
profile
of
the
required
data
|
|
Σ | 0..1 |
E.g.
Patient,
Practitioner,
RelatedPerson,
Organization,
Location,
Device
|
|
|
CodeableConcept | |||
|
Reference ( Group ) | |||
|
Σ | 0..* | string |
Indicates
specific
structure
elements
that
are
referenced
by
the
knowledge
module
|
|
Σ
|
0..* | Element |
What
codes
are
expected
+ Rule: Either a path or a searchParam must be provided, but not both |
|
Σ | 0..1 | string |
A
code-valued
attribute
to
filter
on
|
|
Σ | 0..1 | string |
A
coded
(token)
parameter
to
search
on
|
|
Σ | 0..1 | canonical ( ValueSet ) |
Valueset
for
the
filter
|
|
Σ | 0..* | Coding |
What
code
is
expected
|
|
Σ
|
0..* | Element |
What
dates/date
ranges
are
expected
+ Rule: Either a path or a searchParam must be provided, but not both |
|
Σ | 0..1 | string |
A
date-valued
attribute
to
filter
on
|
|
Σ | 0..1 | string |
A
date
valued
parameter
to
search
on
|
|
Σ | 0..1 |
The
value
of
the
filter,
as
a
Period,
DateTime,
or
Duration
value
|
|
|
dateTime | |||
|
Period | |||
|
Duration | |||
| Σ | 0..* | Element |
What
values
are
expected
|
![]() ![]() ![]() | Σ | 0..1 | string |
An
attribute
to
filter
on
|
![]() ![]() ![]() | Σ | 0..1 | string |
A
parameter
to
search
on
|
![]() ![]() ![]() | Σ | 0..1 | code |
eq
|
gt
|
lt
|
ge
|
le
|
sa
|
eb
Value Filter Comparator ( Required ) |
![]() ![]() ![]() | Σ | 0..1 |
The
value
of
the
filter,
as
a
Period,
DateTime,
or
Duration
value
| |
![]() ![]() ![]() ![]() | dateTime | |||
![]() ![]() ![]() ![]() | Period | |||
![]() ![]() ![]() ![]() | Duration | |||
|
Σ | 0..1 | positiveInt |
Number
of
results
|
|
Σ | 0..* | Element |
Order
of
the
results
|
|
Σ | 1..1 | string |
The
name
of
the
attribute
to
perform
the
sort
|
|
Σ | 1..1 | code |
ascending
|
descending
SortDirection ( Required ) |
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
< xmlns="http://hl7.org/fhir"><DataRequirement xmlns="http://hl7.org/fhir"> <!-- from Element: extension --><<type value="[code]"/><!-- 1..1 The type of the required data --> <profile><!-- 0..* canonical(StructureDefinition) The profile of the required data --></profile><</subject[x]><subject[x]><!-- 0..1 CodeableConcept|Reference(Group) E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device --></subject[x]> <mustSupport value="[string]"/><!-- 0..* Indicates specific structure elements that are referenced by the knowledge module --> <codeFilter> <!-- 0..* What codes are expected --> <path value="[string]"/><!-- 0..1 A code-valued attribute to filter on --> <searchParam value="[string]"/><!-- 0..1 A coded (token) parameter to search on --> <valueSet><!-- 0..1 canonical(ValueSet) Valueset for the filter --></valueSet> <code><!-- 0..* Coding What code is expected --></code> </codeFilter> <dateFilter> <!-- 0..* What dates/date ranges are expected --> <path value="[string]"/><!-- 0..1 A date-valued attribute to filter on --> <searchParam value="[string]"/><!-- 0..1 A date valued parameter to search on --> <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]> </dateFilter> <valueFilter> <!-- 0..* What values are expected --> <path value="[string]"/><!-- 0..1 An attribute to filter on --> <searchParam value="[string]"/><!-- 0..1 A parameter to search on --> <comparator value="[code]"/><!-- 0..1 eq | gt | lt | ge | le | sa | eb --> <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]> </valueFilter> <limit value="[positiveInt]"/><!-- 0..1 Number of results --> <sort> <!-- 0..* Order of the results --> <path value="[string]"/><!-- 1..1 The name of the attribute to perform the sort --> <direction value="[code]"/><!-- 1..1 ascending | descending --> </sort></[name]></DataRequirement>
JSON Template
{
// from Element: extension
"
"
"type" : "<code>", // R! The type of the required data
"profile" : ["<canonical(StructureDefinition)>"], // The profile of the required data
// subject[x]: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device. One of these 2:
"subjectCodeableConcept" : { CodeableConcept },
"subjectReference" : { Reference(Group) },
"mustSupport" : ["<string>"], // Indicates specific structure elements that are referenced by the knowledge module
"codeFilter" : [{ // What codes are expected
"path" : "<string>", // A code-valued attribute to filter on
"searchParam" : "<string>", // A coded (token) parameter to search on
"
"valueSet" : "<canonical(ValueSet)>", // Valueset for the filter
"code" : [{ Coding }] // What code is expected
}],
"dateFilter" : [{ // What dates/date ranges are expected
"path" : "<string>", // A date-valued attribute to filter on
"searchParam" : "<string>", // A date valued parameter to search on
// value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3:
">"
" }
"valueDateTime" : "<dateTime>",
"valuePeriod" : { Period },
"valueDuration" : { Duration }
}],
"valueFilter" : [{ // What values are expected
"path" : "<string>", // An attribute to filter on
"searchParam" : "<string>", // A parameter to search on
"comparator" : "<code>", // eq | gt | lt | ge | le | sa | eb
// value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3:
"valueDateTime" : "<dateTime>",
"valuePeriod" : { Period },
"valueDuration" : { Duration }
}],
"limit" : "<positiveInt>", // Number of results
"sort" : [{ // Order of the results
"path" : "<string>", // R! The name of the attribute to perform the sort
"direction" : "<code>" // R! ascending | descending
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:DataRequirement.type [ code ]; # 1..1 The type of the required data fhir:DataRequirement.profile [ canonical(StructureDefinition) ], ... ; # 0..* The profile of the required data # DataRequirement.subject[x] : 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device. One of these 2 fhir:DataRequirement.subjectCodeableConcept [ CodeableConcept ] fhir:DataRequirement.subjectReference [ Reference(Group) ] fhir:DataRequirement.mustSupport [ string ], ... ; # 0..* Indicates specific structure elements that are referenced by the knowledge module fhir:DataRequirement.codeFilter [ # 0..* What codes are expected fhir:DataRequirement.codeFilter.path [ string ]; # 0..1 A code-valued attribute to filter on fhir:DataRequirement.codeFilter.searchParam [ string ]; # 0..1 A coded (token) parameter to search on fhir:DataRequirement.codeFilter.valueSet [ canonical(ValueSet) ]; # 0..1 Valueset for the filter fhir:DataRequirement.codeFilter.code [ Coding ], ... ; # 0..* What code is expected ], ...; fhir:DataRequirement.dateFilter [ # 0..* What dates/date ranges are expected fhir:DataRequirement.dateFilter.path [ string ]; # 0..1 A date-valued attribute to filter on fhir:DataRequirement.dateFilter.searchParam [ string ]; # 0..1 A date valued parameter to search on # DataRequirement.dateFilter.value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3 fhir:DataRequirement.dateFilter.valueDateTime [ dateTime ] fhir:DataRequirement.dateFilter.valuePeriod [ Period ] fhir:DataRequirement.dateFilter.valueDuration [ Duration ] ], ...; fhir:DataRequirement.valueFilter [ # 0..* What values are expected fhir:DataRequirement.valueFilter.path [ string ]; # 0..1 An attribute to filter on fhir:DataRequirement.valueFilter.searchParam [ string ]; # 0..1 A parameter to search on fhir:DataRequirement.valueFilter.comparator [ code ]; # 0..1 eq | gt | lt | ge | le | sa | eb # DataRequirement.valueFilter.value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3 fhir:DataRequirement.valueFilter.valueDateTime [ dateTime ] fhir:DataRequirement.valueFilter.valuePeriod [ Period ] fhir:DataRequirement.valueFilter.valueDuration [ Duration ] ], ...; fhir:DataRequirement.limit [ positiveInt ]; # 0..1 Number of results fhir:DataRequirement.sort [ # 0..* Order of the results fhir:DataRequirement.sort.path [ string ]; # 1..1 The name of the attribute to perform the sort fhir:DataRequirement.sort.direction [ code ]; # 1..1 ascending | descending ], ...; ]
Changes since Release 3
| DataRequirement | |
| DataRequirement.type |
|
| DataRequirement.subject[x] |
|
| DataRequirement.valueFilter |
|
| DataRequirement.valueFilter.path |
|
| DataRequirement.valueFilter.searchParam |
|
| DataRequirement.valueFilter.comparator |
|
| DataRequirement.valueFilter.value[x] |
|
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Describes
a
required
data
item
Elements defined in Ancestors: id , extension |
|
|
Σ | 1..1 | code |
The
type
of
the
required
data
|
|
Σ | 0..* | canonical ( StructureDefinition ) |
The
profile
of
the
required
data
|
|
Σ | 0..1 |
E.g.
Patient,
Practitioner,
RelatedPerson,
Organization,
Location,
Device
|
|
|
CodeableConcept | |||
|
Reference ( Group ) | |||
|
Σ | 0..* | string |
Indicates
specific
structure
elements
that
are
referenced
by
the
knowledge
module
|
|
Σ
|
0..* | Element |
What
codes
are
expected
+ Rule: Either a path or a searchParam must be provided, but not both |
|
Σ | 0..1 | string |
A
code-valued
attribute
to
filter
on
|
|
Σ | 0..1 | string |
A
coded
(token)
parameter
to
search
on
|
|
Σ | 0..1 | canonical ( ValueSet ) |
Valueset
for
the
filter
|
|
Σ | 0..* | Coding |
What
code
is
expected
|
|
Σ
|
0..* | Element |
What
dates/date
ranges
are
expected
+ Rule: Either a path or a searchParam must be provided, but not both |
|
Σ | 0..1 | string |
A
date-valued
attribute
to
filter
on
|
|
Σ | 0..1 | string |
A
date
valued
parameter
to
search
on
|
|
Σ | 0..1 |
The
value
of
the
filter,
as
a
Period,
DateTime,
or
Duration
value
|
|
|
dateTime | |||
|
Period | |||
|
Duration | |||
| Σ | 0..* | Element |
What
values
are
expected
|
![]() ![]() ![]() | Σ | 0..1 | string |
An
attribute
to
filter
on
|
![]() ![]() ![]() | Σ | 0..1 | string |
A
parameter
to
search
on
|
![]() ![]() ![]() | Σ | 0..1 | code |
eq
|
gt
|
lt
|
ge
|
le
|
sa
|
eb
Value Filter Comparator ( Required ) |
![]() ![]() ![]() | Σ | 0..1 |
The
value
of
the
filter,
as
a
Period,
DateTime,
or
Duration
value
| |
![]() ![]() ![]() ![]() | dateTime | |||
![]() ![]() ![]() ![]() | Period | |||
![]() ![]() ![]() ![]() | Duration | |||
|
Σ | 0..1 | positiveInt |
Number
of
results
|
|
Σ | 0..* | Element |
Order
of
the
results
|
|
Σ | 1..1 | string |
The
name
of
the
attribute
to
perform
the
sort
|
|
Σ | 1..1 | code |
ascending
|
descending
SortDirection ( Required ) |
Documentation
for
this
format
|
||||
XML Template
< xmlns="http://hl7.org/fhir"><DataRequirement xmlns="http://hl7.org/fhir"> <!-- from Element: extension --><<type value="[code]"/><!-- 1..1 The type of the required data --> <profile><!-- 0..* canonical(StructureDefinition) The profile of the required data --></profile><</subject[x]><subject[x]><!-- 0..1 CodeableConcept|Reference(Group) E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device --></subject[x]> <mustSupport value="[string]"/><!-- 0..* Indicates specific structure elements that are referenced by the knowledge module --> <codeFilter> <!-- 0..* What codes are expected --> <path value="[string]"/><!-- 0..1 A code-valued attribute to filter on --> <searchParam value="[string]"/><!-- 0..1 A coded (token) parameter to search on --> <valueSet><!-- 0..1 canonical(ValueSet) Valueset for the filter --></valueSet> <code><!-- 0..* Coding What code is expected --></code> </codeFilter> <dateFilter> <!-- 0..* What dates/date ranges are expected --> <path value="[string]"/><!-- 0..1 A date-valued attribute to filter on --> <searchParam value="[string]"/><!-- 0..1 A date valued parameter to search on --> <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]> </dateFilter> <valueFilter> <!-- 0..* What values are expected --> <path value="[string]"/><!-- 0..1 An attribute to filter on --> <searchParam value="[string]"/><!-- 0..1 A parameter to search on --> <comparator value="[code]"/><!-- 0..1 eq | gt | lt | ge | le | sa | eb --> <value[x]><!-- 0..1 dateTime|Period|Duration The value of the filter, as a Period, DateTime, or Duration value --></value[x]> </valueFilter> <limit value="[positiveInt]"/><!-- 0..1 Number of results --> <sort> <!-- 0..* Order of the results --> <path value="[string]"/><!-- 1..1 The name of the attribute to perform the sort --> <direction value="[code]"/><!-- 1..1 ascending | descending --> </sort></[name]></DataRequirement>
JSON Template
{
// from Element: extension
"
"
"type" : "<code>", // R! The type of the required data
"profile" : ["<canonical(StructureDefinition)>"], // The profile of the required data
// subject[x]: E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device. One of these 2:
"subjectCodeableConcept" : { CodeableConcept },
"subjectReference" : { Reference(Group) },
"mustSupport" : ["<string>"], // Indicates specific structure elements that are referenced by the knowledge module
"codeFilter" : [{ // What codes are expected
"path" : "<string>", // A code-valued attribute to filter on
"searchParam" : "<string>", // A coded (token) parameter to search on
"
"valueSet" : "<canonical(ValueSet)>", // Valueset for the filter
"code" : [{ Coding }] // What code is expected
}],
"dateFilter" : [{ // What dates/date ranges are expected
"path" : "<string>", // A date-valued attribute to filter on
"searchParam" : "<string>", // A date valued parameter to search on
// value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3:
">"
" }
"valueDateTime" : "<dateTime>",
"valuePeriod" : { Period },
"valueDuration" : { Duration }
}],
"valueFilter" : [{ // What values are expected
"path" : "<string>", // An attribute to filter on
"searchParam" : "<string>", // A parameter to search on
"comparator" : "<code>", // eq | gt | lt | ge | le | sa | eb
// value[x]: The value of the filter, as a Period, DateTime, or Duration value. One of these 3:
"valueDateTime" : "<dateTime>",
"valuePeriod" : { Period },
"valueDuration" : { Duration }
}],
"limit" : "<positiveInt>", // Number of results
"sort" : [{ // Order of the results
"path" : "<string>", // R! The name of the attribute to perform the sort
"direction" : "<code>" // R! ascending | descending
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:DataRequirement.type [ code ]; # 1..1 The type of the required data fhir:DataRequirement.profile [ canonical(StructureDefinition) ], ... ; # 0..* The profile of the required data # DataRequirement.subject[x] : 0..1 E.g. Patient, Practitioner, RelatedPerson, Organization, Location, Device. One of these 2 fhir:DataRequirement.subjectCodeableConcept [ CodeableConcept ] fhir:DataRequirement.subjectReference [ Reference(Group) ] fhir:DataRequirement.mustSupport [ string ], ... ; # 0..* Indicates specific structure elements that are referenced by the knowledge module fhir:DataRequirement.codeFilter [ # 0..* What codes are expected fhir:DataRequirement.codeFilter.path [ string ]; # 0..1 A code-valued attribute to filter on fhir:DataRequirement.codeFilter.searchParam [ string ]; # 0..1 A coded (token) parameter to search on fhir:DataRequirement.codeFilter.valueSet [ canonical(ValueSet) ]; # 0..1 Valueset for the filter fhir:DataRequirement.codeFilter.code [ Coding ], ... ; # 0..* What code is expected ], ...; fhir:DataRequirement.dateFilter [ # 0..* What dates/date ranges are expected fhir:DataRequirement.dateFilter.path [ string ]; # 0..1 A date-valued attribute to filter on fhir:DataRequirement.dateFilter.searchParam [ string ]; # 0..1 A date valued parameter to search on # DataRequirement.dateFilter.value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3 fhir:DataRequirement.dateFilter.valueDateTime [ dateTime ] fhir:DataRequirement.dateFilter.valuePeriod [ Period ] fhir:DataRequirement.dateFilter.valueDuration [ Duration ] ], ...; fhir:DataRequirement.valueFilter [ # 0..* What values are expected fhir:DataRequirement.valueFilter.path [ string ]; # 0..1 An attribute to filter on fhir:DataRequirement.valueFilter.searchParam [ string ]; # 0..1 A parameter to search on fhir:DataRequirement.valueFilter.comparator [ code ]; # 0..1 eq | gt | lt | ge | le | sa | eb # DataRequirement.valueFilter.value[x] : 0..1 The value of the filter, as a Period, DateTime, or Duration value. One of these 3 fhir:DataRequirement.valueFilter.valueDateTime [ dateTime ] fhir:DataRequirement.valueFilter.valuePeriod [ Period ] fhir:DataRequirement.valueFilter.valueDuration [ Duration ] ], ...; fhir:DataRequirement.limit [ positiveInt ]; # 0..1 Number of results fhir:DataRequirement.sort [ # 0..* Order of the results fhir:DataRequirement.sort.path [ string ]; # 1..1 The name of the attribute to perform the sort fhir:DataRequirement.sort.direction [ code ]; # 1..1 ascending | descending ], ...; ]
Changes since Release 3
| DataRequirement | |
| DataRequirement.type |
|
| DataRequirement.subject[x] |
|
| DataRequirement.valueFilter |
|
| DataRequirement.valueFilter.path |
|
| DataRequirement.valueFilter.searchParam |
|
| DataRequirement.valueFilter.comparator |
|
| DataRequirement.valueFilter.value[x] |
|
See the Full Difference for further information
Constraints
| id | Level | Location | Description | Expression |
drq-1
|
Rule | DataRequirement.codeFilter | Either a path or a searchParam must be provided, but not both | path.exists() xor searchParam.exists() |
drq-2
|
Rule | DataRequirement.dateFilter | Either a path or a searchParam must be provided, but not both | path.exists() xor searchParam.exists() |
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| DataRequirement.type |
All
FHIR
|
Required | FHIRTypes |
| DataRequirement.subject[x] | All Resource Types that represent participant resources | Extensible | ParticipantResourceTypes |
| DataRequirement.valueFilter.comparator |
The
|
|
|
| DataRequirement.sort.direction |
The possible sort directions, ascending or descending. |
Required | SortDirection |
A DataRequirement differs from a parameter in that it specifies the data to be provided in terms of the type of data, and specific filters on code-valued and/or date-valued attributes. Data requirements are not named because they are referenced by type within the evaluation context.
DataRequirements are used by knowledge modules to communicate the set of required data to a consumer in a way that is computable (as opposed to a set of named parameters which must be integrated by hand based on the meaning of the parameter as communicated through the documentation).
DataRequirements
are
typically
used
to
communicate
patient-dependent
information
such
as
MedicationStatements
MedicationUsages
and
Encounters,
whereas
Parameters
are
typically
used
to
communicate
patient-independent
information
such
as
configuration
values.
For example, consider the following CQL expression:
define "Total Colectomy Procedures":
[Procedure: "Total Colectomy Value Set"] P
where P.performedPeriod during "Measurement Period"
The criteria is looking for procedures matching the "Total Colectomy Value Set" that were performed during the "Measurement Period". In this case, "Measurement Period" is a parameter, referenced by name, whereas the reference to Procedure uses the name of the resource type, and so constitutes a data requirement of the criteria:
<dataRequirement>
<type value="Procedure"/>
<codeFilter>
<path value="code"/>
<valueSetString value="Total Colectomy Value Set"/>
</codeFilter>
<dateFilter>
<path value="performedPeriod"/>
<valuePeriod>
<start value="2016-01-01"/>
<end value="2016-12-31"/>
</valuePeriod>
</dateFilter>
</dataRequirement>
If a resource type has multiple date attributes, then it may be necessary to include multiple date criteria. For instance, in the example above the Procedure resource is using the performedPeriod date attribute. However, the Procedure resource also provides a performedDateTime (specific date and/or time when procedure was performed) attribute. Therefore, if the date criteria for the Procedure in the example was recorded using the performedDateTime attribute, the date criteria would be incomplete. To account for this additional date attribute, the example could be expanded as follows:
define "Total Colectomy Procedures":
[Procedure: "Total Colectomy Value Set"] P
where exists (P.performedPeriod during "Measurement Period")
or exists (P.performedDateTime during "Measurement Period")
The data requirement for the expanded criteria:
<dataRequirement>
<type value="Procedure"/>
<codeFilter>
<path value="code"/>
<valueSetString value="Total Colectomy Value Set"/>
</codeFilter>
<dateFilter>
<path value="performedPeriod"/>
<path value="performedDateTime"/>
</dateFilter>
</dataRequirement>
DataRequirement
is
used
in
the
following
places:
TriggerDefinition
,
GuidanceResponse
,
Library
,
Parameters
,
PlanDefinition
,
ResearchElementDefinition
,
StructureMap
and
Task
RequestOrchestration
See also Examples , Detailed Descriptions and Mappings .
The ParameterDefinition structure defines a parameter to a knowledge asset such as a decision support rule or quality measure.
Parameters
are
typically
used
to
communicate
patient-independent
information
such
as
configuration
values,
whereas
DataRequirements
are
typically
used
to
communicate
patient-dependent
information
such
as
MedicationStatements
MedicationUsages
and
Encounters.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Definition
of
a
parameter
to
a
module
Elements defined in Ancestors: id , extension |
|
|
Σ | 0..1 | code |
Name
used
to
access
the
parameter
value
|
|
Σ | 1..1 | code |
in
|
out
OperationParameterUse ( Required ) |
|
Σ | 0..1 | integer |
Minimum
cardinality
|
|
Σ | 0..1 | string |
Maximum
cardinality
(a
number
of
*)
|
|
Σ | 0..1 | string |
A
brief
description
of
the
parameter
|
|
Σ | 1..1 | code |
What
type
of
value
|
|
Σ | 0..1 | canonical ( StructureDefinition ) |
What
profile
the
value
is
expected
to
be
|
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
< xmlns="http://hl7.org/fhir"><ParameterDefinition xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <name value="[code]"/><!-- 0..1 Name used to access the parameter value --> <use value="[code]"/><!-- 1..1 in | out --> <min value="[integer]"/><!-- 0..1 Minimum cardinality --> <max value="[string]"/><!-- 0..1 Maximum cardinality (a number of *) --> <documentation value="[string]"/><!-- 0..1 A brief description of the parameter --><<type value="[code]"/><!-- 1..1 What type of value --> <profile><!-- 0..1 canonical(StructureDefinition) What profile the value is expected to be --></profile></[name]></ParameterDefinition>
JSON Template
{
// from Element: extension
"name" : "<code>", // Name used to access the parameter value
"use" : "<code>", // R! in | out
"min" : <integer>, // Minimum cardinality
"max" : "<string>", // Maximum cardinality (a number of *)
"documentation" : "<string>", // A brief description of the parameter
"
"
"type" : "<code>", // R! What type of value
"profile" : "<canonical(StructureDefinition)>" // What profile the value is expected to be
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ParameterDefinition.name [ code ]; # 0..1 Name used to access the parameter value fhir:ParameterDefinition.use [ code ]; # 1..1 in | out fhir:ParameterDefinition.min [ integer ]; # 0..1 Minimum cardinality fhir:ParameterDefinition.max [ string ]; # 0..1 Maximum cardinality (a number of *) fhir:ParameterDefinition.documentation [ string ]; # 0..1 A brief description of the parameter fhir:ParameterDefinition.type [ code ]; # 1..1 What type of value fhir:ParameterDefinition.profile [ canonical(StructureDefinition) ]; # 0..1 What profile the value is expected to be ]
Changes since Release 3
| ParameterDefinition | |
| ParameterDefinition.type |
|
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Definition
of
a
parameter
to
a
module
Elements defined in Ancestors: id , extension |
|
|
Σ | 0..1 | code |
Name
used
to
access
the
parameter
value
|
|
Σ | 1..1 | code |
in
|
out
OperationParameterUse ( Required ) |
|
Σ | 0..1 | integer |
Minimum
cardinality
|
|
Σ | 0..1 | string |
Maximum
cardinality
(a
number
of
*)
|
|
Σ | 0..1 | string |
A
brief
description
of
the
parameter
|
|
Σ | 1..1 | code |
What
type
of
value
|
|
Σ | 0..1 | canonical ( StructureDefinition ) |
What
profile
the
value
is
expected
to
be
|
Documentation
for
this
format
|
||||
XML Template
< xmlns="http://hl7.org/fhir"><ParameterDefinition xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <name value="[code]"/><!-- 0..1 Name used to access the parameter value --> <use value="[code]"/><!-- 1..1 in | out --> <min value="[integer]"/><!-- 0..1 Minimum cardinality --> <max value="[string]"/><!-- 0..1 Maximum cardinality (a number of *) --> <documentation value="[string]"/><!-- 0..1 A brief description of the parameter --><<type value="[code]"/><!-- 1..1 What type of value --> <profile><!-- 0..1 canonical(StructureDefinition) What profile the value is expected to be --></profile></[name]></ParameterDefinition>
JSON Template
{
// from Element: extension
"name" : "<code>", // Name used to access the parameter value
"use" : "<code>", // R! in | out
"min" : <integer>, // Minimum cardinality
"max" : "<string>", // Maximum cardinality (a number of *)
"documentation" : "<string>", // A brief description of the parameter
"
"
"type" : "<code>", // R! What type of value
"profile" : "<canonical(StructureDefinition)>" // What profile the value is expected to be
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ParameterDefinition.name [ code ]; # 0..1 Name used to access the parameter value fhir:ParameterDefinition.use [ code ]; # 1..1 in | out fhir:ParameterDefinition.min [ integer ]; # 0..1 Minimum cardinality fhir:ParameterDefinition.max [ string ]; # 0..1 Maximum cardinality (a number of *) fhir:ParameterDefinition.documentation [ string ]; # 0..1 A brief description of the parameter fhir:ParameterDefinition.type [ code ]; # 1..1 What type of value fhir:ParameterDefinition.profile [ canonical(StructureDefinition) ]; # 0..1 What profile the value is expected to be ]
Changes since Release 3
| ParameterDefinition | |
| ParameterDefinition.type |
|
See the Full Difference for further information
Constraints
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| ParameterDefinition.use |
Whether
|
Required | OperationParameterUse |
| ParameterDefinition.type |
All
FHIR
|
Required |
|
See also Examples , Detailed Descriptions and Mappings .
The
RelatedArtifact
structure
defines
resources
related
to
a
module
an
artifact
such
as
previous
and
next
versions
of
documents,
documentation,
citations,
etc.
Note
that
the
name
resource
artifact
here
is
being
used
in
a
more
general
sense
than
the
FHIR-specific
Resource.
sense;
The
related
resource
artifact
may
be
a
FHIR
resource,
or
it
may
be
another
type
of
resource,
represented
using
the
Attachment
data
type.
datatype.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Related
artifacts
for
a
knowledge
resource
Elements defined in Ancestors: id , extension |
|
|
Σ | 1..1 | code |
documentation
|
justification
|
citation
|
predecessor
|
successor
|
derived-from
|
depends-on
|
composed-of
|
part-of
|
amends
|
amended-with
|
appends
|
appended-with
|
cites
|
cited-by
|
comments-on
|
comment-in
|
contains
|
contained-in
|
corrects
|
correction-in
|
replaces
|
replaced-with
|
retracts
|
retracted-by
|
signs
|
similar-to
|
supports
|
supported-with
|
transforms
|
transformed-into
|
transformed-with
|
documents
|
specification-of
|
created-with
|
cite-as
RelatedArtifactType ( Required ) |
|
Σ |
|
|
CitationArtifactClassifier ( Example ) |
|
Σ | 0..1 | string |
|
|
Σ | 0..1 |
|
|
|
Σ | 0..1 |
|
|
|
Σ | 0..1 | Attachment |
What
document
is
being
referenced
|
|
Σ | 0..1 | canonical ( Any ) |
What
|
| Σ | 0..1 | Reference ( Any ) |
What
artifact,
if
not
a
conformance
resource
|
![]() ![]() | Σ | 0..1 | code |
draft
|
active
|
retired
|
unknown
PublicationStatus ( Required ) |
![]() ![]() | Σ | 0..1 | date |
Date
of
publication
of
the
artifact
being
referred
to
|
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
< xmlns="http://hl7.org/fhir"><RelatedArtifact xmlns="http://hl7.org/fhir"> <!-- from Element: extension --><<type value="[code]"/><!-- 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of | amends | amended-with | appends | appended-with | cites | cited-by | comments-on | comment-in | contains | contained-in | corrects | correction-in | replaces | replaced-with | retracts | retracted-by | signs | similar-to | supports | supported-with | transforms | transformed-into | transformed-with | documents | specification-of | created-with | cite-as --> <classifier><!-- 0..* CodeableConcept Additional classifiers --></classifier> <label value="[string]"/><!-- 0..1 Short label --> <display value="[string]"/><!-- 0..1 Brief description of the related artifact --> <citation value="[markdown]"/><!-- 0..1 Bibliographic citation for the artifact --><<document><!-- 0..1 Attachment What document is being referenced --></document><</resource> </[name]><resource><!-- 0..1 canonical(Any) What artifact is being referenced --></resource> <resourceReference><!-- 0..1 Reference(Any) What artifact, if not a conformance resource --></resourceReference> <publicationStatus value="[code]"/><!-- 0..1 draft | active | retired | unknown --> <publicationDate value="[date]"/><!-- 0..1 Date of publication of the artifact being referred to --> </RelatedArtifact>
JSON Template
{
// from Element: extension
"
"type" : "<code>", // R! documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of | amends | amended-with | appends | appended-with | cites | cited-by | comments-on | comment-in | contains | contained-in | corrects | correction-in | replaces | replaced-with | retracts | retracted-by | signs | similar-to | supports | supported-with | transforms | transformed-into | transformed-with | documents | specification-of | created-with | cite-as
"classifier" : [{ CodeableConcept }], // Additional classifiers
"label" : "<string>", // Short label
"display" : "<string>", // Brief description of the related artifact
"citation" : "<markdown>", // Bibliographic citation for the artifact
"
"document" : { Attachment }, // What document is being referenced
"
"resource" : "<canonical(Any)>", // What artifact is being referenced
"resourceReference" : { Reference(Any) }, // What artifact, if not a conformance resource
"publicationStatus" : "<code>", // draft | active | retired | unknown
"publicationDate" : "<date>" // Date of publication of the artifact being referred to
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extensionfhir:fhir:RelatedArtifact.type [ code ]; # 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of | amends | amended-with | appends | appended-with | cites | cited-by | comments-on | comment-in | contains | contained-in | corrects | correction-in | replaces | replaced-with | retracts | retracted-by | signs | similar-to | supports | supported-with | transforms | transformed-into | transformed-with | documents | specification-of | created-with | cite-as fhir:RelatedArtifact.classifier [ CodeableConcept ], ... ; # 0..* Additional classifiers fhir:RelatedArtifact.label [ string ]; # 0..1 Short label fhir:RelatedArtifact.display [ string ]; # 0..1 Brief description of the related artifact fhir:RelatedArtifact.citation [ markdown ]; # 0..1 Bibliographic citation for the artifactfhir:fhir:RelatedArtifact.document [ Attachment ]; # 0..1 What document is being referencedfhir:fhir:RelatedArtifact.resource [ canonical(Any) ]; # 0..1 What artifact is being referenced fhir:RelatedArtifact.resourceReference [ Reference(Any) ]; # 0..1 What artifact, if not a conformance resource fhir:RelatedArtifact.publicationStatus [ code ]; # 0..1 draft | active | retired | unknown fhir:RelatedArtifact.publicationDate [ date ]; # 0..1 Date of publication of the artifact being referred to ]
Changes since Release 3
| RelatedArtifact | |
| RelatedArtifact.classifier |
|
| RelatedArtifact.resourceReference |
|
| RelatedArtifact.publicationStatus |
|
| RelatedArtifact.publicationDate |
|
| RelatedArtifact.url |
|
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Related
artifacts
for
a
knowledge
resource
Elements defined in Ancestors: id , extension |
|
|
Σ | 1..1 | code |
documentation
|
justification
|
citation
|
predecessor
|
successor
|
derived-from
|
depends-on
|
composed-of
|
part-of
|
amends
|
amended-with
|
appends
|
appended-with
|
cites
|
cited-by
|
comments-on
|
comment-in
|
contains
|
contained-in
|
corrects
|
correction-in
|
replaces
|
replaced-with
|
retracts
|
retracted-by
|
signs
|
similar-to
|
supports
|
supported-with
|
transforms
|
transformed-into
|
transformed-with
|
documents
|
specification-of
|
created-with
|
cite-as
RelatedArtifactType ( Required ) |
|
Σ |
|
|
CitationArtifactClassifier ( Example ) |
|
Σ | 0..1 | string |
|
|
Σ | 0..1 |
|
|
|
Σ | 0..1 |
|
|
|
Σ | 0..1 | Attachment |
What
document
is
being
referenced
|
|
Σ | 0..1 | canonical ( Any ) |
What
|
| Σ | 0..1 | Reference ( Any ) |
What
artifact,
if
not
a
conformance
resource
|
![]() ![]() | Σ | 0..1 | code |
draft
|
active
|
retired
|
unknown
PublicationStatus ( Required ) |
![]() ![]() | Σ | 0..1 | date |
Date
of
publication
of
the
artifact
being
referred
to
|
Documentation
for
this
format
|
||||
XML Template
< xmlns="http://hl7.org/fhir"><RelatedArtifact xmlns="http://hl7.org/fhir"> <!-- from Element: extension --><<type value="[code]"/><!-- 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of | amends | amended-with | appends | appended-with | cites | cited-by | comments-on | comment-in | contains | contained-in | corrects | correction-in | replaces | replaced-with | retracts | retracted-by | signs | similar-to | supports | supported-with | transforms | transformed-into | transformed-with | documents | specification-of | created-with | cite-as --> <classifier><!-- 0..* CodeableConcept Additional classifiers --></classifier> <label value="[string]"/><!-- 0..1 Short label --> <display value="[string]"/><!-- 0..1 Brief description of the related artifact --> <citation value="[markdown]"/><!-- 0..1 Bibliographic citation for the artifact --><<document><!-- 0..1 Attachment What document is being referenced --></document><</resource> </[name]><resource><!-- 0..1 canonical(Any) What artifact is being referenced --></resource> <resourceReference><!-- 0..1 Reference(Any) What artifact, if not a conformance resource --></resourceReference> <publicationStatus value="[code]"/><!-- 0..1 draft | active | retired | unknown --> <publicationDate value="[date]"/><!-- 0..1 Date of publication of the artifact being referred to --> </RelatedArtifact>
JSON Template
{
// from Element: extension
"
"type" : "<code>", // R! documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of | amends | amended-with | appends | appended-with | cites | cited-by | comments-on | comment-in | contains | contained-in | corrects | correction-in | replaces | replaced-with | retracts | retracted-by | signs | similar-to | supports | supported-with | transforms | transformed-into | transformed-with | documents | specification-of | created-with | cite-as
"classifier" : [{ CodeableConcept }], // Additional classifiers
"label" : "<string>", // Short label
"display" : "<string>", // Brief description of the related artifact
"citation" : "<markdown>", // Bibliographic citation for the artifact
"
"document" : { Attachment }, // What document is being referenced
"
"resource" : "<canonical(Any)>", // What artifact is being referenced
"resourceReference" : { Reference(Any) }, // What artifact, if not a conformance resource
"publicationStatus" : "<code>", // draft | active | retired | unknown
"publicationDate" : "<date>" // Date of publication of the artifact being referred to
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extensionfhir:fhir:RelatedArtifact.type [ code ]; # 1..1 documentation | justification | citation | predecessor | successor | derived-from | depends-on | composed-of | part-of | amends | amended-with | appends | appended-with | cites | cited-by | comments-on | comment-in | contains | contained-in | corrects | correction-in | replaces | replaced-with | retracts | retracted-by | signs | similar-to | supports | supported-with | transforms | transformed-into | transformed-with | documents | specification-of | created-with | cite-as fhir:RelatedArtifact.classifier [ CodeableConcept ], ... ; # 0..* Additional classifiers fhir:RelatedArtifact.label [ string ]; # 0..1 Short label fhir:RelatedArtifact.display [ string ]; # 0..1 Brief description of the related artifact fhir:RelatedArtifact.citation [ markdown ]; # 0..1 Bibliographic citation for the artifactfhir:fhir:RelatedArtifact.document [ Attachment ]; # 0..1 What document is being referencedfhir:fhir:RelatedArtifact.resource [ canonical(Any) ]; # 0..1 What artifact is being referenced fhir:RelatedArtifact.resourceReference [ Reference(Any) ]; # 0..1 What artifact, if not a conformance resource fhir:RelatedArtifact.publicationStatus [ code ]; # 0..1 draft | active | retired | unknown fhir:RelatedArtifact.publicationDate [ date ]; # 0..1 Date of publication of the artifact being referred to ]
Changes since Release 3
| RelatedArtifact | |
| RelatedArtifact.classifier |
|
| RelatedArtifact.resourceReference |
|
| RelatedArtifact.publicationStatus |
|
| RelatedArtifact.publicationDate |
|
| RelatedArtifact.url |
|
See the Full Difference for further information
Constraints
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| RelatedArtifact.type |
The type of relationship to the related artifact. |
Required | RelatedArtifactType |
| RelatedArtifact.classifier | Citation artifact classifier | Example | CitationArtifactClassifier |
| RelatedArtifact.publicationStatus | The lifecycle status of an artifact. | Required | PublicationStatus |
The following examples illustrate the use of relatedArtifact elements to provide citations:
<relatedArtifact>
<label value="1"/>
<type value="citation"/>
<citation value="Linder, J.A., D.W. Bates, G.M. Lee, J.A. Finkelstein. 2005. _Antibiotic treatment of children with sore throat_ JAMA 294(18):2315-2322. "/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<label value="2"/>
<citation value="Infectious Diseases Society of America. 2012. _Clinical Practice Guideline for the Diagnosis and Management of Group A Streptococcal Pharyngitis: 2012 Update._ "/>
</relatedArtifact>
<relatedArtifact>
<type value="citation"/>
<label value="3"/>
<citation value="Roberts, R.R., B. Hota, I. Ahmad, et al. _Hospital and Societal Costs of Antimicrobial-Resistant Infections in a Chicago Teaching Hospital: Implications for Antibiotic Stewardship._ Clin Infect Dis. Oct 2009; 49(8):1175-84."/>
</relatedArtifact>
RelatedArtifact
is
used
in
the
following
places:
ActivityDefinition
,
ArtifactAssessment
,
ChargeItemDefinition
,
Citation
,
CodeSystem
,
Composition
,
ConceptMap
,
DeviceDefinition
,
EventDefinition
,
Evidence
,
EvidenceReport
,
EvidenceVariable
,
Library
,
Measure
,
Parameters
MetadataResource
,
NamingSystem
,
PlanDefinition
,
RequestGroup
,
ResearchDefinition
,
ResearchElementDefinition
RequestOrchestration
,
ResearchStudy
,
StructureMap
and
Task
ValueSet
The RelatedArtifact type is used in a variety of contexts, and supports flexible description of relationships between artifacts. For example, the type can be used to describe both successor and predecessor relationships. This flexibility is needed to support use cases where only one side or other of the relationship is represented in FHIR. In practice, this datatype SHALL NOT be used to create bi-directional linking between FHIR resources.
See also Examples , Detailed Descriptions and Mappings .
The
TriggerDefinition
structure
defines
when
a
knowledge
artifact
is
expected
to
be
evaluated.
The
structure
can
represent
three
main
kinds
of
triggering
events,
depending
on
the
value
of
type
:
A named event is an event identified by the implementation environment. This allows any event generated within the implementation environment to be used as a trigger, but it requires pre-coordination of the names involved with the consuming environments. HL7 v2 events are assigned the URI http://terminology.hl7.org/CodeSystem/v2-0003#[code] e.g. http://terminology.hl7.org/CodeSystem/v2-0003/A01, and reference any data change that would trigger the sending of the matching HL7 v2 version, if the application providing the FHIR API supports v2 events internally.
A scheduled event occurs on a fixed or periodic schedule.
And finally, a data event occurs in response to some data-related event in the integrated environment such as a record being added or updated. The data-of-interest for a data event is described using a DataRequirement . This allows for systems to automatically invoke based on data activity occurring within the system. A condition may also be specified to further refine the trigger
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Defines
an
expected
trigger
for
a
module
+ Rule: Either timing, or a data requirement, but not both + Rule: A condition only if there is a data requirement + Rule: A named event requires a name, a periodic event requires timing, and a data event requires data Elements defined in Ancestors: id , extension |
|
|
Σ | 1..1 | code |
named-event
|
periodic
|
data-changed
|
data-added
|
data-modified
|
data-removed
|
data-accessed
|
data-access-ended
TriggerType ( Required ) |
|
Σ | 0..1 | string |
Name
or
URI
that
identifies
the
event
|
| Σ | 0..1 | CodeableConcept |
Coded
definition
of
the
event
|
![]() ![]() | Σ | 0..1 | canonical ( SubscriptionTopic ) |
What
event
|
|
Σ | 0..1 |
Timing
of
the
event
|
|
|
Timing | |||
|
Reference ( Schedule ) | |||
|
date | |||
|
dateTime | |||
|
Σ | 0..* | DataRequirement |
Triggering
data
of
the
event
(multiple
=
'and')
|
|
Σ | 0..1 | Expression |
Whether
the
event
triggers
(boolean
expression)
|
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
< xmlns="http://hl7.org/fhir"><TriggerDefinition xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended --> <name value="[string]"/><!-- 0..1 Name or URI that identifies the event --> <code><!-- 0..1 CodeableConcept Coded definition of the event --></code> <subscriptionTopic><!-- 0..1 canonical(SubscriptionTopic) What event --></subscriptionTopic> <timing[x]><!-- 0..1 Timing|Reference(Schedule)|date|dateTime Timing of the event --></timing[x]> <data><!-- 0..* DataRequirement Triggering data of the event (multiple = 'and') --></data> <condition><!-- 0..1 Expression Whether the event triggers (boolean expression) --></condition></[name]></TriggerDefinition>
JSON Template
{
// from Element: extension
"type" : "<code>", // R! named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
"name" : "<string>", // Name or URI that identifies the event
"code" : { CodeableConcept }, // Coded definition of the event
"subscriptionTopic" : "<canonical(SubscriptionTopic)>", // What event
// timing[x]: Timing of the event. One of these 4:
"timingTiming" : { Timing },
"timingReference" : { Reference(Schedule) },
"timingDate" : "<date>",
"timingDateTime" : "<dateTime>",
"data" : [{ DataRequirement }], // Triggering data of the event (multiple = 'and')
"condition" : { Expression } // Whether the event triggers (boolean expression)
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:TriggerDefinition.type [ code ]; # 1..1 named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended fhir:TriggerDefinition.name [ string ]; # 0..1 Name or URI that identifies the event fhir:TriggerDefinition.code [ CodeableConcept ]; # 0..1 Coded definition of the event fhir:TriggerDefinition.subscriptionTopic [ canonical(SubscriptionTopic) ]; # 0..1 What event # TriggerDefinition.timing[x] : 0..1 Timing of the event. One of these 4 fhir:TriggerDefinition.timingTiming [ Timing ] fhir:TriggerDefinition.timingReference [ Reference(Schedule) ] fhir:TriggerDefinition.timingDate [ date ] fhir:TriggerDefinition.timingDateTime [ dateTime ] fhir:TriggerDefinition.data [ DataRequirement ], ... ; # 0..* Triggering data of the event (multiple = 'and') fhir:TriggerDefinition.condition [ Expression ]; # 0..1 Whether the event triggers (boolean expression) ]
Changes since Release 3
| TriggerDefinition | |
| TriggerDefinition.code |
|
| TriggerDefinition.subscriptionTopic |
|
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Defines
an
expected
trigger
for
a
module
+ Rule: Either timing, or a data requirement, but not both + Rule: A condition only if there is a data requirement + Rule: A named event requires a name, a periodic event requires timing, and a data event requires data Elements defined in Ancestors: id , extension |
|
|
Σ | 1..1 | code |
named-event
|
periodic
|
data-changed
|
data-added
|
data-modified
|
data-removed
|
data-accessed
|
data-access-ended
TriggerType ( Required ) |
|
Σ | 0..1 | string |
Name
or
URI
that
identifies
the
event
|
| Σ | 0..1 | CodeableConcept |
Coded
definition
of
the
event
|
![]() ![]() | Σ | 0..1 | canonical ( SubscriptionTopic ) |
What
event
|
|
Σ | 0..1 |
Timing
of
the
event
|
|
|
Timing | |||
|
Reference ( Schedule ) | |||
|
date | |||
|
dateTime | |||
|
Σ | 0..* | DataRequirement |
Triggering
data
of
the
event
(multiple
=
'and')
|
|
Σ | 0..1 | Expression |
Whether
the
event
triggers
(boolean
expression)
|
Documentation
for
this
format
|
||||
XML Template
< xmlns="http://hl7.org/fhir"><TriggerDefinition xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended --> <name value="[string]"/><!-- 0..1 Name or URI that identifies the event --> <code><!-- 0..1 CodeableConcept Coded definition of the event --></code> <subscriptionTopic><!-- 0..1 canonical(SubscriptionTopic) What event --></subscriptionTopic> <timing[x]><!-- 0..1 Timing|Reference(Schedule)|date|dateTime Timing of the event --></timing[x]> <data><!-- 0..* DataRequirement Triggering data of the event (multiple = 'and') --></data> <condition><!-- 0..1 Expression Whether the event triggers (boolean expression) --></condition></[name]></TriggerDefinition>
JSON Template
{
// from Element: extension
"type" : "<code>", // R! named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended
"name" : "<string>", // Name or URI that identifies the event
"code" : { CodeableConcept }, // Coded definition of the event
"subscriptionTopic" : "<canonical(SubscriptionTopic)>", // What event
// timing[x]: Timing of the event. One of these 4:
"timingTiming" : { Timing },
"timingReference" : { Reference(Schedule) },
"timingDate" : "<date>",
"timingDateTime" : "<dateTime>",
"data" : [{ DataRequirement }], // Triggering data of the event (multiple = 'and')
"condition" : { Expression } // Whether the event triggers (boolean expression)
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:TriggerDefinition.type [ code ]; # 1..1 named-event | periodic | data-changed | data-added | data-modified | data-removed | data-accessed | data-access-ended fhir:TriggerDefinition.name [ string ]; # 0..1 Name or URI that identifies the event fhir:TriggerDefinition.code [ CodeableConcept ]; # 0..1 Coded definition of the event fhir:TriggerDefinition.subscriptionTopic [ canonical(SubscriptionTopic) ]; # 0..1 What event # TriggerDefinition.timing[x] : 0..1 Timing of the event. One of these 4 fhir:TriggerDefinition.timingTiming [ Timing ] fhir:TriggerDefinition.timingReference [ Reference(Schedule) ] fhir:TriggerDefinition.timingDate [ date ] fhir:TriggerDefinition.timingDateTime [ dateTime ] fhir:TriggerDefinition.data [ DataRequirement ], ... ; # 0..* Triggering data of the event (multiple = 'and') fhir:TriggerDefinition.condition [ Expression ]; # 0..1 Whether the event triggers (boolean expression) ]
Changes since Release 3
| TriggerDefinition | |
| TriggerDefinition.code |
|
| TriggerDefinition.subscriptionTopic |
|
See the Full Difference for further information
Constraints
| id | Level | Location | Description | Expression |
trd-1
|
Rule | (base) | Either timing, or a data requirement, but not both | data.empty() or timing.empty() |
trd-2
|
Rule | (base) | A condition only if there is a data requirement | condition.exists() implies data.exists() |
trd-3
|
Rule | (base) | A named event requires a name, a periodic event requires timing, and a data event requires data | (type = 'named-event' implies name.exists()) and (type = 'periodic' implies timing.exists()) and (type.startsWith('data-') implies data.exists()) |
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| TriggerDefinition.type |
The type of trigger. |
Required | TriggerType |
TriggerDefinition
is
used
in
the
following
places:
EventDefinition
,
Parameters
,
PlanDefinition
,
StructureMap
and
Task
PlanDefinition
See also Examples , Detailed Descriptions and Mappings .
The Expression structure defines an expression that generates a value. The expression is provided in a specifed language (by mime type)
The context of use of the expression must specify the context in which the expression is evaluated, and how the result of the expression is used.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
An
expression
that
can
be
used
to
generate
a
value
+ Rule: An expression or a reference must be provided Elements defined in Ancestors: id , extension |
|
|
Σ | 0..1 | string |
Natural
language
description
of
the
condition
|
|
Σ | 0..1 | id |
Short
name
assigned
to
expression
for
reuse
|
|
Σ |
|
code |
text/cql
|
text/fhirpath
|
application/x-fhir-query
|
)
|
|
Σ | 0..1 | string |
Expression
in
specified
language
|
|
Σ | 0..1 | uri |
Where
the
expression
is
found
|
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
<Expression xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <description value="[string]"/><!-- 0..1 Natural language description of the condition --> <name value="[id]"/><!-- 0..1 Short name assigned to expression for reuse --><<language value="[code]"/><!-- 0..1 text/cql | text/fhirpath | application/x-fhir-query | etc. --> <expression value="[string]"/><!-- 0..1 Expression in specified language --> <reference value="[uri]"/><!-- 0..1 Where the expression is found --> </Expression>
JSON Template
{
// from Element: extension
"description" : "<string>", // Natural language description of the condition
"name" : "<id>", // Short name assigned to expression for reuse
"
"language" : "<code>", // text/cql | text/fhirpath | application/x-fhir-query | etc.
"expression" : "<string>", // Expression in specified language
"reference" : "<uri>" // Where the expression is found
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:Expression.description [ string ]; # 0..1 Natural language description of the condition fhir:Expression.name [ id ]; # 0..1 Short name assigned to expression for reusefhir:fhir:Expression.language [ code ]; # 0..1 text/cql | text/fhirpath | application/x-fhir-query | etc. fhir:Expression.expression [ string ]; # 0..1 Expression in specified language fhir:Expression.reference [ uri ]; # 0..1 Where the expression is found ]
Changes since Release 3
| Expression | |
| Expression.language |
|
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
An
expression
that
can
be
used
to
generate
a
value
+ Rule: An expression or a reference must be provided Elements defined in Ancestors: id , extension |
|
|
Σ | 0..1 | string |
Natural
language
description
of
the
condition
|
|
Σ | 0..1 | id |
Short
name
assigned
to
expression
for
reuse
|
|
Σ |
|
code |
text/cql
|
text/fhirpath
|
application/x-fhir-query
|
)
|
|
Σ | 0..1 | string |
Expression
in
specified
language
|
|
Σ | 0..1 | uri |
Where
the
expression
is
found
|
Documentation
for
this
format
|
||||
XML Template
<Expression xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <description value="[string]"/><!-- 0..1 Natural language description of the condition --> <name value="[id]"/><!-- 0..1 Short name assigned to expression for reuse --><<language value="[code]"/><!-- 0..1 text/cql | text/fhirpath | application/x-fhir-query | etc. --> <expression value="[string]"/><!-- 0..1 Expression in specified language --> <reference value="[uri]"/><!-- 0..1 Where the expression is found --> </Expression>
JSON Template
{
// from Element: extension
"description" : "<string>", // Natural language description of the condition
"name" : "<id>", // Short name assigned to expression for reuse
"
"language" : "<code>", // text/cql | text/fhirpath | application/x-fhir-query | etc.
"expression" : "<string>", // Expression in specified language
"reference" : "<uri>" // Where the expression is found
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:Expression.description [ string ]; # 0..1 Natural language description of the condition fhir:Expression.name [ id ]; # 0..1 Short name assigned to expression for reusefhir:fhir:Expression.language [ code ]; # 0..1 text/cql | text/fhirpath | application/x-fhir-query | etc. fhir:Expression.expression [ string ]; # 0..1 Expression in specified language fhir:Expression.reference [ uri ]; # 0..1 Where the expression is found ]
Changes since Release 3
| Expression | |
| Expression.language |
|
See the Full Difference for further information
Constraints
| id | Level | Location | Description | Expression |
exp-1
|
Rule | (base) | An expression or a reference must be provided | expression.exists() or reference.exists() |
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| Expression.language |
The media type of the expression language. |
Extensible
,
but
limited
to
http://hl7.org/fhir/ValueSet/mimetypes
|
ExpressionLanguage |
Expression
is
used
in
the
following
places:
TriggerDefinition
,
ActivityDefinition
,
ChargeItemDefinition
,
Consent
,
EvidenceVariable
,
Measure
,
Parameters
Permission
,
PlanDefinition
,
RequestGroup
,
ResearchElementDefinition
,
StructureMap
and
Task
RequestOrchestration
See also Examples , Detailed Descriptions and Mappings .
The UsageContext structure defines the context of use for a module.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Describes
the
context
of
use
for
a
conformance
or
knowledge
resource
Elements defined in Ancestors: id , extension |
|
|
Σ | 1..1 | Coding |
Type
of
context
being
specified
UsageContextType ( Extensible ) |
|
Σ | 1..1 |
Value
that
defines
the
context
ConformanceUseContext ( Example ) |
|
|
CodeableConcept | |||
|
Quantity | |||
|
Range | |||
|
Reference ( PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization ) | |||
Documentation
for
this
format
|
||||
UML Diagram ( Legend )
XML Template
< xmlns="http://hl7.org/fhir"><UsageContext xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <code><!-- 1..1 Coding Type of context being specified --></code> <value[x]><!-- 1..1 CodeableConcept|Quantity|Range|Reference(Group| HealthcareService|InsurancePlan|Location|Organization|PlanDefinition| ResearchStudy) Value that defines the context --></value[x]></[name]></UsageContext>
JSON Template
{
// from Element: extension
"code" : { Coding }, // R! Type of context being specified
// value[x]: Value that defines the context. One of these 4:
" }
" }
" }
"valueCodeableConcept" : { CodeableConcept },
"valueQuantity" : { Quantity },
"valueRange" : { Range },
"valueReference" : { Reference(Group|HealthcareService|InsurancePlan|Location|
Organization|PlanDefinition|ResearchStudy) }
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:UsageContext.code [ Coding ]; # 1..1 Type of context being specified # UsageContext.value[x] : 1..1 Value that defines the context. One of these 4 fhir:UsageContext.valueCodeableConcept [ CodeableConcept ] fhir:UsageContext.valueQuantity [ Quantity ] fhir:UsageContext.valueRange [ Range ] fhir:UsageContext.valueReference [ Reference(Group|HealthcareService|InsurancePlan|Location|Organization|PlanDefinition| ResearchStudy) ] ]
Changes since Release 3
| UsageContext |
|
See the Full Difference for further information
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
|
|---|---|---|---|---|
|
Σ TU | Element |
Describes
the
context
of
use
for
a
conformance
or
knowledge
resource
Elements defined in Ancestors: id , extension |
|
|
Σ | 1..1 | Coding |
Type
of
context
being
specified
UsageContextType ( Extensible ) |
|
Σ | 1..1 |
Value
that
defines
the
context
ConformanceUseContext ( Example ) |
|
|
CodeableConcept | |||
|
Quantity | |||
|
Range | |||
|
Reference ( PlanDefinition | ResearchStudy | InsurancePlan | HealthcareService | Group | Location | Organization ) | |||
Documentation
for
this
format
|
||||
XML Template
< xmlns="http://hl7.org/fhir"><UsageContext xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <code><!-- 1..1 Coding Type of context being specified --></code> <value[x]><!-- 1..1 CodeableConcept|Quantity|Range|Reference(Group| HealthcareService|InsurancePlan|Location|Organization|PlanDefinition| ResearchStudy) Value that defines the context --></value[x]></[name]></UsageContext>
JSON Template
{
// from Element: extension
"code" : { Coding }, // R! Type of context being specified
// value[x]: Value that defines the context. One of these 4:
" }
" }
" }
"valueCodeableConcept" : { CodeableConcept },
"valueQuantity" : { Quantity },
"valueRange" : { Range },
"valueReference" : { Reference(Group|HealthcareService|InsurancePlan|Location|
Organization|PlanDefinition|ResearchStudy) }
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:UsageContext.code [ Coding ]; # 1..1 Type of context being specified # UsageContext.value[x] : 1..1 Value that defines the context. One of these 4 fhir:UsageContext.valueCodeableConcept [ CodeableConcept ] fhir:UsageContext.valueQuantity [ Quantity ] fhir:UsageContext.valueRange [ Range ] fhir:UsageContext.valueReference [ Reference(Group|HealthcareService|InsurancePlan|Location|Organization|PlanDefinition| ResearchStudy) ] ]
Constraints
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| UsageContext.code |
A code that specifies a type of context being specified by a usage context. |
Extensible | UsageContextType |
| UsageContext.value[x] |
This
value
|
Example | Context of Use ValueSet |
UsageContext
is
used
in
the
following
places:
ActivityDefinition
,
ActorDefinition
,
CanonicalResource
,
CapabilityStatement
,
ChargeItemDefinition
,
Citation
,
CodeSystem
,
CompartmentDefinition
,
Composition
,
ConceptMap
,
ConditionDefinition
,
DeviceDefinition
,
EventDefinition
,
Evidence
,
EvidenceReport
,
EvidenceVariable
,
ExampleScenario
,
GraphDefinition
,
ImplementationGuide
,
Library
,
Measure
,
MessageDefinition
,
NamingSystem
,
ObservationDefinition
,
OperationDefinition
,
Parameters
,
PlanDefinition
,
Questionnaire
,
ResearchDefinition
,
ResearchElementDefinition
Requirements
,
SearchParameter
,
SpecimenDefinition
,
StructureDefinition
,
StructureMap
,
SubscriptionTopic
,
Task
,
TerminologyCapabilities
,
TestScript
and
ValueSet
See also Examples , Detailed Descriptions and Mappings .
The ExtendedContactDetail structure defines extended contact details for a named, or unnamed individual/purpose.
These
are
extensively
used
in
provider
directory
resources
where
contact
information
is
often
very
rich
in
nature,
and
requires
additional
metadata
around
their
usage.
This
datatype
permits
the
context
of
UsageContext
the
contact
informations
use
to
be
provided,
and
groups
them
together
with
other
important
metadata.
Not
all
properties
are
expected
to
be
present
in
different
contexts
all
instances,
and
only
the
ones
that
apply.
e.g.
A
website
contact
will
only
have
the
telecom
included,
but
might
also
include
a
purpose
and
possibly
a
period
if
required.
Whereas
an
accounts
contact
detail
could
include
their
name,
postal
address
and
telephone
number
(and
possibly
Organization
if
it
was
an
outsourced
capability)
The
period
provides
the
general
start
and
end
of
the
contact's
applicability
for
usage.
This
is
not
intended
to
store
a
history
of
usages
over
time,
but
a
convenient
way
to
record
upcoming
relevant
changes
to
the
content
when
it
is
being
published.
This
permits
the
a
contact
to
be
marked
as
becoming
available
from
X,
or
is
expected
to
no
longer
be
available
from
Y.
An
extension
may
be
used
to
mark
a
contact's
general
availability
times
(9am
-
5pm)
and
also
exceptions
where
the
contact
is
not
available
(e.g.
Public
holidays)
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
![]() |
|---|---|---|---|---|
![]() | Σ TU | Element |
Contact
information
Elements defined in Ancestors: id , extension | |
![]() ![]() | Σ | 0..1 | CodeableConcept |
The
type
of
contact
Contact entity type
(
Preferred
)
|
![]() ![]() | Σ | 0..* | HumanName |
Name
of
an
individual
to
contact
|
![]() ![]() | Σ | 0..* | ContactPoint |
Contact
details
(e.g.phone/fax/url)
|
![]() ![]() | Σ | 0..1 | Address |
Address
for
the
contact
|
![]() ![]() | Σ | 0..1 | Reference ( Organization ) |
This
contact
detail
is
handled/monitored
by
a
specific
organization
|
![]() ![]() | Σ | 0..1 | Period |
Period
that
this
contact
was
valid
for
usage
|
Documentation
for
this
format
| ||||
UML Diagram ( Legend )
XML Template
<ExtendedContactDetail xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <purpose><!-- 0..1 CodeableConcept The type of contact--></purpose> <name><!-- 0..* HumanName Name of an individual to contact --></name> <telecom><!-- 0..* ContactPoint Contact details (e.g.phone/fax/url) --></telecom> <address><!-- 0..1 Address Address for the contact --></address> <organization><!-- 0..1 Reference(Organization) This contact detail is handled/monitored by a specific organization --></organization> <period><!-- 0..1 Period Period that this contact was valid for usage --></period> </ExtendedContactDetail>
JSON Template
{
// from Element: extension
"purpose" : { CodeableConcept }, // The type of contact
"name" : [{ HumanName }], // Name of an individual to contact
"telecom" : [{ ContactPoint }], // Contact details (e.g.phone/fax/url)
"address" : { Address }, // Address for the contact
"organization" : { Reference(Organization) }, // This contact detail is handled/monitored by a specific organization
"period" : { Period } // Period that this contact was valid for usage
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ExtendedContactDetail.purpose [ CodeableConcept ]; # 0..1 The type of contact fhir:ExtendedContactDetail.name [ HumanName ], ... ; # 0..* Name of an individual to contact fhir:ExtendedContactDetail.telecom [ ContactPoint ], ... ; # 0..* Contact details (e.g.phone/fax/url) fhir:ExtendedContactDetail.address [ Address ]; # 0..1 Address for the contact fhir:ExtendedContactDetail.organization [ Reference(Organization) ]; # 0..1 This contact detail is handled/monitored by a specific organization fhir:ExtendedContactDetail.period [ Period ]; # 0..1 Period that this contact was valid for usage ]
Changes since Release 3
This complex-type did not exist in Release 3
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
![]() |
|---|---|---|---|---|
![]() | Σ TU | Element |
Contact
information
Elements defined in Ancestors: id , extension | |
![]() ![]() | Σ | 0..1 | CodeableConcept |
The
type
of
contact
Contact entity type
(
Preferred
)
|
![]() ![]() | Σ | 0..* | HumanName |
Name
of
an
individual
to
contact
|
![]() ![]() | Σ | 0..* | ContactPoint |
Contact
details
(e.g.phone/fax/url)
|
![]() ![]() | Σ | 0..1 | Address |
Address
for
the
contact
|
![]() ![]() | Σ | 0..1 | Reference ( Organization ) |
This
contact
detail
is
handled/monitored
by
a
specific
organization
|
![]() ![]() | Σ | 0..1 | Period |
Period
that
this
contact
was
valid
for
usage
|
Documentation
for
this
format
| ||||
UML Diagram ( Legend )
XML Template
<ExtendedContactDetail xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <purpose><!-- 0..1 CodeableConcept The type of contact--></purpose> <name><!-- 0..* HumanName Name of an individual to contact --></name> <telecom><!-- 0..* ContactPoint Contact details (e.g.phone/fax/url) --></telecom> <address><!-- 0..1 Address Address for the contact --></address> <organization><!-- 0..1 Reference(Organization) This contact detail is handled/monitored by a specific organization --></organization> <period><!-- 0..1 Period Period that this contact was valid for usage --></period> </ExtendedContactDetail>
JSON Template
{
// from Element: extension
"purpose" : { CodeableConcept }, // The type of contact
"name" : [{ HumanName }], // Name of an individual to contact
"telecom" : [{ ContactPoint }], // Contact details (e.g.phone/fax/url)
"address" : { Address }, // Address for the contact
"organization" : { Reference(Organization) }, // This contact detail is handled/monitored by a specific organization
"period" : { Period } // Period that this contact was valid for usage
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:ExtendedContactDetail.purpose [ CodeableConcept ]; # 0..1 The type of contact fhir:ExtendedContactDetail.name [ HumanName ], ... ; # 0..* Name of an individual to contact fhir:ExtendedContactDetail.telecom [ ContactPoint ], ... ; # 0..* Contact details (e.g.phone/fax/url) fhir:ExtendedContactDetail.address [ Address ]; # 0..1 Address for the contact fhir:ExtendedContactDetail.organization [ Reference(Organization) ]; # 0..1 This contact detail is handled/monitored by a specific organization fhir:ExtendedContactDetail.period [ Period ]; # 0..1 Period that this contact was valid for usage ]
Constraints
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| ExtendedContactDetail.purpose | This example value set defines a set of codes that can be used to indicate the purpose for which you would contact a contact party. | Preferred |
ContactEntityType
![]() |
ExtendedContactDetail is used in the following places: VirtualServiceDetail , HealthcareService , InsurancePlan , Location , Organization , OrganizationAffiliation and PractitionerRole
See also Examples , Detailed Descriptions and Mappings .
The
VirtualServiceDetail
structure
defines
details
of
a
virtual
communication
capability,
such
as
a
web
conference
call.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
![]() |
|---|---|---|---|---|
![]() | Σ TU | Element |
Virtual
Service
Contact
Details
Elements defined in Ancestors: id , extension | |
![]() ![]() | Σ | 0..1 | Coding |
Channel
Type
VirtualServiceType ( Example ) |
![]() ![]() | Σ | 0..1 |
Contact
address/number
| |
![]() ![]() ![]() | url | |||
![]() ![]() ![]() | string | |||
![]() ![]() ![]() | ContactPoint | |||
![]() ![]() ![]() | ExtendedContactDetail | |||
![]() ![]() | Σ | 0..* | url |
Address
to
see
alternative
connection
details
|
![]() ![]() | Σ | 0..1 | positiveInt |
Maximum
number
of
participants
supported
by
the
virtual
service
|
![]() ![]() | Σ | 0..1 | string |
Session
Key
required
by
the
virtual
service
|
Documentation
for
this
format
| ||||
UML Diagram ( Legend )
XML Template
<VirtualServiceDetail xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <channelType><!-- 0..1 Coding Channel Type --></channelType> <address[x]><!-- 0..1 url|string|ContactPoint|ExtendedContactDetail Contact address/number --></address[x]> <additionalInfo value="[url]"/><!-- 0..* Address to see alternative connection details --> <maxParticipants value="[positiveInt]"/><!-- 0..1 Maximum number of participants supported by the virtual service --> <sessionKey value="[string]"/><!-- 0..1 Session Key required by the virtual service --> </VirtualServiceDetail>
JSON Template
{
// from Element: extension
"channelType" : { Coding }, // Channel Type
// address[x]: Contact address/number. One of these 4:
"addressUrl" : "<url>",
"addressString" : "<string>",
"addressContactPoint" : { ContactPoint },
"addressExtendedContactDetail" : { ExtendedContactDetail },
"additionalInfo" : ["<url>"], // Address to see alternative connection details
"maxParticipants" : "<positiveInt>", // Maximum number of participants supported by the virtual service
"sessionKey" : "<string>" // Session Key required by the virtual service
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:VirtualServiceDetail.channelType [ Coding ]; # 0..1 Channel Type # VirtualServiceDetail.address[x] : 0..1 Contact address/number. One of these 4 fhir:VirtualServiceDetail.addressUrl [ url ] fhir:VirtualServiceDetail.addressString [ string ] fhir:VirtualServiceDetail.addressContactPoint [ ContactPoint ] fhir:VirtualServiceDetail.addressExtendedContactDetail [ ExtendedContactDetail ] fhir:VirtualServiceDetail.additionalInfo [ url ], ... ; # 0..* Address to see alternative connection details fhir:VirtualServiceDetail.maxParticipants [ positiveInt ]; # 0..1 Maximum number of participants supported by the virtual service fhir:VirtualServiceDetail.sessionKey [ string ]; # 0..1 Session Key required by the virtual service ]
Changes since Release 3
This complex-type did not exist in Release 3
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
![]() |
|---|---|---|---|---|
![]() | Σ TU | Element |
Virtual
Service
Contact
Details
Elements defined in Ancestors: id , extension | |
![]() ![]() | Σ | 0..1 | Coding |
Channel
Type
VirtualServiceType ( Example ) |
![]() ![]() | Σ | 0..1 |
Contact
address/number
| |
![]() ![]() ![]() | url | |||
![]() ![]() ![]() | string | |||
![]() ![]() ![]() | ContactPoint | |||
![]() ![]() ![]() | ExtendedContactDetail | |||
![]() ![]() | Σ | 0..* | url |
Address
to
see
alternative
connection
details
|
![]() ![]() | Σ | 0..1 | positiveInt |
Maximum
number
of
participants
supported
by
the
virtual
service
|
![]() ![]() | Σ | 0..1 | string |
Session
Key
required
by
the
virtual
service
|
Documentation
for
this
format
| ||||
UML Diagram ( Legend )
XML Template
<VirtualServiceDetail xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <channelType><!-- 0..1 Coding Channel Type --></channelType> <address[x]><!-- 0..1 url|string|ContactPoint|ExtendedContactDetail Contact address/number --></address[x]> <additionalInfo value="[url]"/><!-- 0..* Address to see alternative connection details --> <maxParticipants value="[positiveInt]"/><!-- 0..1 Maximum number of participants supported by the virtual service --> <sessionKey value="[string]"/><!-- 0..1 Session Key required by the virtual service --> </VirtualServiceDetail>
JSON Template
{
// from Element: extension
"channelType" : { Coding }, // Channel Type
// address[x]: Contact address/number. One of these 4:
"addressUrl" : "<url>",
"addressString" : "<string>",
"addressContactPoint" : { ContactPoint },
"addressExtendedContactDetail" : { ExtendedContactDetail },
"additionalInfo" : ["<url>"], // Address to see alternative connection details
"maxParticipants" : "<positiveInt>", // Maximum number of participants supported by the virtual service
"sessionKey" : "<string>" // Session Key required by the virtual service
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:VirtualServiceDetail.channelType [ Coding ]; # 0..1 Channel Type # VirtualServiceDetail.address[x] : 0..1 Contact address/number. One of these 4 fhir:VirtualServiceDetail.addressUrl [ url ] fhir:VirtualServiceDetail.addressString [ string ] fhir:VirtualServiceDetail.addressContactPoint [ ContactPoint ] fhir:VirtualServiceDetail.addressExtendedContactDetail [ ExtendedContactDetail ] fhir:VirtualServiceDetail.additionalInfo [ url ], ... ; # 0..* Address to see alternative connection details fhir:VirtualServiceDetail.maxParticipants [ positiveInt ]; # 0..1 Maximum number of participants supported by the virtual service fhir:VirtualServiceDetail.sessionKey [ string ]; # 0..1 Session Key required by the virtual service ]
Constraints
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| VirtualServiceDetail.channelType | Example codes for possible virtual service connection types. | Example | VirtualServiceType |
VirtualServiceDetail is used in the following places: Appointment , Encounter and Location
See also Examples , Detailed Descriptions and Mappings .
The Availability structure defines a pattern of availability data typically used in directory resources.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
![]() |
|---|---|---|---|---|
![]() | Σ TU | Element |
Availability
data
for
an
{item}
Elements defined in Ancestors: id , extension | |
![]() ![]() | Σ C | 0..* | Element |
Times
the
{item}
is
available
+ Rule: Cannot include start/end times when selecting all day availability. |
![]() ![]() ![]() | Σ | 0..* | code |
mon
|
tue
|
wed
|
thu
|
fri
|
sat
|
sun
DaysOfWeek ( Required ) |
![]() ![]() ![]() | Σ | 0..1 | boolean |
Always
available?
i.e.
24
hour
service
|
![]() ![]() ![]() | Σ | 0..1 | time |
Opening
time
of
day
(ignored
if
allDay
=
true)
|
![]() ![]() ![]() | Σ | 0..1 | time |
Closing
time
of
day
(ignored
if
allDay
=
true)
|
![]() ![]() | Σ | 0..* | Element |
Not
available
during
this
time
due
to
provided
reason
|
![]() ![]() ![]() | Σ | 0..1 | string |
Reason
presented
to
the
user
explaining
why
time
not
available
|
![]() ![]() ![]() | Σ | 0..1 | Period |
Service
not
available
during
this
period
|
Documentation
for
this
format
| ||||
UML Diagram ( Legend )
XML Template
<Availability xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <availableTime> <!-- 0..* Times the {item} is available --> <daysOfWeek value="[code]"/><!-- 0..* mon | tue | wed | thu | fri | sat | sun --> <allDay value="[boolean]"/><!-- 0..1 Always available? i.e. 24 hour service --> <availableStartTime value="[time]"/><!-- 0..1 Opening time of day (ignored if allDay = true) --> <availableEndTime value="[time]"/><!-- 0..1 Closing time of day (ignored if allDay = true) --> </availableTime> <notAvailableTime> <!-- 0..* Not available during this time due to provided reason --> <description value="[string]"/><!-- 0..1 Reason presented to the user explaining why time not available --> <during><!-- 0..1 Period Service not available during this period --></during> </notAvailableTime> </Availability>
JSON Template
{
// from Element: extension
"availableTime" : [{ // Times the {item} is available
"daysOfWeek" : ["<code>"], // mon | tue | wed | thu | fri | sat | sun
"allDay" : <boolean>, // Always available? i.e. 24 hour service
"availableStartTime" : "<time>", // Opening time of day (ignored if allDay = true)
"availableEndTime" : "<time>" // Closing time of day (ignored if allDay = true)
}],
"notAvailableTime" : [{ // Not available during this time due to provided reason
"description" : "<string>", // Reason presented to the user explaining why time not available
"during" : { Period } // Service not available during this period
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:Availability.availableTime [ # 0..* Times the {item} is available fhir:Availability.availableTime.daysOfWeek [ code ], ... ; # 0..* mon | tue | wed | thu | fri | sat | sun fhir:Availability.availableTime.allDay [ boolean ]; # 0..1 Always available? i.e. 24 hour service fhir:Availability.availableTime.availableStartTime [ time ]; # 0..1 Opening time of day (ignored if allDay = true) fhir:Availability.availableTime.availableEndTime [ time ]; # 0..1 Closing time of day (ignored if allDay = true) ], ...; fhir:Availability.notAvailableTime [ # 0..* Not available during this time due to provided reason fhir:Availability.notAvailableTime.description [ string ]; # 0..1 Reason presented to the user explaining why time not available fhir:Availability.notAvailableTime.during [ Period ]; # 0..1 Service not available during this period ], ...; ]
Changes since Release 3
This complex-type did not exist in Release 3
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
![]() |
|---|---|---|---|---|
![]() | Σ TU | Element |
Availability
data
for
an
{item}
Elements defined in Ancestors: id , extension | |
![]() ![]() | Σ C | 0..* | Element |
Times
the
{item}
is
available
+ Rule: Cannot include start/end times when selecting all day availability. |
![]() ![]() ![]() | Σ | 0..* | code |
mon
|
tue
|
wed
|
thu
|
fri
|
sat
|
sun
DaysOfWeek ( Required ) |
![]() ![]() ![]() | Σ | 0..1 | boolean |
Always
available?
i.e.
24
hour
service
|
![]() ![]() ![]() | Σ | 0..1 | time |
Opening
time
of
day
(ignored
if
allDay
=
true)
|
![]() ![]() ![]() | Σ | 0..1 | time |
Closing
time
of
day
(ignored
if
allDay
=
true)
|
![]() ![]() | Σ | 0..* | Element |
Not
available
during
this
time
due
to
provided
reason
|
![]() ![]() ![]() | Σ | 0..1 | string |
Reason
presented
to
the
user
explaining
why
time
not
available
|
![]() ![]() ![]() | Σ | 0..1 | Period |
Service
not
available
during
this
period
|
Documentation
for
this
format
| ||||
UML Diagram ( Legend )
XML Template
<Availability xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <availableTime> <!-- 0..* Times the {item} is available --> <daysOfWeek value="[code]"/><!-- 0..* mon | tue | wed | thu | fri | sat | sun --> <allDay value="[boolean]"/><!-- 0..1 Always available? i.e. 24 hour service --> <availableStartTime value="[time]"/><!-- 0..1 Opening time of day (ignored if allDay = true) --> <availableEndTime value="[time]"/><!-- 0..1 Closing time of day (ignored if allDay = true) --> </availableTime> <notAvailableTime> <!-- 0..* Not available during this time due to provided reason --> <description value="[string]"/><!-- 0..1 Reason presented to the user explaining why time not available --> <during><!-- 0..1 Period Service not available during this period --></during> </notAvailableTime> </Availability>
JSON Template
{
// from Element: extension
"availableTime" : [{ // Times the {item} is available
"daysOfWeek" : ["<code>"], // mon | tue | wed | thu | fri | sat | sun
"allDay" : <boolean>, // Always available? i.e. 24 hour service
"availableStartTime" : "<time>", // Opening time of day (ignored if allDay = true)
"availableEndTime" : "<time>" // Closing time of day (ignored if allDay = true)
}],
"notAvailableTime" : [{ // Not available during this time due to provided reason
"description" : "<string>", // Reason presented to the user explaining why time not available
"during" : { Period } // Service not available during this period
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:Availability.availableTime [ # 0..* Times the {item} is available fhir:Availability.availableTime.daysOfWeek [ code ], ... ; # 0..* mon | tue | wed | thu | fri | sat | sun fhir:Availability.availableTime.allDay [ boolean ]; # 0..1 Always available? i.e. 24 hour service fhir:Availability.availableTime.availableStartTime [ time ]; # 0..1 Opening time of day (ignored if allDay = true) fhir:Availability.availableTime.availableEndTime [ time ]; # 0..1 Closing time of day (ignored if allDay = true) ], ...; fhir:Availability.notAvailableTime [ # 0..* Not available during this time due to provided reason fhir:Availability.notAvailableTime.description [ string ]; # 0..1 Reason presented to the user explaining why time not available fhir:Availability.notAvailableTime.during [ Period ]; # 0..1 Service not available during this period ], ...; ]
Constraints
| id | Level | Location | Description | Expression |
av-1
| Rule | Availability.availableTime | Cannot include start/end times when selecting all day availability. | allDay.exists().not() or (allDay implies availableStartTime.exists().not() and availableEndTime.exists().not()) |
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| Availability.availableTime.daysOfWeek | The days of the week. | Required | DaysOfWeek |
Availability is used in the following places: HealthcareService , Location and PractitionerRole
See also Examples , Detailed Descriptions and Mappings .
The MonetaryComponent structure defines a the set of properties across the financial resources.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
![]() |
|---|---|---|---|---|
![]() | Σ TU | Element |
Availability
data
for
an
{item}
Elements defined in Ancestors: id , extension | |
![]() ![]() | Σ | 1..1 | code |
base
|
surcharge
|
deduction
|
discount
|
tax
|
informational
PriceComponentType ( Required ) |
![]() ![]() | Σ | 0..1 | CodeableConcept |
Codes
may
be
used
to
differentiate
between
kinds
of
taxes,
surcharges,
discounts
etc.
|
![]() ![]() | Σ | 0..1 | decimal |
Factor
used
for
calculating
this
component
|
![]() ![]() | Σ | 0..1 | Money |
Explicit
value
amount
to
be
used
|
Documentation
for
this
format
| ||||
UML Diagram ( Legend )
XML Template
<MonetaryComponent xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 base | surcharge | deduction | discount | tax | informational --> <code><!-- 0..1 CodeableConcept Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc. --></code> <factor value="[decimal]"/><!-- 0..1 Factor used for calculating this component --> <amount><!-- 0..1 Money Explicit value amount to be used --></amount> </MonetaryComponent>
JSON Template
{
// from Element: extension
"type" : "<code>", // R! base | surcharge | deduction | discount | tax | informational
"code" : { CodeableConcept }, // Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.
"factor" : <decimal>, // Factor used for calculating this component
"amount" : { Money } // Explicit value amount to be used
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:MonetaryComponent.type [ code ]; # 1..1 base | surcharge | deduction | discount | tax | informational fhir:MonetaryComponent.code [ CodeableConcept ]; # 0..1 Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc. fhir:MonetaryComponent.factor [ decimal ]; # 0..1 Factor used for calculating this component fhir:MonetaryComponent.amount [ Money ]; # 0..1 Explicit value amount to be used ]
Changes since Release 3
This complex-type did not exist in Release 3
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
![]() |
|---|---|---|---|---|
![]() | Σ TU | Element |
Availability
data
for
an
{item}
Elements defined in Ancestors: id , extension | |
![]() ![]() | Σ | 1..1 | code |
base
|
surcharge
|
deduction
|
discount
|
tax
|
informational
PriceComponentType ( Required ) |
![]() ![]() | Σ | 0..1 | CodeableConcept |
Codes
may
be
used
to
differentiate
between
kinds
of
taxes,
surcharges,
discounts
etc.
|
![]() ![]() | Σ | 0..1 | decimal |
Factor
used
for
calculating
this
component
|
![]() ![]() | Σ | 0..1 | Money |
Explicit
value
amount
to
be
used
|
Documentation
for
this
format
| ||||
UML Diagram ( Legend )
XML Template
<MonetaryComponent xmlns="http://hl7.org/fhir"> <!-- from Element: extension --> <type value="[code]"/><!-- 1..1 base | surcharge | deduction | discount | tax | informational --> <code><!-- 0..1 CodeableConcept Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc. --></code> <factor value="[decimal]"/><!-- 0..1 Factor used for calculating this component --> <amount><!-- 0..1 Money Explicit value amount to be used --></amount> </MonetaryComponent>
JSON Template
{
// from Element: extension
"type" : "<code>", // R! base | surcharge | deduction | discount | tax | informational
"code" : { CodeableConcept }, // Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc.
"factor" : <decimal>, // Factor used for calculating this component
"amount" : { Money } // Explicit value amount to be used
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ # from Element: Element.extension fhir:MonetaryComponent.type [ code ]; # 1..1 base | surcharge | deduction | discount | tax | informational fhir:MonetaryComponent.code [ CodeableConcept ]; # 0..1 Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc. fhir:MonetaryComponent.factor [ decimal ]; # 0..1 Factor used for calculating this component fhir:MonetaryComponent.amount [ Money ]; # 0..1 Explicit value amount to be used ]
Constraints
Terminology Bindings
| Path | Definition | Type | Reference |
|---|---|---|---|
| MonetaryComponent.type | Codes indicating the kind of the price component. | Required | PriceComponentType |
| MonetaryComponent.code | Codes may be used to differentiate between kinds of taxes, surcharges, discounts etc. | Unknown | No details provided yet |
MonetaryComponent is used in the following places: ChargeItem , ChargeItemDefinition and Invoice