This
page
is
part
of
the
FHIR
Specification
(v3.0.2:
STU
3).
The
current
version
which
supercedes
this
version
is
5.0.0
.
For
a
full
list
Continuous
Integration
Build
of
available
versions,
see
FHIR
(will
be
incorrect/inconsistent
at
times).
See
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
Responsible
Owner:
Clinical
Decision
Support
Work
Group
|
Normative
|
|
Compartments
:
|
This resource allows for the definition of some activity to be performed, independent of a particular patient, practitioner, or other performance context.
This resource is a definition resource from a FHIR workflow perspective - see Workflow , specifically Definition .
An ActivityDefinition is a shareable, consumable description of some activity to be performed. It may be used to specify actions to be taken as part of a workflow, order set, or protocol, or it may be used independently as part of a catalog of activities such as orderables.
For
more
information
on
how
activity
definitions
can
be
used
to
construct
request
resources,
see
the
Realizing
Applying
an
ActivityDefinition
topic
below.
In
general,
an
activity
definition
is
simply
a
conceptual
description
of
some
specific
action
that
should
be
taken.
An
instance
of
an
ActivityDefinition
does
not
indicate
that
any
action
has
been
performed
(as
an
event
resource
does),
nor
does
it
indicate
the
actual
intent
to
carry
out
any
particular
action
(as
a
request
resource
does).
Instead,
an
activity
definition
provides
a
reusable
template
that
can
be
used
to
construct
specific
request
resources
such
as
ProcedureRequest
ServiceRequest
and
MedicationRequest
.
This
is
different
than
a
DataElement
in
that
ActivityDefinitions
are
generally
broader
than
data
elements,
which
are
typically
used
to
describe
more
granular
elements,
such
as
a
blood
pressure,
or
the
answer
to
a
particular
question.
Note that this is conceptually similar to the Task resource as well, with the distinction being that ActivityDefinition represents the description of a task in the abstract, while the Task resource is used to track a specific instance of a task as it moves through the steps of a workflow.
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
Filter:
|
|---|---|---|---|---|
|
N | DomainResource |
The
definition
of
a
specific
activity
to
be
taken,
independent
of
any
particular
patient
or
context
+ Warning: Name should be usable as an identifier for the module by machine processing applications such as code generation Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension Interfaces Implemented: MetadataResource |
|
|
Σ C | 0..1 | uri |
Canonical
identifier
for
this
activity
+ Warning: URL should not contain | or # - these characters make processing canonical references problematic |
|
Σ | 0..* | Identifier |
Additional
identifier
for
the
activity
definition
|
|
Σ | 0..1 | string |
Business
version
of
the
activity
definition
|
|
Σ | 0..1 |
How
to
compare
versions
Binding: Version Algorithm ( Extensible ) | |
![]() ![]() ![]() |
|
string | ||
| Coding | |||
![]() ![]() | Σ C | 0..1 | string |
Name
for
this
activity
definition
(computer
friendly)
|
|
Σ T | 0..1 | string |
Name
for
this
activity
definition
(human
friendly)
|
| T | 0..1 | string |
Subordinate
title
of
the
activity
definition
|
|
?! Σ | 1..1 | code |
draft
|
active
|
retired
|
unknown
Binding: PublicationStatus ( Required ) |
|
|
0..1 | boolean |
For
testing
|
| 0..1 |
Type
of
individual
the
activity
definition
is
intended
for
Binding: Participant Resource Types ( Extensible ) | ||
![]() ![]() ![]() | CodeableConcept | |||
![]() ![]() ![]() | Reference ( Group | MedicinalProductDefinition | SubstanceDefinition | AdministrableProductDefinition | ManufacturedItemDefinition | PackagedProductDefinition ) | |||
![]() ![]() ![]() | canonical ( EvidenceVariable ) | |||
|
Σ | 0..1 | dateTime |
Date
|
|
Σ T | 0..1 | string |
Name
of
the
|
|
Σ | 0..* |
ContactDetail
|
Contact
details
for
the
publisher
|
| Σ T | 0..1 | markdown |
Natural
language
description
of
the
activity
definition
|
| Σ | 0..* | UsageContext |
The
context
that
the
content
is
intended
to
support
|
![]() ![]() | Σ | 0..* | CodeableConcept |
Jurisdiction
of
the
authority
that
maintains
the
activity
definition
(if
applicable)
Binding: Jurisdiction ValueSet
(
Extensible
)
|
|
T | 0..1 | markdown |
Why
this
activity
definition
is
defined
|
|
T | 0..1 |
|
Describes
the
clinical
usage
of
the
|
|
T | 0..1 |
|
Notice
about
intellectual
property
ownership,
can
include
restrictions
on
use
|
|
T | 0..1 |
|
Copyright
holder
and
year(s)
|
|
0..1 |
|
When
the
activity
definition
|
|
|
0..1 |
|
When
the
|
|
|
Σ | 0..1 |
|
When
the
activity
definition
|
|
0..* | CodeableConcept |
E.g.
Education,
Treatment,
Assessment,
etc
|
|
|
0..* |
|
Who
authored
the
content
|
|
|
0..* |
|
Who
edited
the
content
|
|
| 0..* | ContactDetail |
Who
reviewed
the
|
|
|
|
0..* |
|
Who
endorsed
the
content
|
|
C | 0..* | RelatedArtifact |
Additional
documentation,
citations,
etc
+ Warning: Dependencies of an ActivityDefinition should reference a resource + Warning: ActivityDefinition should not have components |
|
0..* |
|
Logic
used
by
the
|
|
|
Σ | 0..1 | code |
Kind
of
resource
|
| 0..1 | canonical ( StructureDefinition ) |
What
profile
the
resource
needs
to
conform
to
| |
|
Σ | 0..1 | CodeableConcept |
Detail
type
of
activity
Binding: Procedure Codes (SNOMED CT) ( Example ) |
|
0..1 | code |
proposal
|
solicit-offer
|
offer-response
|
plan
|
directive
|
order
|
original-order
|
reflex-order
|
filler-order
|
instance-order
|
option
Binding: RequestIntent ( Required ) | |
![]() ![]() | 0..1 | code |
routine
|
urgent
|
asap
|
stat
Binding: RequestPriority ( Required ) | |
![]() ![]() | ?! Σ | 0..1 | boolean |
True
if
the
activity
should
not
be
performed
|
![]() ![]() | 0..1 |
When
activity
is
to
occur
|
||
|
Timing | |||
|
Age
|
|||
| Range | |||
|
Duration
|
|||
| RelativeTime | |||
| Σ | 0..1 |
Preconditions
for
service
Binding: SNOMED CT Medication As Needed Reason Codes ( Example ) | |
![]() ![]() ![]() | boolean | |||
|
|
|||
|
0..1 |
|
Where
it
should
happen
|
|
|
0..* | BackboneElement |
Who
should
participate
in
the
action
|
|
|
|
0..1 | code |
careteam
|
device
|
group
|
healthcareservice
|
location
|
organization
|
patient
|
practitioner
|
|
|
0..1 | canonical ( ActorDefinition | CapabilityStatement | DeviceDefinition | Group | SpecimenDefinition | StructureDefinition ) |
Who
or
what
can
participate
| |
![]() ![]() ![]() | 0..1 | Reference ( BiologicallyDerivedProduct | CareTeam | Device | Endpoint | HealthcareService | Location | Medication | MedicinalProductDefinition | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Specimen | Substance | SubstanceDefinition ) |
Who
or
what
can
participate
| |
![]() ![]() ![]() | 0..1 | CodeableConcept |
E.g.
Nurse,
Surgeon,
Parent,
etc
Binding: Action Participant Role
|
|
| 0..1 | CodeableConcept |
E.g.
Author,
Reviewer,
Witness,
etc
Binding: Action Participant Function ( Example ) | |
![]()
|
0..1 |
What's
administered/supplied
Binding: SNOMED CT Medication Codes ( Example ) |
||
|
Reference
(
Medication
|
|
|||
|
CodeableConcept | |||
|
0..1 | SimpleQuantity |
How
much
is
administered/consumed/supplied
|
|
|
0..* | Dosage |
Detailed
dosage
instructions
|
|
|
0..* | CodeableConcept |
What
part
of
body
to
perform
on
Binding: SNOMED CT Body Structures ( Example ) |
|
|
|
0..* |
|
What
specimens
are
required
to
|
|
0..* |
|
What
observations
are
required
to
perform
this
action
|
|
|
|
0..* |
|
What
observations
must
be
produced
by
this
action
|
|
0..1 | canonical ( StructureMap ) |
Transform
to
apply
the
template
|
|
|
|
0..* | BackboneElement |
Dynamic
aspects
of
the
|
|
|
1..1 | string |
The
path
to
the
|
|
|
1..1 |
|
An
expression
that
provides
the
dynamic
value
for
the
customization
|
Documentation
for
this
format
|
||||
See the Extensions for this resource
UML Diagram ( Legend )
XML Template
<<ActivityDefinition xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension -->
<<url value="[uri]"/><!-- 0..1 Canonical identifier for this activity definition, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Additional identifier for the activity definition --></identifier>< < < < < < < < < < < <<version value="[string]"/><!-- 0..1 Business version of the activity definition --> <versionAlgorithm[x]><!-- 0..1 string|Coding How to compare versions --></versionAlgorithm[x]> <name value="[string]"/><!-- I 0..1 Name for this activity definition (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this activity definition (human friendly) --> <subtitle value="[string]"/><!-- 0..1 Subordinate title of the activity definition --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing only - never for real usage --> <subject[x]><!-- 0..1 CodeableConcept|Reference(AdministrableProductDefinition| Group|ManufacturedItemDefinition|MedicinalProductDefinition| PackagedProductDefinition|SubstanceDefinition)|canonical(EvidenceVariable) Type of individual the activity definition is intended for --></subject[x]> <date value="[dateTime]"/><!-- 0..1 Date last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher/steward (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the activity definition --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Jurisdiction of the authority that maintains the activity definition (if applicable)--></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this activity definition is defined --> <usage value="[markdown]"/><!-- 0..1 Describes the clinical usage of the activity definition --> <copyright value="[markdown]"/><!-- 0..1 Notice about intellectual property ownership, can include restrictions on use --> <copyrightLabel value="[string]"/><!-- 0..1 Copyright holder and year(s) --> <approvalDate value="[date]"/><!-- 0..1 When the activity definition was approved by publisher --> <lastReviewDate value="[date]"/><!-- 0..1 When the activity definition was last reviewed by the publisher --> <effectivePeriod><!-- 0..1 Period When the activity definition is expected to be used --></effectivePeriod>
<</useContext> <</jurisdiction><topic><!-- 0..* CodeableConcept E.g. Education, Treatment, Assessment, etc --></topic><</contributor> <</contact> <<author><!-- 0..* ContactDetail Who authored the content --></author> <editor><!-- 0..* ContactDetail Who edited the content --></editor> <reviewer><!-- 0..* ContactDetail Who reviewed the content --></reviewer> <endorser><!-- 0..* ContactDetail Who endorsed the content --></endorser> <relatedArtifact><!-- 0..* RelatedArtifact Additional documentation, citations, etc --></relatedArtifact><</library> <<library><!-- 0..* canonical(Library) Logic used by the activity definition --></library> <kind value="[code]"/><!-- 0..1 Kind of resource --> <profile><!-- 0..1 canonical(StructureDefinition) What profile the resource needs to conform to --></profile> <code><!-- 0..1 CodeableConcept Detail type of activity --></code><</timing[x]> <</location><intent value="[code]"/><!-- 0..1 proposal | solicit-offer | offer-response | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option --> <priority value="[code]"/><!-- 0..1 routine | urgent | asap | stat --> <doNotPerform value="[boolean]"/><!-- 0..1 True if the activity should not be performed --> <timing[x]><!-- 0..1 Timing|Age|Range|Duration|RelativeTime When activity is to occur --></timing[x]> <asNeeded[x]><!-- 0..1 boolean|CodeableConcept Preconditions for service --></asNeeded[x]> <location><!-- 0..1 CodeableReference(Location) Where it should happen --></location> <participant> <!-- 0..* Who should participate in the action -->< <</role><type value="[code]"/><!-- 0..1 careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson --> <typeCanonical><!-- 0..1 canonical(ActorDefinition|CapabilityStatement| DeviceDefinition|Group|SpecimenDefinition|StructureDefinition) Who or what can participate --></typeCanonical> <typeReference><!-- 0..1 Reference(BiologicallyDerivedProduct|CareTeam|Device| Endpoint|HealthcareService|Location|Medication|MedicinalProductDefinition| Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Specimen| Substance|SubstanceDefinition) Who or what can participate --></typeReference> <role><!-- 0..1 CodeableConcept E.g. Nurse, Surgeon, Parent, etc--></role> <function><!-- 0..1 CodeableConcept E.g. Author, Reviewer, Witness, etc --></function> </participant>
<</product[x]><product[x]><!-- 0..1 Reference(Ingredient|Medication|MedicinalProductDefinition| SubstanceDefinition)|CodeableConcept What's administered/supplied --></product[x]> <quantity><!-- 0..1 Quantity(SimpleQuantity) How much is administered/consumed/supplied --></quantity> <dosage><!-- 0..* Dosage Detailed dosage instructions --></dosage> <bodySite><!-- 0..* CodeableConcept What part of body to perform on --></bodySite><</transform> < < < < <<specimenRequirement><!-- 0..* canonical(SpecimenDefinition) What specimens are required to perform this action --></specimenRequirement> <observationRequirement><!-- 0..* canonical(ObservationDefinition) What observations are required to perform this action --></observationRequirement> <observationResultRequirement><!-- 0..* canonical(ObservationDefinition) What observations must be produced by this action --></observationResultRequirement> <transform><!-- 0..1 canonical(StructureMap) Transform to apply the template --></transform> <dynamicValue> <!-- 0..* Dynamic aspects of the definition --> <path value="[string]"/><!-- 1..1 The path to the element to be set dynamically --> <expression><!-- 1..1 Expression An expression that provides the dynamic value for the customization --></expression> </dynamicValue> </ActivityDefinition>
JSON Template
{
"resourceType" : "",
"resourceType" : "ActivityDefinition",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
" },
">",
" },
" },
"
"
"
"
"url" : "<uri>", // Canonical identifier for this activity definition, represented as a URI (globally unique)
"identifier" : [{ Identifier }], // Additional identifier for the activity definition
"version" : "<string>", // Business version of the activity definition
// versionAlgorithm[x]: How to compare versions. One of these 2:
"versionAlgorithmString" : "<string>",
"versionAlgorithmCoding" : { Coding },
"name" : "<string>", // I Name for this activity definition (computer friendly)
"title" : "<string>", // Name for this activity definition (human friendly)
"subtitle" : "<string>", // Subordinate title of the activity definition
"status" : "<code>", // R! draft | active | retired | unknown
"experimental" : <boolean>, // For testing only - never for real usage
// subject[x]: Type of individual the activity definition is intended for. One of these 3:
"subjectCodeableConcept" : { CodeableConcept },
"subjectReference" : { Reference(AdministrableProductDefinition|Group|
ManufacturedItemDefinition|MedicinalProductDefinition|
PackagedProductDefinition|SubstanceDefinition) },
"subjectCanonical" : "<canonical(EvidenceVariable)>",
"date" : "<dateTime>", // Date last changed
"publisher" : "<string>", // Name of the publisher/steward (organization or individual)
"contact" : [{ ContactDetail }], // Contact details for the publisher
"description" : "<markdown>", // Natural language description of the activity definition
"useContext" : [{ UsageContext }], // The context that the content is intended to support
"jurisdiction" : [{ CodeableConcept }], // Jurisdiction of the authority that maintains the activity definition (if applicable)
"purpose" : "<markdown>", // Why this activity definition is defined
"usage" : "<markdown>", // Describes the clinical usage of the activity definition
"copyright" : "<markdown>", // Notice about intellectual property ownership, can include restrictions on use
"copyrightLabel" : "<string>", // Copyright holder and year(s)
"approvalDate" : "<date>", // When the activity definition was approved by publisher
"lastReviewDate" : "<date>", // When the activity definition was last reviewed by the publisher
"effectivePeriod" : { Period }, // When the activity definition is expected to be used
"topic" : [{ CodeableConcept }], // E.g. Education, Treatment, Assessment, etc
"author" : [{ ContactDetail }], // Who authored the content
"editor" : [{ ContactDetail }], // Who edited the content
"reviewer" : [{ ContactDetail }], // Who reviewed the content
"endorser" : [{ ContactDetail }], // Who endorsed the content
"relatedArtifact" : [{ RelatedArtifact }], // Additional documentation, citations, etc
"library" : ["<canonical(Library)>"], // Logic used by the activity definition
"kind" : "<code>", // Kind of resource
"profile" : "<canonical(StructureDefinition)>", // What profile the resource needs to conform to
"code" : { CodeableConcept }, // Detail type of activity
"intent" : "<code>", // proposal | solicit-offer | offer-response | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
"priority" : "<code>", // routine | urgent | asap | stat
"doNotPerform" : <boolean>, // True if the activity should not be performed
// timing[x]: When activity is to occur. One of these 5:
"timingTiming" : { Timing },
"timingAge" : { Age },
"timingRange" : { Range },
"timingDuration" : { Duration },
"timingRelativeTime" : { RelativeTime },
// asNeeded[x]: Preconditions for service. One of these 2:
"asNeededBoolean" : <boolean>,
"asNeededCodeableConcept" : { CodeableConcept },
"location" : { CodeableReference(Location) }, // Where it should happen
"participant" : [{ // Who should participate in the action
"type" : "<code>", // careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson
"typeCanonical" : "<canonical(ActorDefinition|CapabilityStatement|DeviceDefinition|Group|SpecimenDefinition|StructureDefinition)>", // Who or what can participate
"typeReference" : { Reference(BiologicallyDerivedProduct|CareTeam|Device|
Endpoint|HealthcareService|Location|Medication|MedicinalProductDefinition|
Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Specimen|
Substance|SubstanceDefinition) }, // Who or what can participate
"role" : { CodeableConcept }, // E.g. Nurse, Surgeon, Parent, etc
"function" : { CodeableConcept } // E.g. Author, Reviewer, Witness, etc
}],
// product[x]: What's administered/supplied. One of these 2:
" },
" },
"
"
"
"
"
"
"
"
"
"productReference" : { Reference(Ingredient|Medication|MedicinalProductDefinition|
SubstanceDefinition) },
"productCodeableConcept" : { CodeableConcept },
"quantity" : { Quantity(SimpleQuantity) }, // How much is administered/consumed/supplied
"dosage" : [{ Dosage }], // Detailed dosage instructions
"bodySite" : [{ CodeableConcept }], // What part of body to perform on
"specimenRequirement" : ["<canonical(SpecimenDefinition)>"], // What specimens are required to perform this action
"observationRequirement" : ["<canonical(ObservationDefinition)>"], // What observations are required to perform this action
"observationResultRequirement" : ["<canonical(ObservationDefinition)>"], // What observations must be produced by this action
"transform" : "<canonical(StructureMap)>", // Transform to apply the template
"dynamicValue" : [{ // Dynamic aspects of the definition
"path" : "<string>", // R! The path to the element to be set dynamically
"expression" : { Expression } // R! An expression that provides the dynamic value for the customization
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:ActivityDefinition; fhir:nodeRole fhir:treeRoot; # if this is the parser root
# from # from 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 4 fhir: ] fhir: ] fhir: ] fhir: ] fhir: fhir: fhir: fhir: ], ...; # . One of these 2 fhir:) ] fhir: ] fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ], ...;# from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension fhir:url [ uri ] ; # 0..1 Canonical identifier for this activity definition, represented as a URI (globally unique) fhir:identifier ( [ Identifier ] ... ) ; # 0..* Additional identifier for the activity definition fhir:version [ string ] ; # 0..1 Business version of the activity definition # versionAlgorithm[x] : 0..1 How to compare versions. One of these 2 fhir:versionAlgorithm [ a fhir:String ; string ] fhir:versionAlgorithm [ a fhir:Coding ; Coding ] fhir:name [ string ] ; # 0..1 I Name for this activity definition (computer friendly) fhir:title [ string ] ; # 0..1 Name for this activity definition (human friendly) fhir:subtitle [ string ] ; # 0..1 Subordinate title of the activity definition fhir:status [ code ] ; # 1..1 draft | active | retired | unknown fhir:experimental [ boolean ] ; # 0..1 For testing only - never for real usage # subject[x] : 0..1 Type of individual the activity definition is intended for. One of these 3 fhir:subject [ a fhir:CodeableConcept ; CodeableConcept ] fhir:subject [ a fhir:Reference ; Reference(AdministrableProductDefinition|Group|ManufacturedItemDefinition| MedicinalProductDefinition|PackagedProductDefinition|SubstanceDefinition) ] fhir:subject [ a fhir:Canonical ; canonical(EvidenceVariable) ] fhir:date [ dateTime ] ; # 0..1 Date last changed fhir:publisher [ string ] ; # 0..1 Name of the publisher/steward (organization or individual) fhir:contact ( [ ContactDetail ] ... ) ; # 0..* Contact details for the publisher fhir:description [ markdown ] ; # 0..1 Natural language description of the activity definition fhir:useContext ( [ UsageContext ] ... ) ; # 0..* The context that the content is intended to support fhir:jurisdiction ( [ CodeableConcept ] ... ) ; # 0..* Jurisdiction of the authority that maintains the activity definition (if applicable) fhir:purpose [ markdown ] ; # 0..1 Why this activity definition is defined fhir:usage [ markdown ] ; # 0..1 Describes the clinical usage of the activity definition fhir:copyright [ markdown ] ; # 0..1 Notice about intellectual property ownership, can include restrictions on use fhir:copyrightLabel [ string ] ; # 0..1 Copyright holder and year(s) fhir:approvalDate [ date ] ; # 0..1 When the activity definition was approved by publisher fhir:lastReviewDate [ date ] ; # 0..1 When the activity definition was last reviewed by the publisher fhir:effectivePeriod [ Period ] ; # 0..1 When the activity definition is expected to be used fhir:topic ( [ CodeableConcept ] ... ) ; # 0..* E.g. Education, Treatment, Assessment, etc fhir:author ( [ ContactDetail ] ... ) ; # 0..* Who authored the content fhir:editor ( [ ContactDetail ] ... ) ; # 0..* Who edited the content fhir:reviewer ( [ ContactDetail ] ... ) ; # 0..* Who reviewed the content fhir:endorser ( [ ContactDetail ] ... ) ; # 0..* Who endorsed the content fhir:relatedArtifact ( [ RelatedArtifact ] ... ) ; # 0..* Additional documentation, citations, etc fhir:library ( [ canonical(Library) ] ... ) ; # 0..* Logic used by the activity definition fhir:kind [ code ] ; # 0..1 Kind of resource fhir:profile [ canonical(StructureDefinition) ] ; # 0..1 What profile the resource needs to conform to fhir:code [ CodeableConcept ] ; # 0..1 Detail type of activity fhir:intent [ code ] ; # 0..1 proposal | solicit-offer | offer-response | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option fhir:priority [ code ] ; # 0..1 routine | urgent | asap | stat fhir:doNotPerform [ boolean ] ; # 0..1 True if the activity should not be performed # timing[x] : 0..1 When activity is to occur. One of these 5 fhir:timing [ a fhir:Timing ; Timing ] fhir:timing [ a fhir:Age ; Age ] fhir:timing [ a fhir:Range ; Range ] fhir:timing [ a fhir:Duration ; Duration ] fhir:timing [ a fhir:RelativeTime ; RelativeTime ] # asNeeded[x] : 0..1 Preconditions for service. One of these 2 fhir:asNeeded [ a fhir:Boolean ; boolean ] fhir:asNeeded [ a fhir:CodeableConcept ; CodeableConcept ] fhir:location [ CodeableReference(Location) ] ; # 0..1 Where it should happen fhir:participant ( [ # 0..* Who should participate in the action fhir:type [ code ] ; # 0..1 careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson fhir:typeCanonical [ canonical(ActorDefinition|CapabilityStatement|DeviceDefinition|Group|SpecimenDefinition| StructureDefinition) ] ; # 0..1 Who or what can participate fhir:typeReference [ Reference(BiologicallyDerivedProduct|CareTeam|Device|Endpoint|HealthcareService|Location| Medication|MedicinalProductDefinition|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson|Specimen|Substance|SubstanceDefinition) ] ; # 0..1 Who or what can participate fhir:role [ CodeableConcept ] ; # 0..1 E.g. Nurse, Surgeon, Parent, etc fhir:function [ CodeableConcept ] ; # 0..1 E.g. Author, Reviewer, Witness, etc ] ... ) ; # product[x] : 0..1 What's administered/supplied. One of these 2 fhir:product [ a fhir:Reference ; Reference(Ingredient|Medication|MedicinalProductDefinition|SubstanceDefinition) ] fhir:product [ a fhir:CodeableConcept ; CodeableConcept ] fhir:quantity [ Quantity(SimpleQuantity) ] ; # 0..1 How much is administered/consumed/supplied fhir:dosage ( [ Dosage ] ... ) ; # 0..* Detailed dosage instructions fhir:bodySite ( [ CodeableConcept ] ... ) ; # 0..* What part of body to perform on fhir:specimenRequirement ( [ canonical(SpecimenDefinition) ] ... ) ; # 0..* What specimens are required to perform this action fhir:observationRequirement ( [ canonical(ObservationDefinition) ] ... ) ; # 0..* What observations are required to perform this action fhir:observationResultRequirement ( [ canonical(ObservationDefinition) ] ... ) ; # 0..* What observations must be produced by this action fhir:transform [ canonical(StructureMap) ] ; # 0..1 Transform to apply the template fhir:dynamicValue ( [ # 0..* Dynamic aspects of the definition fhir:path [ string ] ; # 1..1 The path to the element to be set dynamically fhir:expression [ Expression ] ; # 1..1 An expression that provides the dynamic value for the customization ] ... ) ; ]
Changes
since
DSTU2
from
both
R4
and
R4B
| ActivityDefinition | |
| ActivityDefinition.versionAlgorithm[x] |
|
| ActivityDefinition.subject[x] |
|
| ActivityDefinition.jurisdiction |
|
| ActivityDefinition.usage |
|
| ActivityDefinition.copyrightLabel |
|
| ActivityDefinition.kind |
|
| ActivityDefinition.intent |
|
| ActivityDefinition.timing[x] |
|
| ActivityDefinition.asNeeded[x] |
|
| ActivityDefinition.location |
|
| ActivityDefinition.participant.type |
|
| ActivityDefinition.participant.typeCanonical |
|
| ActivityDefinition.participant.typeReference |
|
| ActivityDefinition.participant.function |
|
| ActivityDefinition.specimenRequirement |
|
| ActivityDefinition.observationRequirement |
|
| ActivityDefinition.observationResultRequirement |
|
This
resource
did
not
exist
in
Release
2
See
the
Full
Difference
for
further
information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON .
Structure
| Name | Flags | Card. | Type |
Description
&
Constraints
Filter:
|
|---|---|---|---|---|
|
N | DomainResource |
The
definition
of
a
specific
activity
to
be
taken,
independent
of
any
particular
patient
or
context
+ Warning: Name should be usable as an identifier for the module by machine processing applications such as code generation Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension Interfaces Implemented: MetadataResource |
|
|
Σ C | 0..1 | uri |
Canonical
identifier
for
this
activity
+ Warning: URL should not contain | or # - these characters make processing canonical references problematic |
|
Σ | 0..* | Identifier |
Additional
identifier
for
the
activity
definition
|
|
Σ | 0..1 | string |
Business
version
of
the
activity
definition
|
|
Σ | 0..1 |
How
to
compare
versions
Binding: Version Algorithm ( Extensible ) | |
![]() ![]() ![]() |
|
string | ||
| Coding | |||
![]() ![]() | Σ C | 0..1 | string |
Name
for
this
activity
definition
(computer
friendly)
|
|
Σ T | 0..1 | string |
Name
for
this
activity
definition
(human
friendly)
|
| T | 0..1 | string |
Subordinate
title
of
the
activity
definition
|
|
?! Σ | 1..1 | code |
draft
|
active
|
retired
|
unknown
Binding: PublicationStatus ( Required ) |
|
|
0..1 | boolean |
For
testing
|
| 0..1 |
Type
of
individual
the
activity
definition
is
intended
for
Binding: Participant Resource Types ( Extensible ) | ||
![]() ![]() ![]() | CodeableConcept | |||
![]() ![]() ![]() | Reference ( Group | MedicinalProductDefinition | SubstanceDefinition | AdministrableProductDefinition | ManufacturedItemDefinition | PackagedProductDefinition ) | |||
![]() ![]() ![]() | canonical ( EvidenceVariable ) | |||
|
Σ | 0..1 | dateTime |
Date
|
|
Σ T | 0..1 | string |
Name
of
the
|
|
Σ | 0..* |
ContactDetail
|
Contact
details
for
the
publisher
|
| Σ T | 0..1 | markdown |
Natural
language
description
of
the
activity
definition
|
| Σ | 0..* | UsageContext |
The
context
that
the
content
is
intended
to
support
|
![]() ![]() | Σ | 0..* | CodeableConcept |
Jurisdiction
of
the
authority
that
maintains
the
activity
definition
(if
applicable)
Binding: Jurisdiction ValueSet
(
Extensible
)
|
|
T | 0..1 | markdown |
Why
this
activity
definition
is
defined
|
|
T | 0..1 |
|
Describes
the
clinical
usage
of
the
|
|
T | 0..1 |
|
Notice
about
intellectual
property
ownership,
can
include
restrictions
on
use
|
|
T | 0..1 |
|
Copyright
holder
and
year(s)
|
|
0..1 |
|
When
the
activity
definition
|
|
|
0..1 |
|
When
the
|
|
|
Σ | 0..1 |
|
When
the
activity
definition
|
|
0..* | CodeableConcept |
E.g.
Education,
Treatment,
Assessment,
etc
|
|
|
0..* |
|
Who
authored
the
content
|
|
|
0..* |
|
Who
edited
the
content
|
|
| 0..* | ContactDetail |
Who
reviewed
the
|
|
|
|
0..* |
|
Who
endorsed
the
content
|
|
C | 0..* | RelatedArtifact |
Additional
documentation,
citations,
etc
+ Warning: Dependencies of an ActivityDefinition should reference a resource + Warning: ActivityDefinition should not have components |
|
0..* |
|
Logic
used
by
the
|
|
|
Σ | 0..1 | code |
Kind
of
resource
|
| 0..1 | canonical ( StructureDefinition ) |
What
profile
the
resource
needs
to
conform
to
| |
|
Σ | 0..1 | CodeableConcept |
Detail
type
of
activity
Binding: Procedure Codes (SNOMED CT) ( Example ) |
|
0..1 | code |
proposal
|
solicit-offer
|
offer-response
|
plan
|
directive
|
order
|
original-order
|
reflex-order
|
filler-order
|
instance-order
|
option
Binding: RequestIntent ( Required ) | |
![]() ![]() | 0..1 | code |
routine
|
urgent
|
asap
|
stat
Binding: RequestPriority ( Required ) | |
![]() ![]() | ?! Σ | 0..1 | boolean |
True
if
the
activity
should
not
be
performed
|
![]() ![]() | 0..1 |
When
activity
is
to
occur
|
||
|
Timing | |||
|
Age
|
|||
| Range | |||
|
Duration
|
|||
| RelativeTime | |||
| Σ | 0..1 |
Preconditions
for
service
Binding: SNOMED CT Medication As Needed Reason Codes ( Example ) | |
![]() ![]() ![]() | boolean | |||
|
|
|||
|
0..1 |
|
Where
it
should
happen
|
|
|
0..* | BackboneElement |
Who
should
participate
in
the
action
|
|
|
|
0..1 | code |
careteam
|
device
|
group
|
healthcareservice
|
location
|
organization
|
patient
|
practitioner
|
|
|
0..1 | canonical ( ActorDefinition | CapabilityStatement | DeviceDefinition | Group | SpecimenDefinition | StructureDefinition ) |
Who
or
what
can
participate
| |
![]() ![]() ![]() | 0..1 | Reference ( BiologicallyDerivedProduct | CareTeam | Device | Endpoint | HealthcareService | Location | Medication | MedicinalProductDefinition | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson | Specimen | Substance | SubstanceDefinition ) |
Who
or
what
can
participate
| |
![]() ![]() ![]() | 0..1 | CodeableConcept |
E.g.
Nurse,
Surgeon,
Parent,
etc
Binding: Action Participant Role
|
|
| 0..1 | CodeableConcept |
E.g.
Author,
Reviewer,
Witness,
etc
Binding: Action Participant Function ( Example ) | |
![]()
|
0..1 |
What's
administered/supplied
Binding: SNOMED CT Medication Codes ( Example ) |
||
|
Reference
(
Medication
|
|
|||
|
CodeableConcept | |||
|
0..1 | SimpleQuantity |
How
much
is
administered/consumed/supplied
|
|
|
0..* | Dosage |
Detailed
dosage
instructions
|
|
|
0..* | CodeableConcept |
What
part
of
body
to
perform
on
Binding: SNOMED CT Body Structures ( Example ) |
|
|
|
0..* |
|
What
specimens
are
required
to
|
|
0..* |
|
What
observations
are
required
to
perform
this
action
|
|
|
|
0..* |
|
What
observations
must
be
produced
by
this
action
|
|
0..1 | canonical ( StructureMap ) |
Transform
to
apply
the
template
|
|
|
|
0..* | BackboneElement |
Dynamic
aspects
of
the
|
|
|
1..1 | string |
The
path
to
the
|
|
|
1..1 |
|
An
expression
that
provides
the
dynamic
value
for
the
customization
|
Documentation
for
this
format
|
||||
See the Extensions for this resource
XML Template
<<ActivityDefinition xmlns="http://hl7.org/fhir"><!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension -->
<<url value="[uri]"/><!-- 0..1 Canonical identifier for this activity definition, represented as a URI (globally unique) --> <identifier><!-- 0..* Identifier Additional identifier for the activity definition --></identifier>< < < < < < < < < < < <<version value="[string]"/><!-- 0..1 Business version of the activity definition --> <versionAlgorithm[x]><!-- 0..1 string|Coding How to compare versions --></versionAlgorithm[x]> <name value="[string]"/><!-- I 0..1 Name for this activity definition (computer friendly) --> <title value="[string]"/><!-- 0..1 Name for this activity definition (human friendly) --> <subtitle value="[string]"/><!-- 0..1 Subordinate title of the activity definition --> <status value="[code]"/><!-- 1..1 draft | active | retired | unknown --> <experimental value="[boolean]"/><!-- 0..1 For testing only - never for real usage --> <subject[x]><!-- 0..1 CodeableConcept|Reference(AdministrableProductDefinition| Group|ManufacturedItemDefinition|MedicinalProductDefinition| PackagedProductDefinition|SubstanceDefinition)|canonical(EvidenceVariable) Type of individual the activity definition is intended for --></subject[x]> <date value="[dateTime]"/><!-- 0..1 Date last changed --> <publisher value="[string]"/><!-- 0..1 Name of the publisher/steward (organization or individual) --> <contact><!-- 0..* ContactDetail Contact details for the publisher --></contact> <description value="[markdown]"/><!-- 0..1 Natural language description of the activity definition --> <useContext><!-- 0..* UsageContext The context that the content is intended to support --></useContext> <jurisdiction><!-- 0..* CodeableConcept Jurisdiction of the authority that maintains the activity definition (if applicable)--></jurisdiction> <purpose value="[markdown]"/><!-- 0..1 Why this activity definition is defined --> <usage value="[markdown]"/><!-- 0..1 Describes the clinical usage of the activity definition --> <copyright value="[markdown]"/><!-- 0..1 Notice about intellectual property ownership, can include restrictions on use --> <copyrightLabel value="[string]"/><!-- 0..1 Copyright holder and year(s) --> <approvalDate value="[date]"/><!-- 0..1 When the activity definition was approved by publisher --> <lastReviewDate value="[date]"/><!-- 0..1 When the activity definition was last reviewed by the publisher --> <effectivePeriod><!-- 0..1 Period When the activity definition is expected to be used --></effectivePeriod>
<</useContext> <</jurisdiction><topic><!-- 0..* CodeableConcept E.g. Education, Treatment, Assessment, etc --></topic><</contributor> <</contact> <<author><!-- 0..* ContactDetail Who authored the content --></author> <editor><!-- 0..* ContactDetail Who edited the content --></editor> <reviewer><!-- 0..* ContactDetail Who reviewed the content --></reviewer> <endorser><!-- 0..* ContactDetail Who endorsed the content --></endorser> <relatedArtifact><!-- 0..* RelatedArtifact Additional documentation, citations, etc --></relatedArtifact><</library> <<library><!-- 0..* canonical(Library) Logic used by the activity definition --></library> <kind value="[code]"/><!-- 0..1 Kind of resource --> <profile><!-- 0..1 canonical(StructureDefinition) What profile the resource needs to conform to --></profile> <code><!-- 0..1 CodeableConcept Detail type of activity --></code><</timing[x]> <</location><intent value="[code]"/><!-- 0..1 proposal | solicit-offer | offer-response | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option --> <priority value="[code]"/><!-- 0..1 routine | urgent | asap | stat --> <doNotPerform value="[boolean]"/><!-- 0..1 True if the activity should not be performed --> <timing[x]><!-- 0..1 Timing|Age|Range|Duration|RelativeTime When activity is to occur --></timing[x]> <asNeeded[x]><!-- 0..1 boolean|CodeableConcept Preconditions for service --></asNeeded[x]> <location><!-- 0..1 CodeableReference(Location) Where it should happen --></location> <participant> <!-- 0..* Who should participate in the action -->< <</role><type value="[code]"/><!-- 0..1 careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson --> <typeCanonical><!-- 0..1 canonical(ActorDefinition|CapabilityStatement| DeviceDefinition|Group|SpecimenDefinition|StructureDefinition) Who or what can participate --></typeCanonical> <typeReference><!-- 0..1 Reference(BiologicallyDerivedProduct|CareTeam|Device| Endpoint|HealthcareService|Location|Medication|MedicinalProductDefinition| Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Specimen| Substance|SubstanceDefinition) Who or what can participate --></typeReference> <role><!-- 0..1 CodeableConcept E.g. Nurse, Surgeon, Parent, etc--></role> <function><!-- 0..1 CodeableConcept E.g. Author, Reviewer, Witness, etc --></function> </participant>
<</product[x]><product[x]><!-- 0..1 Reference(Ingredient|Medication|MedicinalProductDefinition| SubstanceDefinition)|CodeableConcept What's administered/supplied --></product[x]> <quantity><!-- 0..1 Quantity(SimpleQuantity) How much is administered/consumed/supplied --></quantity> <dosage><!-- 0..* Dosage Detailed dosage instructions --></dosage> <bodySite><!-- 0..* CodeableConcept What part of body to perform on --></bodySite><</transform> < < < < <<specimenRequirement><!-- 0..* canonical(SpecimenDefinition) What specimens are required to perform this action --></specimenRequirement> <observationRequirement><!-- 0..* canonical(ObservationDefinition) What observations are required to perform this action --></observationRequirement> <observationResultRequirement><!-- 0..* canonical(ObservationDefinition) What observations must be produced by this action --></observationResultRequirement> <transform><!-- 0..1 canonical(StructureMap) Transform to apply the template --></transform> <dynamicValue> <!-- 0..* Dynamic aspects of the definition --> <path value="[string]"/><!-- 1..1 The path to the element to be set dynamically --> <expression><!-- 1..1 Expression An expression that provides the dynamic value for the customization --></expression> </dynamicValue> </ActivityDefinition>
JSON Template
{
"resourceType" : "",
"resourceType" : "ActivityDefinition",
// from Resource: id, meta, implicitRules, and language
// from DomainResource: text, contained, extension, and modifierExtension
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
"
" },
">",
" },
" },
"
"
"
"
"url" : "<uri>", // Canonical identifier for this activity definition, represented as a URI (globally unique)
"identifier" : [{ Identifier }], // Additional identifier for the activity definition
"version" : "<string>", // Business version of the activity definition
// versionAlgorithm[x]: How to compare versions. One of these 2:
"versionAlgorithmString" : "<string>",
"versionAlgorithmCoding" : { Coding },
"name" : "<string>", // I Name for this activity definition (computer friendly)
"title" : "<string>", // Name for this activity definition (human friendly)
"subtitle" : "<string>", // Subordinate title of the activity definition
"status" : "<code>", // R! draft | active | retired | unknown
"experimental" : <boolean>, // For testing only - never for real usage
// subject[x]: Type of individual the activity definition is intended for. One of these 3:
"subjectCodeableConcept" : { CodeableConcept },
"subjectReference" : { Reference(AdministrableProductDefinition|Group|
ManufacturedItemDefinition|MedicinalProductDefinition|
PackagedProductDefinition|SubstanceDefinition) },
"subjectCanonical" : "<canonical(EvidenceVariable)>",
"date" : "<dateTime>", // Date last changed
"publisher" : "<string>", // Name of the publisher/steward (organization or individual)
"contact" : [{ ContactDetail }], // Contact details for the publisher
"description" : "<markdown>", // Natural language description of the activity definition
"useContext" : [{ UsageContext }], // The context that the content is intended to support
"jurisdiction" : [{ CodeableConcept }], // Jurisdiction of the authority that maintains the activity definition (if applicable)
"purpose" : "<markdown>", // Why this activity definition is defined
"usage" : "<markdown>", // Describes the clinical usage of the activity definition
"copyright" : "<markdown>", // Notice about intellectual property ownership, can include restrictions on use
"copyrightLabel" : "<string>", // Copyright holder and year(s)
"approvalDate" : "<date>", // When the activity definition was approved by publisher
"lastReviewDate" : "<date>", // When the activity definition was last reviewed by the publisher
"effectivePeriod" : { Period }, // When the activity definition is expected to be used
"topic" : [{ CodeableConcept }], // E.g. Education, Treatment, Assessment, etc
"author" : [{ ContactDetail }], // Who authored the content
"editor" : [{ ContactDetail }], // Who edited the content
"reviewer" : [{ ContactDetail }], // Who reviewed the content
"endorser" : [{ ContactDetail }], // Who endorsed the content
"relatedArtifact" : [{ RelatedArtifact }], // Additional documentation, citations, etc
"library" : ["<canonical(Library)>"], // Logic used by the activity definition
"kind" : "<code>", // Kind of resource
"profile" : "<canonical(StructureDefinition)>", // What profile the resource needs to conform to
"code" : { CodeableConcept }, // Detail type of activity
"intent" : "<code>", // proposal | solicit-offer | offer-response | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
"priority" : "<code>", // routine | urgent | asap | stat
"doNotPerform" : <boolean>, // True if the activity should not be performed
// timing[x]: When activity is to occur. One of these 5:
"timingTiming" : { Timing },
"timingAge" : { Age },
"timingRange" : { Range },
"timingDuration" : { Duration },
"timingRelativeTime" : { RelativeTime },
// asNeeded[x]: Preconditions for service. One of these 2:
"asNeededBoolean" : <boolean>,
"asNeededCodeableConcept" : { CodeableConcept },
"location" : { CodeableReference(Location) }, // Where it should happen
"participant" : [{ // Who should participate in the action
"type" : "<code>", // careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson
"typeCanonical" : "<canonical(ActorDefinition|CapabilityStatement|DeviceDefinition|Group|SpecimenDefinition|StructureDefinition)>", // Who or what can participate
"typeReference" : { Reference(BiologicallyDerivedProduct|CareTeam|Device|
Endpoint|HealthcareService|Location|Medication|MedicinalProductDefinition|
Organization|Patient|Practitioner|PractitionerRole|RelatedPerson|Specimen|
Substance|SubstanceDefinition) }, // Who or what can participate
"role" : { CodeableConcept }, // E.g. Nurse, Surgeon, Parent, etc
"function" : { CodeableConcept } // E.g. Author, Reviewer, Witness, etc
}],
// product[x]: What's administered/supplied. One of these 2:
" },
" },
"
"
"
"
"
"
"
"
"
"productReference" : { Reference(Ingredient|Medication|MedicinalProductDefinition|
SubstanceDefinition) },
"productCodeableConcept" : { CodeableConcept },
"quantity" : { Quantity(SimpleQuantity) }, // How much is administered/consumed/supplied
"dosage" : [{ Dosage }], // Detailed dosage instructions
"bodySite" : [{ CodeableConcept }], // What part of body to perform on
"specimenRequirement" : ["<canonical(SpecimenDefinition)>"], // What specimens are required to perform this action
"observationRequirement" : ["<canonical(ObservationDefinition)>"], // What observations are required to perform this action
"observationResultRequirement" : ["<canonical(ObservationDefinition)>"], // What observations must be produced by this action
"transform" : "<canonical(StructureMap)>", // Transform to apply the template
"dynamicValue" : [{ // Dynamic aspects of the definition
"path" : "<string>", // R! The path to the element to be set dynamically
"expression" : { Expression } // R! An expression that provides the dynamic value for the customization
}]
}
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> .[ a fhir:ActivityDefinition; fhir:nodeRole fhir:treeRoot; # if this is the parser root
# from # from 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 4 fhir: ] fhir: ] fhir: ] fhir: ] fhir: fhir: fhir: fhir: ], ...; # . One of these 2 fhir:) ] fhir: ] fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: fhir: ], ...;# from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension fhir:url [ uri ] ; # 0..1 Canonical identifier for this activity definition, represented as a URI (globally unique) fhir:identifier ( [ Identifier ] ... ) ; # 0..* Additional identifier for the activity definition fhir:version [ string ] ; # 0..1 Business version of the activity definition # versionAlgorithm[x] : 0..1 How to compare versions. One of these 2 fhir:versionAlgorithm [ a fhir:String ; string ] fhir:versionAlgorithm [ a fhir:Coding ; Coding ] fhir:name [ string ] ; # 0..1 I Name for this activity definition (computer friendly) fhir:title [ string ] ; # 0..1 Name for this activity definition (human friendly) fhir:subtitle [ string ] ; # 0..1 Subordinate title of the activity definition fhir:status [ code ] ; # 1..1 draft | active | retired | unknown fhir:experimental [ boolean ] ; # 0..1 For testing only - never for real usage # subject[x] : 0..1 Type of individual the activity definition is intended for. One of these 3 fhir:subject [ a fhir:CodeableConcept ; CodeableConcept ] fhir:subject [ a fhir:Reference ; Reference(AdministrableProductDefinition|Group|ManufacturedItemDefinition| MedicinalProductDefinition|PackagedProductDefinition|SubstanceDefinition) ] fhir:subject [ a fhir:Canonical ; canonical(EvidenceVariable) ] fhir:date [ dateTime ] ; # 0..1 Date last changed fhir:publisher [ string ] ; # 0..1 Name of the publisher/steward (organization or individual) fhir:contact ( [ ContactDetail ] ... ) ; # 0..* Contact details for the publisher fhir:description [ markdown ] ; # 0..1 Natural language description of the activity definition fhir:useContext ( [ UsageContext ] ... ) ; # 0..* The context that the content is intended to support fhir:jurisdiction ( [ CodeableConcept ] ... ) ; # 0..* Jurisdiction of the authority that maintains the activity definition (if applicable) fhir:purpose [ markdown ] ; # 0..1 Why this activity definition is defined fhir:usage [ markdown ] ; # 0..1 Describes the clinical usage of the activity definition fhir:copyright [ markdown ] ; # 0..1 Notice about intellectual property ownership, can include restrictions on use fhir:copyrightLabel [ string ] ; # 0..1 Copyright holder and year(s) fhir:approvalDate [ date ] ; # 0..1 When the activity definition was approved by publisher fhir:lastReviewDate [ date ] ; # 0..1 When the activity definition was last reviewed by the publisher fhir:effectivePeriod [ Period ] ; # 0..1 When the activity definition is expected to be used fhir:topic ( [ CodeableConcept ] ... ) ; # 0..* E.g. Education, Treatment, Assessment, etc fhir:author ( [ ContactDetail ] ... ) ; # 0..* Who authored the content fhir:editor ( [ ContactDetail ] ... ) ; # 0..* Who edited the content fhir:reviewer ( [ ContactDetail ] ... ) ; # 0..* Who reviewed the content fhir:endorser ( [ ContactDetail ] ... ) ; # 0..* Who endorsed the content fhir:relatedArtifact ( [ RelatedArtifact ] ... ) ; # 0..* Additional documentation, citations, etc fhir:library ( [ canonical(Library) ] ... ) ; # 0..* Logic used by the activity definition fhir:kind [ code ] ; # 0..1 Kind of resource fhir:profile [ canonical(StructureDefinition) ] ; # 0..1 What profile the resource needs to conform to fhir:code [ CodeableConcept ] ; # 0..1 Detail type of activity fhir:intent [ code ] ; # 0..1 proposal | solicit-offer | offer-response | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option fhir:priority [ code ] ; # 0..1 routine | urgent | asap | stat fhir:doNotPerform [ boolean ] ; # 0..1 True if the activity should not be performed # timing[x] : 0..1 When activity is to occur. One of these 5 fhir:timing [ a fhir:Timing ; Timing ] fhir:timing [ a fhir:Age ; Age ] fhir:timing [ a fhir:Range ; Range ] fhir:timing [ a fhir:Duration ; Duration ] fhir:timing [ a fhir:RelativeTime ; RelativeTime ] # asNeeded[x] : 0..1 Preconditions for service. One of these 2 fhir:asNeeded [ a fhir:Boolean ; boolean ] fhir:asNeeded [ a fhir:CodeableConcept ; CodeableConcept ] fhir:location [ CodeableReference(Location) ] ; # 0..1 Where it should happen fhir:participant ( [ # 0..* Who should participate in the action fhir:type [ code ] ; # 0..1 careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson fhir:typeCanonical [ canonical(ActorDefinition|CapabilityStatement|DeviceDefinition|Group|SpecimenDefinition| StructureDefinition) ] ; # 0..1 Who or what can participate fhir:typeReference [ Reference(BiologicallyDerivedProduct|CareTeam|Device|Endpoint|HealthcareService|Location| Medication|MedicinalProductDefinition|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson|Specimen|Substance|SubstanceDefinition) ] ; # 0..1 Who or what can participate fhir:role [ CodeableConcept ] ; # 0..1 E.g. Nurse, Surgeon, Parent, etc fhir:function [ CodeableConcept ] ; # 0..1 E.g. Author, Reviewer, Witness, etc ] ... ) ; # product[x] : 0..1 What's administered/supplied. One of these 2 fhir:product [ a fhir:Reference ; Reference(Ingredient|Medication|MedicinalProductDefinition|SubstanceDefinition) ] fhir:product [ a fhir:CodeableConcept ; CodeableConcept ] fhir:quantity [ Quantity(SimpleQuantity) ] ; # 0..1 How much is administered/consumed/supplied fhir:dosage ( [ Dosage ] ... ) ; # 0..* Detailed dosage instructions fhir:bodySite ( [ CodeableConcept ] ... ) ; # 0..* What part of body to perform on fhir:specimenRequirement ( [ canonical(SpecimenDefinition) ] ... ) ; # 0..* What specimens are required to perform this action fhir:observationRequirement ( [ canonical(ObservationDefinition) ] ... ) ; # 0..* What observations are required to perform this action fhir:observationResultRequirement ( [ canonical(ObservationDefinition) ] ... ) ; # 0..* What observations must be produced by this action fhir:transform [ canonical(StructureMap) ] ; # 0..1 Transform to apply the template fhir:dynamicValue ( [ # 0..* Dynamic aspects of the definition fhir:path [ string ] ; # 1..1 The path to the element to be set dynamically fhir:expression [ Expression ] ; # 1..1 An expression that provides the dynamic value for the customization ] ... ) ; ]
Changes
since
DSTU2
from
both
R4
and
R4B
| ActivityDefinition | |
| ActivityDefinition.versionAlgorithm[x] |
|
| ActivityDefinition.subject[x] |
|
| ActivityDefinition.jurisdiction |
|
| ActivityDefinition.usage |
|
| ActivityDefinition.copyrightLabel |
|
| ActivityDefinition.kind |
|
| ActivityDefinition.intent |
|
| ActivityDefinition.timing[x] |
|
| ActivityDefinition.asNeeded[x] |
|
| ActivityDefinition.location |
|
| ActivityDefinition.participant.type |
|
| ActivityDefinition.participant.typeCanonical |
|
| ActivityDefinition.participant.typeReference |
|
| ActivityDefinition.participant.function |
|
| ActivityDefinition.specimenRequirement |
|
| ActivityDefinition.observationRequirement |
|
| ActivityDefinition.observationResultRequirement |
|
This
resource
did
not
exist
in
Release
2
See
the
Full
Difference
for
further
information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON .
Alternate
Additional
definitions:
Master
Definition
(
XML
,
+
JSON
),
,
XML
Schema
/
Schematron
(for
)
+
JSON
Schema
,
ShEx
(for
Turtle
)
,
the
spreadsheet
version
&
the
dependency
analysis
| Path |
|
Type |
|
|---|---|---|---|
| ActivityDefinition.versionAlgorithm[x] | VersionAlgorithm | Extensible | Indicates the mechanism used to compare versions to determine which is more current. |
| ActivityDefinition.status | PublicationStatus | Required |
The
lifecycle
status
of
|
| ActivityDefinition.subject[x] | ParticipantResourceTypes |
|
All Resource Types that represent participant resources |
| ActivityDefinition.jurisdiction |
![]() |
Extensible |
This value set defines a base set of codes for country, country subdivision and region for indicating where a resource is intended to be used.
Note:
The
codes
for
countries
and
country
subdivisions
are
taken
from
ISO
3166
|
| ActivityDefinition.topic | DefinitionTopic | Example |
High-level
categorization
of
the
definition,
used
for
searching,
sorting,
and
|
| ActivityDefinition.kind | RequestResourceTypes |
|
All Resource Types that represent request resources |
| ActivityDefinition.code | ProcedureCodesSNOMEDCT | Example |
Procedure Code: All SNOMED CT procedure codes. |
| ActivityDefinition.intent | RequestIntent | Required |
Codes indicating the degree of authority/intentionality associated with a request. |
| ActivityDefinition.priority | RequestPriority | Required |
Identifies
the
level
of
importance
to
be
assigned
to
actioning
the
|
| ActivityDefinition.asNeeded[x] | SNOMEDCTMedicationAsNeededReasonCodes | Example |
This value set includes all clinical findings from SNOMED CT - provided as an exemplar value set. |
| ActivityDefinition.participant.type | ActionParticipantType | Required |
The
type
of
participant
|
| ActivityDefinition.participant.role |
ActionParticipantRole
![]() |
|
Either a practitioner role or a relationship type. Note from UTG import - may have been a temporary entry that subsequently disappeared from the FHIR source; unable to locate. Version set to 0.1.0 |
| ActivityDefinition.participant.function |
|
Example |
The function performed by the participant for the action. |
| ActivityDefinition.product[x] |
|
Example |
This
value
set
includes
all
drug
or
medicament
substance
codes
and
all
pharmaceutical/biologic
products
from
SNOMED
CT
|
| ActivityDefinition.bodySite |
|
Example |
This
value
set
includes
all
codes
from
SNOMED
CT
|
| UniqueKey | Level | Location | Description | Expression |
cnl-0
| Warning | (base) | Name should be usable as an identifier for the module by machine processing applications such as code generation |
name.exists()
implies
name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$')
|
cnl-1
| Warning | ActivityDefinition.url | URL should not contain | or # - these characters make processing canonical references problematic | exists() implies matches('^[^|# ]+$') |
adf-2
| Warning | ActivityDefinition.relatedArtifact | Dependencies of an ActivityDefinition should reference a resource | type in ('depends-on' | 'part-of') implies ((resource.exists() xor resourceReference.exists()) or (artifact is canonical xor artifact is Reference)) |
adf-3
| Warning | ActivityDefinition.relatedArtifact | ActivityDefinition should not have components | type != 'composed-of' |
An
ActivityDefinition
resource
provides
a
description,
or
template,
of
an
action
to
performed.
These
actions
can
be
purely
text-based
descriptions
of
the
action
to
be
performed,
only
interpretable
by
a
human
user,
or
they
can
be
structured
definitions
with
enough
information
to
construct
a
resource
to
represent
the
request
or
activity
directly.
This
process
of
converting
the
ActivityDefinition
into
a
specific
request
resource
in
a
particular
context
is
performed
with
the
$apply
operation.
In
the
simplest
case,
the
process
maps
the
elements
specified
in
the
ActivityDefinition
to
the
corresponding
elements
on
the
request
a
resource
of
the
appropriate
type,
using
the
kind
element
of
the
definition
to
determine
the
type
of
resource
to
be
created.
More
dynamic
scenarios
can
be
achieved
in
one
of
two
ways,
either
by
providing
dynamicValue
expressions,
or
by
specifying
a
StructureMap
that
transforms
the
definition
into
the
appropriate
request
resource.
Note
that
systems
will
likely
vary
widely
in
the
degree
of
support
they
provide
for
the
$apply
operation.
In
particular,
the
fact
that
a
system
supports
applying
definitions
of
one
category,
does
not
imply
that
it
supports
applying
definitions
for
all
categories.
For
example,
a
service
focused
on
medication
order
sets
may
have
sophisticated
support
for
MedicationRequest
activities,
but
no
support
at
all
for
the
ProcedureRequest
ServiceRequest
activities.
The
following
diagram
illustrates
the
relationship
between
the
PlanDefinition
and
ActivityDefinition
resources,
as
well
as
a
typical
realization
application
to
CarePlan,
RequestGroup,
RequestOrchestration,
and
Request
resources:
To accommodate the variability in systems and use cases, this specification is not prescriptive about exactly how an ActivityDefinition is applied to produce target request resources. However, the approach depicted above provides a general framework for the process, and the following steps provide more detail on the potential approach:
kind
element
and
focused
on
the
Patient
in
context
status
of
the
target
resource
to
draft
intent
of
the
target
resource
to
code
,
timing
,
doNotPerform
,
product
,
quantity
,
dosage
,
and
so
on
participant
element
based
on
the
user
in
context
location
element
based
on
the
location
in
context
transform
element
is
dynamicValue
elements
(in
the
order
in
which
they
appear
in
dynamicValue.path
element)
Note
that
the
parameters
to
resolve
the
overlap
$apply
operation
are
available
within
dynamicValue
CQL
and
this
will
likely
FHIRPath
expressions
as
context
variables,
accessible
by
the
name
of
the
parameter
prefixed
with
a
percent
(%)
symbol.
For
example,
to
access
the
subject
given
to
the
apply,
use
the
expression
%subject
.
In addition, the subject element establishes the context for CQL expressions evaluated during the operation, as discussed in the Evaluation Context discussion in the Using Expressions topic.
Note
that
result
of
this
operation
is
transient
(i.e.
none
of
the
resources
created
by
the
operation
are
persisted
in
some
minor
changes
the
server,
they
are
all
returned
as
contained
resources
in
the
result).
The
result
effectively
represents
a
proposed
set
of
activities,
and
it
is
up
to
the
structures.
caller
to
determine
whether
and
how
those
activities
are
actually
carried
out.
The
kind
element
may
only
specify
Request
resource
types
to
facilitate
considering
user
input
as
part
of
processing
the
result
of
any
automated
clinical
reasoning
processes.
To
support
creation
of
event
resources,
such
as
Observations,
RiskAssessments,
and
DetectedIssues,
use
a
Task
resource
with
the
focus
of
the
task
set
to
the
event
resource
to
be
created.
Because
the
ActivityDefinition
resource
can
be
used
to
describe
many
different
types
of
request
resources,
profiles
of
the
resource
will
be
useful
in
communicating
additional
constraints
and
expectations
about
how
the
resource
should
be
used
in
a
particular
context.
For
example,
a
profile
of
ActivityDefinition
may
specify
that
it
is
intended
to
describe
medication
orders
within
an
order
set.
Such
a
profile
would
indicate
that
the
quantity
element
should
not
be
used,
but
the
dosage
element
must
be.
The following sections provide FHIR Mapping Language snippets for mapping ActivityDefinition instances to each kind of Request resource that can be created.
map "http://research.philips.com/fhir/r4/mapping/AdToAppointment" =
"R3 Parameters of Activitydefinition.$apply to Appointment"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/Appointment" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.participant as participant then {
doActor: for sbj as sbj make participant.actor=sbj
doStatus: for sbj as sbj make participant.status ="needs-action"
}
}
// "practitioner" : for src.parameter as p where name='practitioner' then{
// do: for p.value as prac make tgt.requester = prac
// }
"organization" : for src as src where
parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
then{
do: for src.parameter as p where name='organization' then{
do: for p.value as org make tgt.requester = org
}
}
// "encounter" : for src.parameter as p where name='encounter' then {
// do: for p.value as enc make tgt.encounter = enc
// }
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: ServiceRequest as target
// "refAd" : for src.url as vvv make tgt.basedOn = vvv
// "ad.code" : for src.code as vvv make tgt.code = vvv // could be serviceCategory or specialty --> unclear
// "intent" : for src make tgt.intent = "proposal"
"ad.priority" : for src where priority='routine' then {
prio: for src make tgt.priority = 9
}
"ad.priority" : for src.priority as priority where priority='urgent' then {
prio: for priority make tgt.priority = 7
}
"ad.priority" : for src.priority as priority where priority='asap' then {
prio: for priority make tgt.priority = 4
}
"ad.priority" : for src.priority as priority where priority='stat' then {
prio: for priority make tgt.priority = 1
}
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
"ad.timingP1" : for src.timing :Period as period make tgt.start = period.start
"ad.timingP2" : for src.timing :Period as period make tgt.end = period.end
"ad.timingD" : for src.timing :Duration as duration make tgt.minutesDuration = duration
"ad.timingDT" : for src.timing :dateTime as dt make tgt.start = dt
"ad.location" : for src.location as location make tgt.participant as participant then {
doActor: for location make participant.actor = location
doStatus: for location make participant.status = "needs-action"
}
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as vvv check quantity.empty()
// "ad.bodysite" : for src.bodySite as vvv make tgt.bodySite = vvv
// "ad.dosage" : for src as vvv check dosage.empty()
// "intent" : for src make tgt.intent = "proposal"
"status" : for src make tgt.status = "proposed"
"created" : for src make tgt.created = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToAppointmentResponse" =
"R3 Parameters of Activitydefinition.$apply to AppointmentResponse"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/AppointmentResponse" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
// "subject" : for src.parameter as p where name='subject' then {
// do: for p.value as sbj make tgt.subject = sbj
// }
//
// "practitioner" : for src.parameter as p where name='practitioner' then{
// do: for p.value as prac make tgt.requester = prac
// }
//
// "organization" : for src as src where
// parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
// then{
// do: for src.parameter as p where name='organization' then{
// do: for p.value as org make tgt.requester = org
// }
// }
//
// "encounter" : for src.parameter as p where name='encounter' then {
// do: for p.value as enc make tgt.encounter = enc
// }
// unsure who the actor is. No default makes sense - leave empty.
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: ServiceRequest as target
// "refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
"status" : for src make tgt.participantStatus = "needs-action"
// "intent" : for src make tgt.intent = "proposal"
// "ad.code" : for src.code as vvv make tgt.code = vvv
// "ad.timing" : for src.timing as timing make tgt.start = timing // unsure how to map on start/end
// "ad.location" : for src.location as vvv make tgt.locationReference = vvv
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as vvv check quantity.empty()
// "ad.bodysite" : for src.bodySite as vvv make tgt.bodySite = vvv
// "ad.dosage" : for src as vvv check dosage.empty()
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToCarePlan" =
"R3 Parameters of Activitydefinition.$apply to CarePlan"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/CarePlan" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.subject = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.author = prac
}
"organization" : for src as src where
parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
then{
do: for src.parameter as p where name='organization' then{
do: for p.value as org make tgt.author = org
}
}
"encounter" : for src.parameter as p where name='encounter' then {
do: for p.value as enc make tgt.encounter = enc
}
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: ServiceRequest as target
"ad.code" : for src.code as vvv make tgt.category = vvv
// "ad.priority" : for src.priority as prio make tgt.priority = vvv
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
"ad.timing" : for src.timing as timing make tgt.period = timing
// "ad.location" : for src.location as location make tgt.location=location
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as vvv check quantity.empty()
// "ad.bodysite" : for src.bodySite as vvv make tgt.bodySite = vvv
// "ad.dosage" : for src as vvv check dosage.empty()
"refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
"status" : for src make tgt.status = "draft"
"intent" : for src make tgt.intent = "proposal"
"created" : for src make tgt.created = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToClaim" =
"R3 Parameters of Activitydefinition.$apply to Claim"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/Claim" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.patient = sbj
}
"practitioner1" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.enterer = prac
}
"organization" : for src.parameter as p where name='organization' then{
do: for p.value as org make tgt.provider = org
}
// "encounter" : for src.parameter as p where name='encounter' then {
// do: for p.value as enc make tgt.encounter = enc
// }
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: Claim as target
"ad.code" : for src.code as vvv make tgt.type = vvv
"ad.priority1" : for src where priority.exists() then {
do: for src.priority as priority make tgt.priority as tgtprioCc then {
doCoding: for priority make tgtprioCc.coding as tgtCoding then {
system: for priority make tgtCoding.system = "http://hl7.org/fhir/ValueSet/request-priority"
code: for priority make tgtCoding.code = priority
}
}
}
"ad.priority2" : for src where priority.exists().not() then {
do: for src make tgt.priority as tgtprioCc then {
doCoding: for src make tgtprioCc.coding as tgtCoding then {
system: for src make tgtCoding.system = "http://hl7.org/fhir/ValueSet/request-priority"
code: for src make tgtCoding.code = "normal"
}
}
}
// "ad.timing" : for src.timing as timing make tgt.period = timing
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
"ad.location" : for src.location as location make tgt.facility = location
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as quantity make tgt.quantity = quantity
// "ad.bodysite" : for src.bodySite as bodysite make tgt.bodySite = bodysite
// "ad.dosage" : for src as vvv check dosage.empty()
// "refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
"status" : for src make tgt.status = "draft"
"use" : for src make tgt.use = "claim"
"created" : for src make tgt.created = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToCommunicationRequest" =
"R3 Parameters of Activitydefinition.$apply to CommunicationRequest"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/CommunicationRequest" as target
group main
input src: Parameters as source
input tgt: ProcedureRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.subject = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.requester = prac
}
"organization" : for src.parameter as p where
parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
then {
do: for src.parameter as p where name='organization' then{
do: for p.value as org make tgt.requester = org
}
}
"encounter" : for src.parameter as p where name='encounter' then {
do: for p.value as enc make tgt.encounter = enc
}
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: ProcedureRequest as target
"basedOn" : for src make tgt.basedOn = reference( src )
"status" : for src make tgt.status = "draft"
"authoredOn" : for src make tgt.authoredOn = evaluate( src, now() )
"ad.code" : for src.code as vvv make tgt.reasonCode = vvv
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
"ad.timing" : for src.timing as vvv make tgt.occurrence = vvv
// "ad.location" : for src as vvv check location.empty()
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as vvv check quantity.empty()
// "ad.bodysite" : for src as vvv check bodysite.empty()
// "ad.dosage" : for src as vvv check dosage.empty()
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToContract" =
"R3 Parameters of Activitydefinition.$apply to Contract"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/Contract" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.subject = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.author = prac
}
"organization" : for src.parameter as p where name='organization' then{
do: for p.value as org make tgt.authority = org
}
// "encounter" : for src.parameter as p where name='encounter' then {
// do: for p.value as enc make tgt.context = enc
// }
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: Contract as target
"ad.code" : for src.code as code make tgt.scope = code
// "ad.priority" : for src as priority make tgt.priority as tgtprioCc
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
"ad.timing" : for src.timing as timing make tgt.applies = timing
"ad.location" : for src.location as location make tgt.site = location
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as quantity make tgt.quantity = quantity
// "ad.bodysite" : for src.bodySite as bodysite make tgt.bodySite = bodysite
// "ad.dosage" : for src as vvv check dosage.empty()
// "refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
// "status" : for src make tgt.status = "draft"
// "use" : for src make tgt.use = "claim"
// "created" : for src make tgt.created = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToDeviceRequest" =
"R3 Parameters of Activitydefinition.$apply to DeviceRequest"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/DeviceRequest" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.subject = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.requester = prac
}
"organization" : for src as src where
parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
then{
do: for src.parameter as p where name='organization' then{
do: for p.value as org make tgt.requester = org
}
}
"encounter" : for src.parameter as p where name='encounter' then {
do: for p.value as enc make tgt.encounter = enc
}
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: DeviceRequest as target
"ad.code" : for src.code as code make tgt.code = code
"ad.priority" : for src.priority as vvv make tgt.priority = vvv
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
"ad.timing" : for src.timing as timing make tgt.occurrence = timing
// "ad.location" : for src.location as location make tgt.site = location
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as quantity make tgt.quantity = quantity
// "ad.bodysite" : for src.bodySite as bodysite make tgt.bodySite = bodysite
// "ad.dosage" : for src as vvv check dosage.empty()
"refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
"intent" : for src make tgt.intent = "proposal"
// "use" : for src make tgt.use = "claim"
// "created" : for src make tgt.created = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToEnrollmentRequest" =
"R3 Parameters of Activitydefinition.$apply to EnrollmentRequest"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/EnrollmentRequest" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.candidate = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.provider = prac
}
// "organization" : for src as src where
// parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
// then{
// do: for src.parameter as p where name='organization' then{
// do: for p.value as org make tgt.requester = org
// }
// }
// "encounter" : for src.parameter as p where name='encounter' then {
// do: for p.value as enc make tgt.encounter = enc
// }
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: EnrollmentRequest as target
// "ad.code" : for src.code as code make tgt.code = code
// "ad.priority" : for src.priority as priority make tgt.priority as priority
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
// "ad.timing" : for src.timing as timing make tgt.occurrence = timing
// "ad.location" : for src.location as location make tgt.site = location
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as quantity make tgt.quantity = quantity
// "ad.bodysite" : for src.bodySite as bodysite make tgt.bodySite = bodysite
// "ad.dosage" : for src as vvv check dosage.empty()
// "refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
// "intent" : for src make tgt.intent = "proposal"
// "use" : for src make tgt.use = "claim"
"created" : for src make tgt.created = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToImmunizationRecommendation" =
"R3 Parameters of Activitydefinition.$apply to ImmunizationRecommendation"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/ImmunizationRecommendation" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.patient = sbj
}
// "practitioner" : for src.parameter as p where name='practitioner' then{
// do: for p.value as prac make tgt.provider = prac
// }
"organization" : for src as src where name='organization' then{
do: for p.value as organization make tgt.authority = organization
}
// "encounter" : for src.parameter as p where name='encounter' then {
// do: for p.value as enc make tgt.encounter = enc
// }
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: ImmunizationRecommendation as target
// "ad.code" : for src.code as code make tgt.code = code
// "ad.priority" : for src.priority as priority make tgt.priority as priority
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
// "ad.timing" : for src.timing as timing make tgt.occurrence = timing
// "ad.location" : for src.location as location make tgt.site = location
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as quantity make tgt.quantity = quantity
// "ad.bodysite" : for src.bodySite as bodysite make tgt.bodySite = bodysite
// "ad.dosage" : for src as vvv check dosage.empty()
// "refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
// "intent" : for src make tgt.intent = "proposal"
// "use" : for src make tgt.use = "claim"
"created" : for src make tgt.date = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToMedicationRequest" =
"R3 Parameters of Activitydefinition.$apply to MedicationRequest"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/MedicationRequest" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.subject = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
doReq: for p.value as prac make tgt.requester = prac
doRec: for p.value as prac make tgt.recorder = prac
}
"organization" : for src as src where
parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
then{
do: for src.parameter as p where name='organization' then{
do: for p.value as org make tgt.requester = org
}
}
"encounter" : for src.parameter as p where name='encounter' then {
do: for p.value as enc make tgt.encounter = enc
}
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: MedicationRequest as target
"ad.code" : for src.code as code make tgt.reasonCode = code
"ad.priority" : for src.priority as priority make tgt.priority = priority
"ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.doNotPerform as doNotPerform
// "ad.timing" : for src.timing as timing make tgt.occurrence = timing
// "ad.location" : for src.location as location make tgt.site = location
"ad.product" : for src.product as product make tgt.medication = product
// "ad.quantity" : for src.quantity as quantity make tgt.quantity as tgt
// "ad.bodysite" : for src.bodySite as bodysite make tgt.bodySite = bodysite
"ad.dosage" : for src.dosage as dosage make tgt.dosageInstruction = dosage
dispenseRequest: for src make tgt.dispenseRequest as dispenseRequest then {
dr.q: for src.quantity as quantity make dispenseRequest.quantity = quantity
dr.di: for src.timing : Duration as timing make dispenseRequest.dispenseInterval = timing
dr.di: for src.timing : Period as timing make dispenseRequest.validityPeriod = timing
}
"refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
"intent" : for src make tgt.intent = "proposal"
"status" : for src make tgt.status = "active"
"created" : for src make tgt.authoredOn = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToNutritionOrder" =
"R3 Parameters of Activitydefinition.$apply to NutritionOrder"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/NutritionOrder" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.patient = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.orderer = prac
}
// "organization" : for src as src where
// parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
// then{
// do: for src.parameter as p where name='organization' then{
// do: for p.value as org make tgt.requester = org
// }
// }
"encounter" : for src.parameter as p where name='encounter' then {
do: for p.value as enc make tgt.encounter = enc
}
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: NutritionOrder as target
"ad.code1" : for src where doNotPerform then {
prMod: for src.code as code make tgt.foodPreferenceModifier = code
}
"ad.code2" : for src where doNotPerform.not() then {
prMod: for src.code as code make tgt.excludeFoodModifier = code
}
// "ad.priority" : for src.priority as priority make tgt.priority as priority
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
// "ad.timing" : for src.timing as timing make tgt.occurrence = timing
// "ad.location" : for src.location as location make tgt.site = location
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as quantity make tgt.quantity = quantity
// "ad.bodysite" : for src.bodySite as bodysite make tgt.bodySite = bodysite
// "ad.dosage" : for src as vvv check dosage.empty()
"refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
"intent" : for src make tgt.intent = "proposal"
"status" : for src make tgt.status = "active"
"created" : for src make tgt.dateTime = evaluate( src, now() )
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToServiceRequest" =
"R3 Parameters of Activitydefinition.$apply to ServiceRequest"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/ServiceRequest" as target
group main
input src: Parameters as source
input tgt: ReferralRequest as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.subject = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.requester = prac
}
"organization" : for src as src where
parameter.where( name='practitioner').exists().not() and parameter.where( name='organization').exists()
then{
do: for src.parameter as p where name='organization' then{
do: for p.value as org make tgt.requester = org
}
}
"encounter" : for src.parameter as p where name='encounter' then {
do: for p.value as enc make tgt.encounter = enc
}
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: ServiceRequest as target
"refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
"status" : for src make tgt.status = "draft"
"intent" : for src make tgt.intent = "proposal"
"ad.code" : for src.code as vvv make tgt.code = vvv
"ad.timing" : for src.timing as vvv make tgt.occurrence = vvv
"ad.location" : for src.location as vvv make tgt.locationReference = vvv
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as vvv check quantity.empty()
"ad.bodysite" : for src.bodySite as vvv make tgt.bodySite = vvv
// "ad.dosage" : for src as vvv check dosage.empty()
endgroup
map "http://research.philips.com/fhir/r4/mapping/Task" =
"R3 Parameters of Activitydefinition.$apply to Task"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/Task" as target
group main
input src: Parameters as source
input tgt: Task as target
"for" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.for = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.requester as requester then{
do: for prac make requester.agent = prac
}
}
"organization" : for src.parameter as p where name='organization' then {
do: for p.value as org make tgt.requester as requester then {
do: for org make requester.onBehalfOf = org
}
}
"encounter" : for src.parameter as p where name='encounter' then {
do: for p.value as enc make tgt.encounter = enc
}
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: ProcedureRequest as target
// "basedOn" : for src make tgt.basedOn = reference( src )
refAd : for src.url as can make tgt.instantiatesCanonical = can
"status" : for src make tgt.status = "draft"
"ad.code" : for src.code as vvv make tgt.code = vvv
// "ad.timing" : for src as vvv check timing.empty() ==>restriction.period
// "ad.location" : for src as vvv check location.empty()
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src as vvv check quantity.empty()
// "ad.bodysite" : for src as vvv check bodysite.empty()
// "ad.dosage" : for src as vvv check dosage.empty()
// "ad.relatedart": for src.relatedArtifact as relatedArtifact make tgt.payload as payload then {
// do: for relatedArtifact as relatedArtifact make payload.content as content then {
// "content": for relatedArtifact as vvv make content = vvv
// "display" : for relatedArtifact.display as vvv make content
// "citation": for relatedArtifact as vvv make content = vvv
// "url" : for relatedArtifact as vvv make content = vvv
// "document": for relatedArtifact as vvv make content = vvv
// "resource": for relatedArtifact as vvv make content = vvv
// }
// }
endgroup
map "http://research.philips.com/fhir/r4/mapping/AdToVisionPrescription" =
"R3 Parameters of Activitydefinition.$apply to VisionPrescription"
uses "http://hl7.org/fhir/StructureDefinition/Parameters" as source
uses "http://hl7.org/fhir/StructureDefinition/VisionPrescription" as target
group main
input src: Parameters as source
input tgt: VisionPrescription as target
"subject" : for src.parameter as p where name='subject' then {
do: for p.value as sbj make tgt.patient = sbj
}
"practitioner" : for src.parameter as p where name='practitioner' then{
do: for p.value as prac make tgt.prescriber = prac
}
// "organization" : for src.parameter as p where name='organization' then{
// do: for p.value as org make tgt.requester =org
// }
"encounter" : for src.parameter as p where name='encounter' then {
do: for p.value as enc make tgt.encounter = enc
}
actded: for src.parameter as p where name='source' then {
do: for p.resource as ad then createActDef( ad, tgt )
}
endgroup
group createActDef
input src: ActivityDefinition as source
input tgt: VisionPrescription as target
// "ad.code" : for src.code as code make tgt.item = code
// "ad.priority" : for src.priority as priority make tgt.priority = priority
// "ad.doNotPerform" : for src.doNotPerform as doNotPerform make tgt.priority as priority
// "ad.timing" : for src.timing as timing make tgt.occurrence = timing
// "ad.location" : for src.location as location make tgt.site = location
// "ad.product" : for src as vvv check product.empty()
// "ad.quantity" : for src.quantity as quantity make tgt.quantity = quantity
// "ad.bodysite" : for src.bodySite as bodysite make tgt.bodySite = bodysite
// "ad.dosage" : for src as vvv check dosage.empty()
// "refAd" : for src.url as vvv make tgt.instantiatesCanonical = vvv
"status" : for src make tgt.status = "draft"
"created" : for src make tgt.created = evaluate( src, now() )
endgroup
Search parameters for this resource. See also the full list of search parameters for this resource , and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
| Name | Type | Description | Expression | In Common |
| composed-of | reference | What resource is being referenced |
ActivityDefinition.relatedArtifact.where(type='composed-of').resource
(Any) |
5 Resources |
| context | token | A use context assigned to the activity definition | (ActivityDefinition.useContext.value.ofType(CodeableConcept)) | 24 Resources |
| context-quantity | quantity | A quantity- or range-valued use context assigned to the activity definition | (ActivityDefinition.useContext.value.ofType(Quantity)) | (ActivityDefinition.useContext.value.ofType(Range)) | 24 Resources |
| context-type | token | A type of use context assigned to the activity definition | ActivityDefinition.useContext.code | 24 Resources |
| context-type-quantity | composite | A use context type and quantity- or range-based value assigned to the activity definition |
On
ActivityDefinition.useContext:
context-type: code context-quantity: value.ofType(Quantity) | value.ofType(Range) | 24 Resources |
| context-type-value | composite | A use context type and value assigned to the activity definition |
On
ActivityDefinition.useContext:
context-type: code context: value.ofType(CodeableConcept) | 24 Resources |
| date | date | The activity definition publication date | ActivityDefinition.date | 25 Resources |
| depends-on | reference | What resource is being referenced |
ActivityDefinition.relatedArtifact.where(type='depends-on').resource
|
ActivityDefinition.library
( Library , Any) |
5 Resources |
| derived-from | reference | What resource is being referenced |
ActivityDefinition.relatedArtifact.where(type='derived-from').resource
(Any) |
9 Resources |
| description | string | The description of the activity definition | ActivityDefinition.description | 23 Resources |
| effective | date | The time during which the activity definition is intended to be in use | ActivityDefinition.effectivePeriod | 10 Resources |
| experimental | token | Whether the ActivityDefinition is experimental | ActivityDefinition.experimental | |
| identifier | token | External identifier for the activity definition | ActivityDefinition.identifier | 28 Resources |
| jurisdiction | token |
|
ActivityDefinition.jurisdiction | 21 Resources |
| kind | token | The kind of activity definition | ActivityDefinition.kind | |
| name | string | Computationally friendly name of the activity definition | ActivityDefinition.name | 23 Resources |
| predecessor | reference | What resource is being referenced |
ActivityDefinition.relatedArtifact.where(type='predecessor').resource
(Any) |
9 Resources |
| publisher | string | Name of the publisher of the activity definition | ActivityDefinition.publisher | 25 Resources |
| status | token | The current status of the activity definition | ActivityDefinition.status | 28 Resources |
| subject-canonical |
reference
|
The subject of the ActivityDefinition when expressed as a canonical |
ActivityDefinition.subject
as
canonical
( AdministrableProductDefinition , Group , SubstanceDefinition , ManufacturedItemDefinition , MedicinalProductDefinition , EvidenceVariable , PackagedProductDefinition ) | |
| subject-code | token | The subject of the ActivityDefinition when expressed as a code | ActivityDefinition.subject as CodeableConcept | |
| subject-reference | reference | The subject of the ActivityDefinition when expressed as a reference |
ActivityDefinition.subject
as
Reference
( AdministrableProductDefinition , Group , SubstanceDefinition , ManufacturedItemDefinition , MedicinalProductDefinition , EvidenceVariable , PackagedProductDefinition ) | |
| successor | reference | What resource is being referenced |
ActivityDefinition.relatedArtifact.where(type='successor').resource
(Any) |
5 Resources |
| title | string | The human-friendly name of the activity definition | ActivityDefinition.title | 23 Resources |
| topic | token | Topics associated with the module | ActivityDefinition.topic | 10 Resources |
| url | uri | The uri that identifies the activity definition | ActivityDefinition.url | 29 Resources |
| version | token | The business version of the activity definition | ActivityDefinition.version | 26 Resources |