ActivityDefinition
Introduction
Scope and Usage
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 Applying an ActivityDefinition topic below.
Boundaries and Relationships
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 ServiceRequest and MedicationRequest.
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.
Background and Context
Provides additional detail on exactly how the resource is to be used
Notes
Applying an ActivityDefinition
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 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 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 ServiceRequest activities.
The following diagram illustrates the relationship between the PlanDefinition and ActivityDefinition resources, as well as a typical application to CarePlan, 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:
- Create the target resource of the type specified by the
kindelement and focused on the Patient in context - Set the
statusof the target resource to draft - Set the
intentof the target resource to option - Apply the structural elements of the ActivityDefinition to the target resource such as
code,timing,doNotPerform,product,quantity,dosage, and so on - Resolve the
participantelement based on the user in context - Resolve the
locationelement based on the location in context - If the
transformelement is specified, apply the transform to the resource. Note that the referenced StructureMap may actually construct the resource, rather than taking an instance. See the StructureMap for more information - Apply any
dynamicValueelements (in the order in which they appear in the ActivityDefinition resource) by evaluating the expression and setting the value of the appropriate element of the target resource (as specified by thedynamicValue.pathelement)
Note that the parameters to the $apply operation are available within dynamicValue CQL and 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 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 caller to determine whether and how those activities are actually carried out.
Event Resources
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.
Profiling ActivityDefinition
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.
ActivityDefinition Structure Mapping
The following sections provide FHIR Mapping Language snippets for mapping ActivityDefinition instances to each kind of Request resource that can be created.
Appointment
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
AppointmentResponse
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
CarePlan
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
Claim
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
CommunicationRequest
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
Contract
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
DeviceRequest
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
EnrollmentRequest
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
ImmunizationRecommendation
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
MedicationRequest
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
NutritionOrder
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
ServiceRequest
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
Task
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
VisionPrescription
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
StructureDefinition
Elements (Simplified)
- ActivityDefinition [0..*]: - The definition of a specific activity to be taken, independent of any particular patient or context
- ActivityDefinition.url [0..1]: uri Canonical identifier for this activity definition, represented as a URI (globally unique)
- ActivityDefinition.identifier [0..*]: Identifier Additional identifier for the activity definition
- ActivityDefinition.version [0..1]: string Business version of the activity definition
- ActivityDefinition.versionAlgorithm[x] [0..1]: string, Coding extensible:version-algorithm How to compare versions
- ActivityDefinition.name [0..1]: string Name for this activity definition (computer friendly)
- ActivityDefinition.title [0..1]: string Name for this activity definition (human friendly)
- ActivityDefinition.subtitle [0..1]: string Subordinate title of the activity definition
- ActivityDefinition.status [1..1]: code required:publication-status draft | active | retired | unknown
- ActivityDefinition.experimental [0..1]: boolean For testing only - never for real usage
- ActivityDefinition.subject[x] [0..1]: CodeableConcept, [Reference(Group](/Reference(Group), MedicinalProductDefinition, SubstanceDefinition, AdministrableProductDefinition, ManufacturedItemDefinition, PackagedProductDefinition)), canonical extensible:participant-resource-types Type of individual the activity definition is intended for
- ActivityDefinition.date [0..1]: dateTime Date last changed
- ActivityDefinition.publisher [0..1]: string Name of the publisher/steward (organization or individual)
- ActivityDefinition.contact [0..*]: ContactDetail Contact details for the publisher
- ActivityDefinition.description [0..1]: markdown Natural language description of the activity definition
- ActivityDefinition.useContext [0..*]: UsageContext The context that the content is intended to support
- ActivityDefinition.jurisdiction [0..*]: CodeableConcept extensible:jurisdiction Jurisdiction of the authority that maintains the activity definition (if applicable)
- ActivityDefinition.purpose [0..1]: markdown Why this activity definition is defined
- ActivityDefinition.usage [0..1]: markdown Describes the clinical usage of the activity definition
- ActivityDefinition.copyright [0..1]: markdown Notice about intellectual property ownership, can include restrictions on use
- ActivityDefinition.copyrightLabel [0..1]: string Copyright holder and year(s)
- ActivityDefinition.approvalDate [0..1]: date When the activity definition was approved by publisher
- ActivityDefinition.lastReviewDate [0..1]: date When the activity definition was last reviewed by the publisher
- ActivityDefinition.effectivePeriod [0..1]: Period When the activity definition is expected to be used
- ActivityDefinition.topic [0..*]: CodeableConcept example:definition-topic E.g. Education, Treatment, Assessment, etc
- ActivityDefinition.author [0..*]: ContactDetail Who authored the content
- ActivityDefinition.editor [0..*]: ContactDetail Who edited the content
- ActivityDefinition.reviewer [0..*]: ContactDetail Who reviewed the content
- ActivityDefinition.endorser [0..*]: ContactDetail Who endorsed the content
- ActivityDefinition.relatedArtifact [0..*]: RelatedArtifact Additional documentation, citations, etc
- ActivityDefinition.library [0..*]: canonical Logic used by the activity definition
- ActivityDefinition.kind [0..1]: code required:request-resource-types Kind of resource
- ActivityDefinition.profile [0..1]: canonical What profile the resource needs to conform to
- ActivityDefinition.code [0..1]: CodeableConcept example:procedure-code Detail type of activity
- ActivityDefinition.intent [0..1]: code required:request-intent proposal | solicit-offer | offer-response | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
- ActivityDefinition.priority [0..1]: code required:request-priority routine | urgent | asap | stat
- ActivityDefinition.doNotPerform [0..1]: boolean True if the activity should not be performed
- ActivityDefinition.timing[x] [0..1]: Timing, Age, Range, Duration, RelativeTime When activity is to occur
- ActivityDefinition.asNeeded[x] [0..1]: boolean, CodeableConcept example:medication-as-needed-reason Preconditions for service
- ActivityDefinition.location [0..1]: CodeableReference Where it should happen
- ActivityDefinition.participant [0..*]: BackboneElement Who should participate in the action
- ActivityDefinition.participant.type [0..1]: code required:action-participant-type careteam | device | group | healthcareservice | location | organization | patient | practitioner | practitionerrole | relatedperson
- ActivityDefinition.participant.typeCanonical [0..1]: canonical Who or what can participate
- ActivityDefinition.participant.typeReference [0..1]: [Reference(BiologicallyDerivedProduct](/Reference(BiologicallyDerivedProduct), CareTeam, Device, Endpoint, HealthcareService, Location, Medication, MedicinalProductDefinition, Organization, Patient, Practitioner, PractitionerRole, RelatedPerson, Specimen, Substance, SubstanceDefinition)) Who or what can participate
- ActivityDefinition.participant.role [0..1]: CodeableConcept example:action-participant-role E.g. Nurse, Surgeon, Parent, etc
- ActivityDefinition.participant.function [0..1]: CodeableConcept example:action-participant-function E.g. Author, Reviewer, Witness, etc
- ActivityDefinition.product[x] [0..1]: [Reference(Medication](/Reference(Medication), MedicinalProductDefinition, Ingredient, SubstanceDefinition)), CodeableConcept example:medication-codes What's administered/supplied
- ActivityDefinition.quantity [0..1]: Quantity(SimpleQuantity) How much is administered/consumed/supplied
- ActivityDefinition.dosage [0..*]: Dosage Detailed dosage instructions
- ActivityDefinition.bodySite [0..*]: CodeableConcept example:body-site What part of body to perform on
- ActivityDefinition.specimenRequirement [0..*]: canonical What specimens are required to perform this action
- ActivityDefinition.observationRequirement [0..*]: canonical What observations are required to perform this action
- ActivityDefinition.observationResultRequirement [0..*]: canonical What observations must be produced by this action
- ActivityDefinition.transform [0..1]: canonical Transform to apply the template
- ActivityDefinition.dynamicValue [0..*]: BackboneElement Dynamic aspects of the definition
- ActivityDefinition.dynamicValue.path [1..1]: string The path to the element to be set dynamically
- ActivityDefinition.dynamicValue.expression [1..1]: Expression An expression that provides the dynamic value for the customization
Mappings
- ActivityDefinition Mappings — 96 mapping entries
Operations
- apply — Apply — The apply operation applies a definition in a specific context
- data-requirements — Data Requirements — The data-requirements operation aggregates and returns the parameters and data requirements for the activity definition and all its dependencies as a single module definition library
Resource Packs
list-ActivityDefinition-packs.xml
<?xml version="1.0" encoding="UTF-8"?>
<List xmlns="http://hl7.org/fhir">
<id value="ActivityDefinition-packs"/>
<status value="current"/>
<mode value="working"/>
</List>
Search Parameters
- composed-of — reference — What resource is being referenced —
ActivityDefinition.relatedArtifact.where(type='composed-of').resource - context — token — A use context assigned to the activity definition —
(ActivityDefinition.useContext.value.ofType(CodeableConcept)) - 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)) - context-type — token — A type of use context assigned to the activity definition —
ActivityDefinition.useContext.code - context-type-quantity — composite — A use context type and quantity- or range-based value assigned to the activity definition —
ActivityDefinition.useContext - context-type-value — composite — A use context type and value assigned to the activity definition —
ActivityDefinition.useContext - date — date — The activity definition publication date —
ActivityDefinition.date - depends-on — reference — What resource is being referenced —
ActivityDefinition.relatedArtifact.where(type='depends-on').resource | ActivityDefinition.library - derived-from — reference — What resource is being referenced —
ActivityDefinition.relatedArtifact.where(type='derived-from').resource - description — string — The description of the activity definition —
ActivityDefinition.description - effective — date — The time during which the activity definition is intended to be in use —
ActivityDefinition.effectivePeriod - identifier — token — External identifier for the activity definition —
ActivityDefinition.identifier - jurisdiction — token — Jurisdiction of the authority that maintains the the activity definition —
ActivityDefinition.jurisdiction - kind — token — The kind of activity definition —
ActivityDefinition.kind - name — string — Computationally friendly name of the activity definition —
ActivityDefinition.name - predecessor — reference — What resource is being referenced —
ActivityDefinition.relatedArtifact.where(type='predecessor').resource - publisher — string — Name of the publisher of the activity definition —
ActivityDefinition.publisher - status — token — The current status of the activity definition —
ActivityDefinition.status - 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 - subject-canonical — reference — The subject of the ActivityDefinition when expressed as a canonical —
ActivityDefinition.subject as canonical - successor — reference — What resource is being referenced —
ActivityDefinition.relatedArtifact.where(type='successor').resource - title — string — The human-friendly name of the activity definition —
ActivityDefinition.title - topic — token — Topics associated with the module —
ActivityDefinition.topic - url — uri — The uri that identifies the activity definition —
ActivityDefinition.url - version — token — The business version of the activity definition —
ActivityDefinition.version - kind — token — The kind of activity definition —
ActivityDefinition.kind - experimental — token — Whether the ActivityDefinition is experimental —
ActivityDefinition.experimental
Examples
- activitydefinition-example — activitydefinition-example
- activitydefinition-example-alteplase-dosing — activitydefinition-example-alteplase-dosing
- activitydefinition-examples-header — activitydefinition-examples-header
- administer-zika-virus-exposure-assessment — activitydefinition-administer-zika-virus-exposure-assessment — Definition for administering a Zika Virus Exposure assessment
- citalopramPrescription — activitydefinition-medicationorder-example — Activity definition to prescribe citalopram to a patient
- example-alteplase-dosing — activitydefinition-example-alteplase-dosing — Alteplase Dosing for Stroke to be used by an EvidenceVariable resource
- heart-valve-replacement — activitydefinition-servicerequest-example — Definition for heart valve replacement service request
- provide-mosquito-prevention-advice — activitydefinition-provide-mosquito-prevention-advice — Definition for providing mosquito prevention advice
- referralPrimaryCareMentalHealth-initial — activitydefinition-predecessor-example — Example of a predecessor/successor relationship
- referralPrimaryCareMentalHealthEx — activitydefinition-example — Activity definition to refer a patient to a mental health integrated care program
- serum-dengue-virus-igm — activitydefinition-order-serum-dengue-virus-igm — Definition for ordering a Serum Dengue Virus IgM Antibody Diagnostic
- serum-zika-dengue-virus-igm — activitydefinition-order-serum-zika-dengue-virus-igm — Definition for ordering a Serum Zika and Dengue Virus IgM Antibody Diagnostic
Mapping Exceptions
activitydefinition-definition-mapping-exceptions.xml
Divergent Elements
- Definition.url → ActivityDefinition.url
- shortUnmatched | reason=Unknown | pattern=Canonical identifier for this activity definition, represented as an absolute URI (globally unique) | resource=Canonical identifier for this activity definition, represented as a URI (globally unique)
- commentsUnmatched | reason=Unknown | pattern=Can be a
urn:uuid:or aurn:oid:but realhttp/s:addresses are preferred. Multiple instances may share the same URL if they have a distinct version.
The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions.
In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found. | resource=Can be a urn:uuid: or a urn:oid: but real http: addresses are preferred. Multiple instances may share the same URL if they have a distinct version.
The determination of when to create a new version of a resource (same url, new version) vs. defining a new artifact is up to the author. Considerations for making this decision are found in Technical and Business Versions.
In some cases, the resource can no longer be found at the stated url, but the url itself cannot change. Implementations can use the meta.source element to indicate where the current master source of the resource can be found.
- Definition.identifier → ActivityDefinition.identifier
- shortUnmatched | reason=Unknown | pattern=Business identifier for activity definition | resource=Additional identifier for the activity definition
- commentsUnmatched | reason=Unknown | pattern=Typically, this is used for identifiers that can go in an HL7 V3 II (instance identifier) data type, and can then identify this activity definition outside of FHIR, where it is not possible to use the logical URI.
- requirementsUnmatched | reason=Unknown | pattern=Allows externally provided and/or usable business identifiers to be easily associated with the activity definition. | resource=Allows externally provided and/or usable business identifiers to be easily associated with the module.
- Definition.version → ActivityDefinition.version
- commentsUnmatched | reason=Unknown | pattern=There may be different activity definitions that have the same url but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the activity definition with the format. The version SHOULD NOT contain a '#' - see Business Version. | resource=There may be different activity definition instances that have the same identifier but different versions. The version can be appended to the url in a reference to allow a reference to a particular business version of the activity definition with the format [url]|[version]. The version SHOULD NOT contain a '#' - see Business Version.
- Definition.name → ActivityDefinition.name
- commentsUnmatched | reason=Unknown | pattern=The name is not expected to be globally unique. The name should be a simple alphanumeric type no-whitespace name to ensure that it is machine-processing friendly. | resource=The name is not expected to be globally unique. The name should be a simple alphanumeric type name to ensure that it is machine-processing friendly.
- requirementsUnmatched | reason=Unknown | pattern=Supports code generation. | resource=Support human navigation and code generation.
- Definition.status → ActivityDefinition.status
- definitionUnmatched | reason=Unknown | pattern=The current state of this activity definition. | resource=The status of this activity definition. Enables tracking the life-cycle of the content.
- commentsUnmatched | reason=Unknown | pattern=A nominal state-transition diagram can be found in the] documentation
Unknown does not represent 'other' - one of the defined statuses must apply. Unknown is used when the authoring system is not sure what the current status is. | resource=Allows filtering of activity definitions that are appropriate for use versus not.
See guidance around (not) making local changes to elements here.
- requirementsUnmatched | reason=Unknown | pattern=Enables tracking the lifecycle of the content and filtering of activity definitions that are appropriate for use versus not.
- Definition.subject → ActivityDefinition.subject[x]
- missingTypes | reason=Unknown | pattern=CodeableReference(Group)
- extraTypes | reason=Unknown
- summary | reason=Unknown | pattern=true
- bindingStrength | reason=Unknown | pattern=example
- shortUnmatched | reason=Unknown | pattern=Type of individual the defined service is for | resource=Type of individual the activity definition is intended for
- definitionUnmatched | reason=Unknown | pattern=A code or group definition that describes the intended subject of instantiations of this definition. | resource=A code, group definition, or canonical reference that describes or identifies the intended subject of the activity being defined. Canonical references are allowed to support the definition of protocols for drug and substance quality specifications, and is allowed to reference a MedicinalProductDefinition, SubstanceDefinition, AdministrableProductDefinition, ManufacturedItemDefinition, or PackagedProductDefinition resource.
- requirementsUnmatched | reason=Unknown | pattern=Many protocols, order sets and guidelines are intended for use only with specific types of patients or subjects.
- Definition.description → ActivityDefinition.description
- commentsUnmatched | reason=Unknown | pattern=This description can be used to capture details such as comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the activity definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context. | resource=This description can be used to capture details such as comments about misuse, instructions for clinical use and interpretation, literature references, examples from the paper world, etc. It is not a rendering of the activity definition as conveyed in the 'text' field of the resource itself. This item SHOULD be populated unless the information is available from context (e.g. the language of the activity definition is presumed to be the predominant language in the place the activity definition was created).
- Definition.useContext → ActivityDefinition.useContext
- definitionUnmatched | reason=Unknown | pattern=The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate activity definitions. | resource=The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate activity definition instances.
- commentsUnmatched | reason=Unknown | pattern=When multiple useContexts are specified, there is no expectation that all or even any of the contexts apply. | resource=When multiple useContexts are specified, there is no expectation that all or any of the contexts apply.
- Definition.jurisdiction → ActivityDefinition.jurisdiction
- shortUnmatched | reason=Unknown | pattern=Intended jurisdiction for activity definition (if applicable) | resource=Jurisdiction of the authority that maintains the activity definition (if applicable)
- definitionUnmatched | reason=Unknown | pattern=A legal or geographic region in which the activity definition is intended to be used. | resource=A legal or geographic region in which the authority that maintains the resource is operating. In general, the jurisdiction is also found in the useContext. The useContext may reference additional jurisdictions because the defining jurisdiction does not necessarily limit the jurisdictions of use.
- commentsUnmatched | reason=Unknown | pattern=It may be possible for the activity definition to be used in jurisdictions other than those for which it was originally designed or intended
DEPRECATION NOTE: For consistency, implementations are encouraged to migrate to using the new 'jurisdiction' code in the useContext element. (I.e. useContext.code indicating http://terminology.hl7.org/CodeSystem/usage-context-type#jurisdiction and useContext.valueCodeableConcept indicating the jurisdiction.). | resource=It may be possible for the activity definition to be used in jurisdictions other than those for which it was originally designed or intended.
DEPRECATION NOTE: For consistency, implementations are encouraged to migrate to using the new 'jurisdiction' code in the useContext element. (I.e. useContext.code indicating http://terminology.hl7.org/CodeSystem/usage-context-type#jurisdiction and useContext.valueCodeableConcept indicating the jurisdiction.)
- Definition.copyright → ActivityDefinition.copyright
- requirementsUnmatched | reason=Unknown | pattern=Consumers of the activity definition must be able to determine any legal restrictions on the use of the artifact and/or its content. | resource=Consumers must be able to determine any legal restrictions on the use of the activity definition and/or its content.
- Definition.effectivePeriod → ActivityDefinition.effectivePeriod
- commentsUnmatched | reason=Unknown | pattern=The effective period for a activity definition determines when the content is applicable for usage and is independent of publication and review dates. For example, a measure intended to be used for the year 2016 might be published in 2015. | resource=The effective period for an activity definition determines when the content is applicable for usage and is independent of publication and review dates. For example, a activity intended to be used for the year 2016 might be published in 2015.
See guidance around (not) making local changes to elements here.
Unmapped Elements
- Definition.derivedFromCanonical — Unknown
- Definition.product — Unknown
- Definition.code — Unknown
- Definition.derivedFromUri — Unknown
- Definition.performerType — Unknown
- Definition.partOf — Unknown
- Definition.topic — Unknown
activitydefinition-fivews-mapping-exceptions.xml
Unmapped Elements
- FiveWs.what — Unknown
- FiveWs.author — Unknown
- FiveWs.actor — Unknown
- FiveWs.cause — Unknown
- FiveWs.where — Unknown
- FiveWs.context — Unknown
- FiveWs.init — Unknown
- FiveWs.source — Unknown
- FiveWs.who — Unknown
- FiveWs.grade — Unknown
- FiveWs.planned — Unknown
- FiveWs.done — Unknown
- FiveWs.subject — Unknown