Integrated Campaign Registry (ICR) Implementation Guide
0.1.0 - ci-build International flag

Integrated Campaign Registry (ICR) Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Resource Profile: ICRCampaignTask - Detailed Descriptions

Draft as of 2026-10-29

Definitions for the ICRCampaignTask resource profile.

Guidance on how to interpret the contents of this table can be foundhere

0. Task
Definition

A task to be performed.

ShortA task to be performed
Control0..*
Is Modifierfalse
Summaryfalse
Invariantsdom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource (contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty())
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (contained.meta.versionId.empty() and contained.meta.lastUpdated.empty())
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
dom-6: A resource should have narrative for robust management (text.`div`.exists())
inv-1: Last modified date must be greater than or equal to authored-on date. (lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn)
icr-task-h2h-outputs: House-to-house tally outputs (houses-visited, eligible-present, eligible-absent, children-already-marked) belong on house-to-house tasks — strategy determines which data elements exist (§8 principle 1), now machine-checkable. Warning severity: a mismatch is a data-quality signal, not always a recording error. (extension('https://icr.healthcampaigns.org/StructureDefinition/delivery-strategy').value.ofType(CodeableConcept).coding.exists(code = 'house-to-house') or output.type.coding.where(code = 'houses-visited' or code = 'eligible-present' or code = 'eligible-absent' or code = 'children-already-marked').empty())
icr-task-treated-per-activity: treated-count: on a Task without instantiatesCanonical every entry names its activity (campaign-activity) and no activity appears twice; a Task with instantiatesCanonical has at most one entry, without campaign-activity. ((instantiatesCanonical.empty() implies output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).all(extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').exists())) and (instantiatesCanonical.exists() implies (output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).count() <= 1 and output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').empty())) and output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').value.isDistinct())
inv-1: Last modified date must be greater than or equal to authored-on date. (lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn)
2. Task.implicitRules
Definition

A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

ShortA set of rules under which this content was created
Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

Control0..1
Typeuri
Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
Summarytrue
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
4. Task.extension
Definition

An Extension


May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

ShortExtensionAdditional content defined by implementations
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control20..*
TypeExtension
Is Modifierfalse
Summaryfalse
Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
SlicingThis element introduces a set of slices on Task.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ url
  • 6. Task.extension:deliveryStrategy
    Slice NamedeliveryStrategy
    Definition

    How this activity/task reaches its target population. First-class and coded because a single campaign routinely mixes strategies, and the strategy governs which data elements exist. The protocol lists the options (1..*), the Task records the choice (1..1), the activity is an optional pin — the strategy is campaign programme state and deliberately does NOT live on Location: per the georegistry rule a site's durable kind is Location.type (facility, temporary-post, school…), and which strategy a site serves in a given campaign belongs to that campaign's Tasks (working doc §3).

    ShortDelivery Strategy
    Control1..1
    This element is affected by the following invariants: ele-1
    TypeExtension(Delivery Strategy) (Extension Type: CodeableConcept)
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    8. Task.extension:taskOrigin
    Slice NametaskOrigin
    Definition

    Whether this Task was generated in advance from the microplan or registered in the field on discovery. REQUIRED on ICRCampaignTask — field-registered counts per area measure how incomplete the microplan's enumeration was, feeding the next round's denominators (working doc §10 q1).

    ShortTask Origin
    Control1..1
    This element is affected by the following invariants: ele-1
    TypeExtension(Task Origin) (Extension Type: code)
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    10. Task.extension:dataLineage
    Slice NamedataLineage
    Definition

    Data lineage of this record: the real-time operational stream or the post-campaign reconciled stream. One structure serves both; consumers filter by lineage — dashboards read realtime, JAP exports read reconciled (working doc §4.3). Default semantics: ABSENT MEANS REALTIME — live-stream records may omit the flag, but reconciled records must carry it, and coverage MeasureReports always carry it (1..1 on both coverage profiles).

    ShortReal-time vs Reconciled
    Control0..1
    This element is affected by the following invariants: ele-1
    TypeExtension(Real-time vs Reconciled) (Extension Type: code)
    Is Modifierfalse
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    12. Task.modifierExtension
    Definition

    May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

    Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

    ShortExtensions that cannot be ignored
    Comments

    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

    Control0..*
    TypeExtension
    Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
    Summaryfalse
    Requirements

    Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

    Alternate Namesextensions, user content
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    14. Task.instantiatesCanonical
    Definition

    The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.

    ShortThe activity this task carries out — the structured definition-to-execution link (same convention as CarePlan → Protocol). Carries the work definition (product, dose, intervention code) so multi-activity campaigns stay queryable per activity; Task.code is only the human-readable label. Optional: an ad-hoc field task, or a visit that delivers several activities (R4 allows one), has none; its delivery events then name their activity in campaign-activityFormal definition of task
    Control0..1
    Typecanonical(ICR Campaign Activity, ActivityDefinition)
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    Enables a formal definition of how he task is to be performed, enabling automation.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    16. Task.basedOn
    Definition

    BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a "request" resource such as a ServiceRequest, MedicationRequest, ServiceRequest, CarePlan, etc. which is distinct from the "request" resource the task is seeking to fulfill. This latter resource is referenced by FocusOn. For example, based on a ServiceRequest (= BasedOn), a task is created to fulfill a procedureRequest ( = FocusOn ) to collect a specimen from a patient.

    ShortThe campaign (round) this task executes. Tasks point at the campaign — the CarePlan is never updated as tasks are createdRequest fulfilled by this task
    Control10..1*
    TypeReference(ICR Campaign, Resource)
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    18. Task.status
    Definition

    The current status of the task.

    Shortrequested → in-progress → completed / failed. On a household visit: completed when the household was reached and any person outcome recorded, failed when it was not reached (closed, not found), requested when not yet visiteddraft | requested | received | accepted | +
    Control1..1
    BindingThe codes SHALL be taken from TaskStatushttp://hl7.org/fhir/ValueSet/task-status|4.0.1
    (required to http://hl7.org/fhir/ValueSet/task-status|4.0.1)

    The current status of the task.

    Typecode
    Is Modifiertrue because This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Requirements

    These states enable coordination of task status with off-the-shelf workflow solutions that support automation of tasks.

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    20. Task.intent
    Definition

    Indicates the "level" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc.

    Shortunknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
    Comments

    This element is immutable. Proposed tasks, planned tasks, etc. must be distinct instances.

    In most cases, Tasks will have an intent of "order".

    Control1..1
    BindingThe codes SHALL be taken from TaskIntenthttp://hl7.org/fhir/ValueSet/task-intent|4.0.1
    (required to http://hl7.org/fhir/ValueSet/task-intent|4.0.1)

    Distinguishes whether the task is a proposal, plan or full order.

    Typecode
    Is Modifierfalse
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    22. Task.code
    Definition

    A name or code (or both) briefly describing what the task involves.

    ShortThe activity being performedTask Type
    Comments

    The title (eg "My Tasks", "Outstanding Tasks for Patient X") should go into the code.

    Control10..1
    BindingFor example codes, see TaskCodehttp://hl7.org/fhir/ValueSet/task-code|4.0.1
    (example to http://hl7.org/fhir/ValueSet/task-code|4.0.1)

    Codes to identify what the task involves. These will typically be specific to a particular workflow.

    TypeCodeableConcept
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    24. Task.for
    Definition

    The entity who benefits from the performance of the service specified in the task (e.g., the patient).

    ShortWhat the task acts on: a delivery-unit Group where the unit has members (household, community, school cohort) or a Location where it does not (site, structure, area); a Patient only for person-targeted follow-up tasksBeneficiary of the Task
    Control10..1
    TypeReference(ICR Delivery Unit (Household / Community / School Cohort), ICR Location, Patient, Resource)
    Is Modifierfalse
    Must Supporttrue
    Must Support TypesNo must-support rules about the choice of types/profiles
    Summarytrue
    Requirements

    Used to track tasks outstanding for a beneficiary. Do not use to track the task owner or creator (see owner and creator respectively). This can also affect access control.

    Alternate NamesPatient
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    26. Task.executionPeriod
    Definition

    Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end).

    ShortStart and end time of execution
    Control0..1
    TypePeriod
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    28. Task.owner
    Definition

    Individual organization or Device currently responsible for task execution.

    ShortThe assigned ICRCareTeam — a real join, not a display string (v0.20.0): 'who worked this' and (via the supervisor) 'who reports this'Responsible individual
    Comments

    Tasks may be created with an owner not yet identified.

    Control0..1
    TypeReference(ICR Care Team, Practitioner, PractitionerRole, Organization, CareTeam, HealthcareService, Patient, Device, RelatedPerson)
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Identifies who is expected to perform this task.

    Alternate NamesPerformer, Executer
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    30. Task.location
    Definition

    Principal physical location where the this task is performed.

    ShortWhere the work happens: settlement, school, post, or dwellingWhere task occurs
    Control10..1
    TypeReference(ICR Location, Location)
    Is Modifierfalse
    Must Supporttrue
    Summarytrue
    Requirements

    Ties the event to where the records are likely kept and provides context around the event occurrence (e.g. if it occurred inside or outside a dedicated healthcare setting).

    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    32. Task.reasonCode
    Definition

    A description or code indicating why this task needs to be performed.

    ShortThe disease/programme this Task serves — scopes a Task to one disease where a community runs several concurrent programmes (per-village disease scoping in co-endemic MDA)Why task is needed
    Comments

    This should only be included if there is no focus or if it differs from the reason indicated on the focus.

    Control0..1
    Binding

    Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

    TypeCodeableConcept
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    34. Task.input
    Definition

    Additional information that may be needed in the execution of the task.

    ShortWhat the task is given before the work starts, as coded entries: today its target (target-population)Information used to perform task
    Control0..*
    TypeBackboneElement
    Is Modifierfalse
    Must Supporttrue
    Summaryfalse
    Requirements

    Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

    Alternate NamesSupporting Information
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    SlicingThis element introduces a set of slices on Task.input. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • pattern @ type
    • 36. Task.input.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      38. Task.input.type
      Definition

      A code or description indicating how the input is intended to be used as part of the task execution.

      ShortLabel for the input
      Comments

      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

      Control1..1
      BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Input Type
      (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-input-type)
      TypeCodeableConcept
      Is Modifierfalse
      Summaryfalse
      Requirements

      Inputs are named to enable task automation to bind data and pass it from one task to the next.

      Alternate NamesName
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      40. Task.input.value[x]
      Definition

      The value of the input parameter as a basic type.

      ShortContent to use in performing the task
      Control1..1
      TypeChoice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      42. Task.input:targetPopulation
      Slice NametargetPopulation
      Definition

      Additional information that may be needed in the execution of the task.

      ShortThis task's target, for a task below the campaign's reporting scope (facility catchment, parish, school, settlement); repeats when it is the sum of several estimates. A task at the campaign's scope leaves it out and uses the campaign's planning denominator for its activityInformation used to perform task
      Control0..*
      TypeBackboneElement
      Is Modifierfalse
      Summaryfalse
      Requirements

      Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

      Alternate NamesSupporting Information
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      44. Task.input:targetPopulation.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      46. Task.input:targetPopulation.type
      Definition

      A code or description indicating how the input is intended to be used as part of the task execution.

      ShortLabel for the input
      Comments

      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

      Control1..1
      BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Input Type
      (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-input-type)
      TypeCodeableConcept
      Is Modifierfalse
      Summaryfalse
      Requirements

      Inputs are named to enable task automation to bind data and pass it from one task to the next.

      Alternate NamesName
      Pattern Value{
        "coding" : [{
          "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-input-type-cs",
          "code" : "target-population"
        }]
      }
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      48. Task.input:targetPopulation.value[x]
      Definition

      The value of the input parameter as a basic type.

      ShortContent to use in performing the task
      Control1..1
      TypeReference(ICR Target Population), date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
      Is Modifierfalse
      Summaryfalse
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      50. Task.output
      Definition

      Outputs produced by the Task.

      ShortEverything the visit produced, as coded entries: the scalar tally (treated-count), the house-to-house axes (houses-visited, eligible-present/absent, children-already-marked), reason codes (missed/refusal/exclusion), revisit outcome, and references to delivery events and the stratified coverage reportInformation produced as part of task
      Control0..*
      TypeBackboneElement
      Is Modifierfalse
      Must Supporttrue
      Summaryfalse
      Requirements

      Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      SlicingThis element introduces a set of slices on Task.output. The slices areUnordered and Open, and can be differentiated using the following discriminators:
      • pattern @ type
      • 52. Task.output.modifierExtension
        Definition

        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

        ShortExtensions that cannot be ignored even if unrecognized
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
        Summarytrue
        Requirements

        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

        Alternate Namesextensions, user content, modifiers
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        54. Task.output.type
        Definition

        The name of the Output parameter.

        ShortLabel for output
        Control1..1
        BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
        (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
        TypeCodeableConcept
        Is Modifierfalse
        Summaryfalse
        Requirements

        Outputs are named to enable task automation to bind data and pass it from one task to the next.

        Alternate NamesName
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        56. Task.output.value[x]
        Definition

        The value of the Output parameter as a basic type.

        ShortResult of output
        Control1..1
        TypeChoice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta
        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
        Is Modifierfalse
        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
        Summaryfalse
        Requirements

        Task outputs can take any form.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        58. Task.output:treatedCount
        Slice NametreatedCount
        Definition

        Outputs produced by the Task.

        ShortPeople treated or vaccinated at the visit. On a Task without instantiatesCanonical (a visit that delivers several activities), one entry per activity, each naming it in extension[campaignActivity], even when only one activity has a tally; on a Task with instantiatesCanonical, a single entry without it (icr-task-treated-per-activity)Information produced as part of task
        Control0..*
        TypeBackboneElement
        Is Modifierfalse
        Summaryfalse
        Requirements

        Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        60. Task.output:treatedCount.extension
        Definition

        An Extension


        May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

        ShortExtensionAdditional content defined by implementations
        Comments

        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

        Control0..*
        TypeExtension
        Is Modifierfalse
        Summaryfalse
        Alternate Namesextensions, user content
        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
        SlicingThis element introduces a set of slices on Task.output.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
        • value @ url
        • 62. Task.output:treatedCount.extension:campaignActivity
          Slice NamecampaignActivity
          Definition

          The activity of an integrated campaign that this record belongs to: the ICRCampaignActivity a CarePlan.activity.detail of the campaign instantiates. On a coverage report, the report's denominator is then that activity's planning denominator and its numerator counts only that activity's doses or treatments; absent on a report for a single-intervention campaign, or for a campaign as a whole. On a delivery event (Immunization, MedicationAdministration, SupplyDelivery), the activity the dose, treatment or handover was for: per-activity results count events by this link, not by product code. An event must carry it whenever its visit Task has no instantiatesCanonical and its campaign lists more than one activity (a conformance rule stated in the IG text, since an event cannot see its Task). On a Task output, the activity a per-activity tally (treated-count) is for, on a visit that delivers several activities.

          ShortThe activity this tally is for; required when the Task has no instantiatesCanonical
          Control0..1
          This element is affected by the following invariants: ele-1
          TypeExtension(Campaign Activity) (Extension Type: canonical(ICR Campaign Activity))
          Is Modifierfalse
          Must Supporttrue
          Summaryfalse
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          64. Task.output:treatedCount.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          66. Task.output:treatedCount.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "treated-count"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          68. Task.output:treatedCount.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeunsignedInt, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          70. Task.output:housesVisited
          Slice NamehousesVisited
          Definition

          Outputs produced by the Task.

          Short(house-to-house, area/team-day granularity) Houses visitedInformation produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          72. Task.output:housesVisited.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          74. Task.output:housesVisited.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "houses-visited"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          76. Task.output:housesVisited.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeunsignedInt, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          78. Task.output:eligiblePresent
          Slice NameeligiblePresent
          Definition

          Outputs produced by the Task.

          Short(house-to-house) Eligible persons present — program-neutral: under-5s for polio, household members for ITN registration, the eligible band for MDAInformation produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          80. Task.output:eligiblePresent.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          82. Task.output:eligiblePresent.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "eligible-present"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          84. Task.output:eligiblePresent.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeunsignedInt, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          86. Task.output:eligibleAbsent
          Slice NameeligibleAbsent
          Definition

          Outputs produced by the Task.

          Short(house-to-house) Eligible persons absent — feeds same-day mop-up listsInformation produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          88. Task.output:eligibleAbsent.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          90. Task.output:eligibleAbsent.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "eligible-absent"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          92. Task.output:eligibleAbsent.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeunsignedInt, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          94. Task.output:childrenAlreadyMarked
          Slice NamechildrenAlreadyMarked
          Definition

          Outputs produced by the Task.

          Short(house-to-house) Children found already finger-marked on arrival — a count, since a visit sees several children (replaces the retired boolean finger-marked extension)Information produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          96. Task.output:childrenAlreadyMarked.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          98. Task.output:childrenAlreadyMarked.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "children-already-marked"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          100. Task.output:childrenAlreadyMarked.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeunsignedInt, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          102. Task.output:missedReason
          Slice NamemissedReason
          Definition

          Outputs produced by the Task.

          ShortWhy eligible person(s) were missed — person-level (absent, sleeping) and area-level (insecurity, shortage, access) causesInformation produced as part of task
          Control0..*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          104. Task.output:missedReason.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          106. Task.output:missedReason.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "missed-reason"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          108. Task.output:missedReason.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For codes, see ICR Missed Reason
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-missed-reason)
          TypeCodeableConcept, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          110. Task.output:noncomplianceReason
          Slice NamenoncomplianceReason
          Definition

          Outputs produced by the Task.

          ShortWhy the household/caregiver refused (WHO IDHC 'intervention refusal')Information produced as part of task
          Control0..*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          112. Task.output:noncomplianceReason.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          114. Task.output:noncomplianceReason.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "noncompliance-reason"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          116. Task.output:noncomplianceReason.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For codes, see ICR Refusal Reason
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-noncompliance-reason)
          TypeCodeableConcept, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          118. Task.output:exclusionReason
          Slice NameexclusionReason
          Definition

          Outputs produced by the Task.

          ShortWhy a present, age-eligible person was clinically excluded this round (under-height/age, pregnant, breastfeeding)Information produced as part of task
          Control0..*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          120. Task.output:exclusionReason.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          122. Task.output:exclusionReason.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "exclusion-reason"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          124. Task.output:exclusionReason.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For codes, see ICR Exclusion Reason
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-exclusion-reason)
          TypeCodeableConcept, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          126. Task.output:revisitOutcome
          Slice NamerevisitOutcome
          Definition

          Outputs produced by the Task.

          ShortOn a person-targeted follow-up Task: already-vaccinated | vaccinated-on-revisit | still-missingInformation produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          128. Task.output:revisitOutcome.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          130. Task.output:revisitOutcome.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "revisit-outcome"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          132. Task.output:revisitOutcome.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For codes, see ICR Revisit Outcome
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-revisit-outcome)
          TypeCodeableConcept, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          134. Task.output:referredCount
          Slice NamereferredCount
          Definition

          Outputs produced by the Task.

          ShortPeople referred at this visit (each referral is an ICRReferral whose referring-task is this Task)Information produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          136. Task.output:referredCount.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          138. Task.output:referredCount.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "referred-count"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          140. Task.output:referredCount.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeunsignedInt, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          142. Task.output:registeredCount
          Slice NameregisteredCount
          Definition

          Outputs produced by the Task.

          ShortPeople registered into the campaign at this visit — on a register Task or a delivery Task alikeInformation produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          144. Task.output:registeredCount.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          146. Task.output:registeredCount.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "registered-count"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          148. Task.output:registeredCount.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeunsignedInt, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          150. Task.output:registeredHousehold
          Slice NameregisteredHousehold
          Definition

          Outputs produced by the Task.

          ShortEach household registered into the campaign at this visit: the for household on a household visit, every household registered there on a site session. Households registered = distinct references in the roundInformation produced as part of task
          Control0..*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          152. Task.output:registeredHousehold.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          154. Task.output:registeredHousehold.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "registered-household"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          156. Task.output:registeredHousehold.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeReference(ICR Delivery Unit (Household / Community / School Cohort)), date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          158. Task.output:voucher
          Slice Namevoucher
          Definition

          Outputs produced by the Task.

          ShortThe voucher or QR code issued, with one system per campaign round; the redeeming ICRSupplyDistribution carries the same system and value as an identifier of type voucher, so issued vs redeemed is a match on (system, value)Information produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          160. Task.output:voucher.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          162. Task.output:voucher.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "voucher"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          164. Task.output:voucher.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeIdentifier, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, Quantity, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          166. Task.output:voucher.value[x].use
          Definition

          The purpose of this identifier.

          Shortusual | official | temp | secondary | old (If known)
          Comments

          Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

          Control0..1
          BindingThe codes SHALL be taken from IdentifierUsehttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1
          (required to http://hl7.org/fhir/ValueSet/identifier-use|4.0.1)

          Identifies the purpose for this identifier, if known .

          Typecode
          Is Modifiertrue because This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one.
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Summarytrue
          Requirements

          Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          168. Task.output:voucher.value[x].system
          Definition

          Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

          ShortThe campaign round's voucher namespace: the same system the redeeming ICRSupplyDistribution uses in identifier[voucher]The namespace for the identifier value
          Comments

          Identifier.system is always case sensitive.

          Control10..1
          Typeuri
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Must Supporttrue
          Summarytrue
          Requirements

          There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

          ExampleGeneral: http://www.acme.com/identifiers/patient
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          170. Task.output:voucher.value[x].value
          Definition

          The portion of the identifier typically relevant to the user and which is unique within the context of the system.

          ShortThe voucher or QR code, as printed; the redeeming distribution carries the same valueThe value that is unique
          Comments

          If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

          Control10..1
          Typestring
          Is Modifierfalse
          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
          Must Supporttrue
          Summarytrue
          ExampleGeneral: 123456
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          172. Task.output:entitlement
          Slice Nameentitlement
          Definition

          Outputs produced by the Task.

          ShortWhat the household is due, for example 3 LLINsInformation produced as part of task
          Control0..1*
          TypeBackboneElement
          Is Modifierfalse
          Summaryfalse
          Requirements

          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          174. Task.output:entitlement.modifierExtension
          Definition

          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

          ShortExtensions that cannot be ignored even if unrecognized
          Comments

          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

          Control0..*
          TypeExtension
          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
          Summarytrue
          Requirements

          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

          Alternate Namesextensions, user content, modifiers
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
          176. Task.output:entitlement.type
          Definition

          The name of the Output parameter.

          ShortLabel for output
          Control1..1
          BindingUnless not suitable, these codes SHALL be taken from For example codes, see ICR Task Output Type
          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
          TypeCodeableConcept
          Is Modifierfalse
          Summaryfalse
          Requirements

          Outputs are named to enable task automation to bind data and pass it from one task to the next.

          Alternate NamesName
          Pattern Value{
            "coding" : [{
              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
              "code" : "entitlement"
            }]
          }
          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
          178. Task.output:entitlement.value[x]
          Definition

          The value of the Output parameter as a basic type.

          ShortResult of output
          Control1..1
          TypeQuantity, date, Meta, Address, Attachment, integer, Count, DataRequirement, Dosage, uuid, Identifier, Coding, SampledData, id, positiveInt, Distance, Period, Duration, canonical, Range, RelatedArtifact, base64Binary, UsageContext, Timing, decimal, CodeableConcept, ParameterDefinition, dateTime, code, string, Contributor, oid, instant, ContactPoint, HumanName, Money, markdown, Ratio, Age, Reference, TriggerDefinition, uri, url, Annotation, ContactDetail, boolean, Expression, Signature, unsignedInt, time
          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
          Is Modifierfalse
          Summaryfalse
          Requirements

          Task outputs can take any form.

          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))

          Guidance on how to interpret the contents of this table can be foundhere

          0. Task
          Invariantsicr-task-h2h-outputs: House-to-house tally outputs (houses-visited, eligible-present, eligible-absent, children-already-marked) belong on house-to-house tasks — strategy determines which data elements exist (§8 principle 1), now machine-checkable. Warning severity: a mismatch is a data-quality signal, not always a recording error. (extension('https://icr.healthcampaigns.org/StructureDefinition/delivery-strategy').value.ofType(CodeableConcept).coding.exists(code = 'house-to-house') or output.type.coding.where(code = 'houses-visited' or code = 'eligible-present' or code = 'eligible-absent' or code = 'children-already-marked').empty())
          icr-task-treated-per-activity: treated-count: on a Task without instantiatesCanonical every entry names its activity (campaign-activity) and no activity appears twice; a Task with instantiatesCanonical has at most one entry, without campaign-activity. ((instantiatesCanonical.empty() implies output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).all(extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').exists())) and (instantiatesCanonical.exists() implies (output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).count() <= 1 and output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').empty())) and output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').value.isDistinct())
          2. Task.extension
          Control2..?
          SlicingThis element introduces a set of slices on Task.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
          • value @ url
          • 4. Task.extension:deliveryStrategy
            Slice NamedeliveryStrategy
            Control1..1
            TypeExtension(Delivery Strategy) (Extension Type: CodeableConcept)
            Must Supporttrue
            6. Task.extension:taskOrigin
            Slice NametaskOrigin
            Control1..1
            TypeExtension(Task Origin) (Extension Type: code)
            Must Supporttrue
            8. Task.extension:dataLineage
            Slice NamedataLineage
            Control0..1
            TypeExtension(Real-time vs Reconciled) (Extension Type: code)
            10. Task.instantiatesCanonical
            ShortThe activity this task carries out — the structured definition-to-execution link (same convention as CarePlan → Protocol). Carries the work definition (product, dose, intervention code) so multi-activity campaigns stay queryable per activity; Task.code is only the human-readable label. Optional: an ad-hoc field task, or a visit that delivers several activities (R4 allows one), has none; its delivery events then name their activity in campaign-activity
            Typecanonical(ICR Campaign Activity)
            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
            Must Supporttrue
            12. Task.basedOn
            ShortThe campaign (round) this task executes. Tasks point at the campaign — the CarePlan is never updated as tasks are created
            Control1..1
            TypeReference(ICR Campaign)
            Must Supporttrue
            14. Task.status
            Shortrequested → in-progress → completed / failed. On a household visit: completed when the household was reached and any person outcome recorded, failed when it was not reached (closed, not found), requested when not yet visited
            Must Supporttrue
            16. Task.intent
            Must Supporttrue
            18. Task.code
            ShortThe activity being performed
            Control1..?
            Must Supporttrue
            20. Task.for
            ShortWhat the task acts on: a delivery-unit Group where the unit has members (household, community, school cohort) or a Location where it does not (site, structure, area); a Patient only for person-targeted follow-up tasks
            Control1..?
            TypeReference(ICR Delivery Unit (Household / Community / School Cohort), ICR Location, Patient)
            Must Supporttrue
            Must Support TypesNo must-support rules about the choice of types/profiles
            22. Task.executionPeriod
            Must Supporttrue
            24. Task.owner
            ShortThe assigned ICRCareTeam — a real join, not a display string (v0.20.0): 'who worked this' and (via the supervisor) 'who reports this'
            TypeReference(ICR Care Team)
            Must Supporttrue
            26. Task.location
            ShortWhere the work happens: settlement, school, post, or dwelling
            Control1..?
            TypeReference(ICR Location)
            Must Supporttrue
            28. Task.reasonCode
            ShortThe disease/programme this Task serves — scopes a Task to one disease where a community runs several concurrent programmes (per-village disease scoping in co-endemic MDA)
            Must Supporttrue
            30. Task.input
            ShortWhat the task is given before the work starts, as coded entries: today its target (target-population)
            Must Supporttrue
            SlicingThis element introduces a set of slices on Task.input. The slices areUnordered and Open, and can be differentiated using the following discriminators:
            • pattern @ type
            • 32. Task.input.type
              BindingUnless not suitable, these codes SHALL be taken from ICR Task Input Type
              (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-input-type)
              34. Task.input:targetPopulation
              Slice NametargetPopulation
              ShortThis task's target, for a task below the campaign's reporting scope (facility catchment, parish, school, settlement); repeats when it is the sum of several estimates. A task at the campaign's scope leaves it out and uses the campaign's planning denominator for its activity
              Control0..*
              36. Task.input:targetPopulation.type
              Pattern Value{
                "coding" : [{
                  "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-input-type-cs",
                  "code" : "target-population"
                }]
              }
              38. Task.input:targetPopulation.value[x]
              TypeReference(ICR Target Population)
              [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
              40. Task.output
              ShortEverything the visit produced, as coded entries: the scalar tally (treated-count), the house-to-house axes (houses-visited, eligible-present/absent, children-already-marked), reason codes (missed/refusal/exclusion), revisit outcome, and references to delivery events and the stratified coverage report
              Must Supporttrue
              SlicingThis element introduces a set of slices on Task.output. The slices areUnordered and Open, and can be differentiated using the following discriminators:
              • pattern @ type
              • 42. Task.output.type
                BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                44. Task.output:treatedCount
                Slice NametreatedCount
                ShortPeople treated or vaccinated at the visit. On a Task without instantiatesCanonical (a visit that delivers several activities), one entry per activity, each naming it in extension[campaignActivity], even when only one activity has a tally; on a Task with instantiatesCanonical, a single entry without it (icr-task-treated-per-activity)
                Control0..*
                46. Task.output:treatedCount.extension
                SlicingThis element introduces a set of slices on Task.output.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                • value @ url
                • 48. Task.output:treatedCount.extension:campaignActivity
                  Slice NamecampaignActivity
                  ShortThe activity this tally is for; required when the Task has no instantiatesCanonical
                  Control0..1
                  TypeExtension(Campaign Activity) (Extension Type: canonical(ICR Campaign Activity))
                  Must Supporttrue
                  50. Task.output:treatedCount.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "treated-count"
                    }]
                  }
                  52. Task.output:treatedCount.value[x]
                  TypeunsignedInt
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  54. Task.output:housesVisited
                  Slice NamehousesVisited
                  Short(house-to-house, area/team-day granularity) Houses visited
                  Control0..1
                  56. Task.output:housesVisited.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "houses-visited"
                    }]
                  }
                  58. Task.output:housesVisited.value[x]
                  TypeunsignedInt
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  60. Task.output:eligiblePresent
                  Slice NameeligiblePresent
                  Short(house-to-house) Eligible persons present — program-neutral: under-5s for polio, household members for ITN registration, the eligible band for MDA
                  Control0..1
                  62. Task.output:eligiblePresent.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "eligible-present"
                    }]
                  }
                  64. Task.output:eligiblePresent.value[x]
                  TypeunsignedInt
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  66. Task.output:eligibleAbsent
                  Slice NameeligibleAbsent
                  Short(house-to-house) Eligible persons absent — feeds same-day mop-up lists
                  Control0..1
                  68. Task.output:eligibleAbsent.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "eligible-absent"
                    }]
                  }
                  70. Task.output:eligibleAbsent.value[x]
                  TypeunsignedInt
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  72. Task.output:childrenAlreadyMarked
                  Slice NamechildrenAlreadyMarked
                  Short(house-to-house) Children found already finger-marked on arrival — a count, since a visit sees several children (replaces the retired boolean finger-marked extension)
                  Control0..1
                  74. Task.output:childrenAlreadyMarked.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "children-already-marked"
                    }]
                  }
                  76. Task.output:childrenAlreadyMarked.value[x]
                  TypeunsignedInt
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  78. Task.output:missedReason
                  Slice NamemissedReason
                  ShortWhy eligible person(s) were missed — person-level (absent, sleeping) and area-level (insecurity, shortage, access) causes
                  Control0..*
                  80. Task.output:missedReason.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "missed-reason"
                    }]
                  }
                  82. Task.output:missedReason.value[x]
                  BindingUnless not suitable, these codes SHALL be taken from ICR Missed Reason
                  (extensible to https://icr.healthcampaigns.org/ValueSet/icr-missed-reason)
                  TypeCodeableConcept
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  84. Task.output:noncomplianceReason
                  Slice NamenoncomplianceReason
                  ShortWhy the household/caregiver refused (WHO IDHC 'intervention refusal')
                  Control0..*
                  86. Task.output:noncomplianceReason.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "noncompliance-reason"
                    }]
                  }
                  88. Task.output:noncomplianceReason.value[x]
                  BindingUnless not suitable, these codes SHALL be taken from ICR Refusal Reason
                  (extensible to https://icr.healthcampaigns.org/ValueSet/icr-noncompliance-reason)
                  TypeCodeableConcept
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  90. Task.output:exclusionReason
                  Slice NameexclusionReason
                  ShortWhy a present, age-eligible person was clinically excluded this round (under-height/age, pregnant, breastfeeding)
                  Control0..*
                  92. Task.output:exclusionReason.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "exclusion-reason"
                    }]
                  }
                  94. Task.output:exclusionReason.value[x]
                  BindingUnless not suitable, these codes SHALL be taken from ICR Exclusion Reason
                  (extensible to https://icr.healthcampaigns.org/ValueSet/icr-exclusion-reason)
                  TypeCodeableConcept
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  96. Task.output:revisitOutcome
                  Slice NamerevisitOutcome
                  ShortOn a person-targeted follow-up Task: already-vaccinated | vaccinated-on-revisit | still-missing
                  Control0..1
                  98. Task.output:revisitOutcome.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "revisit-outcome"
                    }]
                  }
                  100. Task.output:revisitOutcome.value[x]
                  BindingUnless not suitable, these codes SHALL be taken from ICR Revisit Outcome
                  (extensible to https://icr.healthcampaigns.org/ValueSet/icr-revisit-outcome)
                  TypeCodeableConcept
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  102. Task.output:referredCount
                  Slice NamereferredCount
                  ShortPeople referred at this visit (each referral is an ICRReferral whose referring-task is this Task)
                  Control0..1
                  104. Task.output:referredCount.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "referred-count"
                    }]
                  }
                  106. Task.output:referredCount.value[x]
                  TypeunsignedInt
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  108. Task.output:registeredCount
                  Slice NameregisteredCount
                  ShortPeople registered into the campaign at this visit — on a register Task or a delivery Task alike
                  Control0..1
                  110. Task.output:registeredCount.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "registered-count"
                    }]
                  }
                  112. Task.output:registeredCount.value[x]
                  TypeunsignedInt
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  114. Task.output:registeredHousehold
                  Slice NameregisteredHousehold
                  ShortEach household registered into the campaign at this visit: the for household on a household visit, every household registered there on a site session. Households registered = distinct references in the round
                  Control0..*
                  116. Task.output:registeredHousehold.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "registered-household"
                    }]
                  }
                  118. Task.output:registeredHousehold.value[x]
                  TypeReference(ICR Delivery Unit (Household / Community / School Cohort))
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  120. Task.output:voucher
                  Slice Namevoucher
                  ShortThe voucher or QR code issued, with one system per campaign round; the redeeming ICRSupplyDistribution carries the same system and value as an identifier of type voucher, so issued vs redeemed is a match on (system, value)
                  Control0..1
                  122. Task.output:voucher.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "voucher"
                    }]
                  }
                  124. Task.output:voucher.value[x]
                  TypeIdentifier
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                  126. Task.output:voucher.value[x].system
                  ShortThe campaign round's voucher namespace: the same system the redeeming ICRSupplyDistribution uses in identifier[voucher]
                  Control1..?
                  Must Supporttrue
                  128. Task.output:voucher.value[x].value
                  ShortThe voucher or QR code, as printed; the redeeming distribution carries the same value
                  Control1..?
                  Must Supporttrue
                  130. Task.output:entitlement
                  Slice Nameentitlement
                  ShortWhat the household is due, for example 3 LLINs
                  Control0..1
                  132. Task.output:entitlement.type
                  Pattern Value{
                    "coding" : [{
                      "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                      "code" : "entitlement"
                    }]
                  }
                  134. Task.output:entitlement.value[x]
                  TypeQuantity
                  [x] NoteSeeChoice of Data Typesfor further information about how to use [x]

                  Guidance on how to interpret the contents of this table can be foundhere

                  0. Task
                  Definition

                  A task to be performed.

                  ShortA task to be performed
                  Control0..*
                  Is Modifierfalse
                  Summaryfalse
                  Invariantsdom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources (contained.contained.empty())
                  dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource (contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty())
                  dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated (contained.meta.versionId.empty() and contained.meta.lastUpdated.empty())
                  dom-5: If a resource is contained in another resource, it SHALL NOT have a security label (contained.meta.security.empty())
                  dom-6: A resource should have narrative for robust management (text.`div`.exists())
                  inv-1: Last modified date must be greater than or equal to authored-on date. (lastModified.exists().not() or authoredOn.exists().not() or lastModified >= authoredOn)
                  icr-task-h2h-outputs: House-to-house tally outputs (houses-visited, eligible-present, eligible-absent, children-already-marked) belong on house-to-house tasks — strategy determines which data elements exist (§8 principle 1), now machine-checkable. Warning severity: a mismatch is a data-quality signal, not always a recording error. (extension('https://icr.healthcampaigns.org/StructureDefinition/delivery-strategy').value.ofType(CodeableConcept).coding.exists(code = 'house-to-house') or output.type.coding.where(code = 'houses-visited' or code = 'eligible-present' or code = 'eligible-absent' or code = 'children-already-marked').empty())
                  icr-task-treated-per-activity: treated-count: on a Task without instantiatesCanonical every entry names its activity (campaign-activity) and no activity appears twice; a Task with instantiatesCanonical has at most one entry, without campaign-activity. ((instantiatesCanonical.empty() implies output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).all(extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').exists())) and (instantiatesCanonical.exists() implies (output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).count() <= 1 and output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').empty())) and output.where(type.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs' and code = 'treated-count').exists()).extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').value.isDistinct())
                  2. Task.id
                  Definition

                  The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

                  ShortLogical id of this artifact
                  Comments

                  The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

                  Control0..1
                  Typeid
                  Is Modifierfalse
                  Summarytrue
                  4. Task.meta
                  Definition

                  The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

                  ShortMetadata about the resource
                  Control0..1
                  TypeMeta
                  Is Modifierfalse
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  6. Task.implicitRules
                  Definition

                  A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

                  ShortA set of rules under which this content was created
                  Comments

                  Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

                  Control0..1
                  Typeuri
                  Is Modifiertrue because This element is labeled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Summarytrue
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  8. Task.language
                  Definition

                  The base language in which the resource is written.

                  ShortLanguage of the resource content
                  Comments

                  Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

                  Control0..1
                  BindingThe codes SHOULD be taken from CommonLanguages
                  (preferred to http://hl7.org/fhir/ValueSet/languages|4.0.1)

                  A human language.

                  Additional BindingsPurpose
                  AllLanguagesMax Binding
                  Typecode
                  Is Modifierfalse
                  Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  10. Task.text
                  Definition

                  A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

                  ShortText summary of the resource, for human interpretation
                  Comments

                  Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

                  Control0..1
                  TypeNarrative
                  Is Modifierfalse
                  Summaryfalse
                  Alternate Namesnarrative, html, xhtml, display
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  12. Task.contained
                  Definition

                  These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

                  ShortContained, inline Resources
                  Comments

                  This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.

                  Control0..*
                  TypeResource
                  Is Modifierfalse
                  Summaryfalse
                  Alternate Namesinline resources, anonymous resources, contained resources
                  14. Task.extension
                  Definition

                  An Extension

                  ShortExtension
                  Control2..*
                  TypeExtension
                  Is Modifierfalse
                  Summaryfalse
                  Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                  ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                  SlicingThis element introduces a set of slices on Task.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                  • value @ url
                  • 16. Task.extension:deliveryStrategy
                    Slice NamedeliveryStrategy
                    Definition

                    How this activity/task reaches its target population. First-class and coded because a single campaign routinely mixes strategies, and the strategy governs which data elements exist. The protocol lists the options (1..*), the Task records the choice (1..1), the activity is an optional pin — the strategy is campaign programme state and deliberately does NOT live on Location: per the georegistry rule a site's durable kind is Location.type (facility, temporary-post, school…), and which strategy a site serves in a given campaign belongs to that campaign's Tasks (working doc §3).

                    ShortDelivery Strategy
                    Control1..1
                    This element is affected by the following invariants: ele-1
                    TypeExtension(Delivery Strategy) (Extension Type: CodeableConcept)
                    Is Modifierfalse
                    Must Supporttrue
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    18. Task.extension:taskOrigin
                    Slice NametaskOrigin
                    Definition

                    Whether this Task was generated in advance from the microplan or registered in the field on discovery. REQUIRED on ICRCampaignTask — field-registered counts per area measure how incomplete the microplan's enumeration was, feeding the next round's denominators (working doc §10 q1).

                    ShortTask Origin
                    Control1..1
                    This element is affected by the following invariants: ele-1
                    TypeExtension(Task Origin) (Extension Type: code)
                    Is Modifierfalse
                    Must Supporttrue
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    20. Task.extension:dataLineage
                    Slice NamedataLineage
                    Definition

                    Data lineage of this record: the real-time operational stream or the post-campaign reconciled stream. One structure serves both; consumers filter by lineage — dashboards read realtime, JAP exports read reconciled (working doc §4.3). Default semantics: ABSENT MEANS REALTIME — live-stream records may omit the flag, but reconciled records must carry it, and coverage MeasureReports always carry it (1..1 on both coverage profiles).

                    ShortReal-time vs Reconciled
                    Control0..1
                    This element is affected by the following invariants: ele-1
                    TypeExtension(Real-time vs Reconciled) (Extension Type: code)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    22. Task.modifierExtension
                    Definition

                    May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                    Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                    ShortExtensions that cannot be ignored
                    Comments

                    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                    Control0..*
                    TypeExtension
                    Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the resource that contains them
                    Summaryfalse
                    Requirements

                    Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                    Alternate Namesextensions, user content
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    24. Task.identifier
                    Definition

                    The business identifier for this task.

                    ShortTask Instance Identifier
                    NoteThis is a business identifier, not a resource identifier (see discussion)
                    Control0..*
                    TypeIdentifier
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    26. Task.instantiatesCanonical
                    Definition

                    The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.

                    ShortThe activity this task carries out — the structured definition-to-execution link (same convention as CarePlan → Protocol). Carries the work definition (product, dose, intervention code) so multi-activity campaigns stay queryable per activity; Task.code is only the human-readable label. Optional: an ad-hoc field task, or a visit that delivers several activities (R4 allows one), has none; its delivery events then name their activity in campaign-activity
                    Control0..1
                    Typecanonical(ICR Campaign Activity)
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Must Supporttrue
                    Summarytrue
                    Requirements

                    Enables a formal definition of how he task is to be performed, enabling automation.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    28. Task.instantiatesUri
                    Definition

                    The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this Task.

                    ShortFormal definition of task
                    Control0..1
                    Typeuri
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Requirements

                    Enables a formal definition of how he task is to be performed (e.g. using BPMN, BPEL, XPDL or other formal notation to be associated with a task), enabling automation.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    30. Task.basedOn
                    Definition

                    BasedOn refers to a higher-level authorization that triggered the creation of the task. It references a "request" resource such as a ServiceRequest, MedicationRequest, ServiceRequest, CarePlan, etc. which is distinct from the "request" resource the task is seeking to fulfill. This latter resource is referenced by FocusOn. For example, based on a ServiceRequest (= BasedOn), a task is created to fulfill a procedureRequest ( = FocusOn ) to collect a specimen from a patient.

                    ShortThe campaign (round) this task executes. Tasks point at the campaign — the CarePlan is never updated as tasks are created
                    Control1..1
                    TypeReference(ICR Campaign)
                    Is Modifierfalse
                    Must Supporttrue
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    32. Task.groupIdentifier
                    Definition

                    An identifier that links together multiple tasks and other requests that were created in the same context.

                    ShortRequisition or grouper id
                    Control0..1
                    TypeIdentifier
                    Is Modifierfalse
                    Summarytrue
                    Requirements

                    Billing and/or reporting can be linked to whether multiple requests were created as a single unit.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    34. Task.partOf
                    Definition

                    Task that this particular task is part of.

                    ShortComposite task
                    Comments

                    This should usually be 0..1.

                    Control0..*
                    TypeReference(Task)
                    Is Modifierfalse
                    Summarytrue
                    Requirements

                    Allows tasks to be broken down into sub-steps (and this division can occur independent of the original task).

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    36. Task.status
                    Definition

                    The current status of the task.

                    Shortrequested → in-progress → completed / failed. On a household visit: completed when the household was reached and any person outcome recorded, failed when it was not reached (closed, not found), requested when not yet visited
                    Control1..1
                    BindingThe codes SHALL be taken from TaskStatus
                    (required to http://hl7.org/fhir/ValueSet/task-status|4.0.1)

                    The current status of the task.

                    Typecode
                    Is Modifiertrue because This element is labeled as a modifier because it is a status element that contains status entered-in-error which means that the resource should not be treated as valid
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Must Supporttrue
                    Summarytrue
                    Requirements

                    These states enable coordination of task status with off-the-shelf workflow solutions that support automation of tasks.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    38. Task.statusReason
                    Definition

                    An explanation as to why this task is held, failed, was refused, etc.

                    ShortReason for current status
                    Comments

                    This applies to the current status. Look at the history of the task to see reasons for past statuses.

                    Control0..1
                    Binding

                    Codes to identify the reason for current status. These will typically be specific to a particular workflow.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    40. Task.businessStatus
                    Definition

                    Contains business-specific nuances of the business state.

                    ShortE.g. "Specimen collected", "IV prepped"
                    Control0..1
                    Binding

                    The domain-specific business-contextual sub-state of the task. For example: "Blood drawn", "IV inserted", "Awaiting physician signature", etc.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Summarytrue
                    Requirements

                    There's often a need to track substates of a task - this is often variable by specific workflow implementation.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    42. Task.intent
                    Definition

                    Indicates the "level" of actionability associated with the Task, i.e. i+R[9]Cs this a proposed task, a planned task, an actionable task, etc.

                    Shortunknown | proposal | plan | order | original-order | reflex-order | filler-order | instance-order | option
                    Comments

                    This element is immutable. Proposed tasks, planned tasks, etc. must be distinct instances.

                    In most cases, Tasks will have an intent of "order".

                    Control1..1
                    BindingThe codes SHALL be taken from TaskIntent
                    (required to http://hl7.org/fhir/ValueSet/task-intent|4.0.1)

                    Distinguishes whether the task is a proposal, plan or full order.

                    Typecode
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Must Supporttrue
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    44. Task.priority
                    Definition

                    Indicates how quickly the Task should be addressed with respect to other requests.

                    Shortroutine | urgent | asap | stat
                    Control0..1
                    BindingThe codes SHALL be taken from RequestPriority
                    (required to http://hl7.org/fhir/ValueSet/request-priority|4.0.1)

                    The task's priority.

                    Typecode
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summaryfalse
                    Requirements

                    Used to identify the service level expected while performing a task.

                    Meaning if MissingIf missing, this task should be performed with normal priority
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    46. Task.code
                    Definition

                    A name or code (or both) briefly describing what the task involves.

                    ShortThe activity being performed
                    Comments

                    The title (eg "My Tasks", "Outstanding Tasks for Patient X") should go into the code.

                    Control1..1
                    BindingFor example codes, see TaskCode
                    (example to http://hl7.org/fhir/ValueSet/task-code|4.0.1)

                    Codes to identify what the task involves. These will typically be specific to a particular workflow.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Must Supporttrue
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    48. Task.description
                    Definition

                    A free-text description of what is to be performed.

                    ShortHuman-readable explanation of task
                    Control0..1
                    Typestring
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    50. Task.focus
                    Definition

                    The request being actioned or the resource being manipulated by this task.

                    ShortWhat task is acting on
                    Comments

                    If multiple resources need to be manipulated, use sub-tasks. (This ensures that status can be tracked independently for each referenced resource.).

                    Control0..1
                    TypeReference(Resource)
                    Is Modifierfalse
                    Summarytrue
                    Requirements

                    Used to identify the thing to be done.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    52. Task.for
                    Definition

                    The entity who benefits from the performance of the service specified in the task (e.g., the patient).

                    ShortWhat the task acts on: a delivery-unit Group where the unit has members (household, community, school cohort) or a Location where it does not (site, structure, area); a Patient only for person-targeted follow-up tasks
                    Control1..1
                    TypeReference(ICR Delivery Unit (Household / Community / School Cohort), ICR Location, Patient)
                    Is Modifierfalse
                    Must Supporttrue
                    Must Support TypesNo must-support rules about the choice of types/profiles
                    Summarytrue
                    Requirements

                    Used to track tasks outstanding for a beneficiary. Do not use to track the task owner or creator (see owner and creator respectively). This can also affect access control.

                    Alternate NamesPatient
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    54. Task.encounter
                    Definition

                    The healthcare event (e.g. a patient and healthcare provider interaction) during which this task was created.

                    ShortHealthcare event during which this task originated
                    Control0..1
                    TypeReference(Encounter)
                    Is Modifierfalse
                    Summarytrue
                    Requirements

                    For some tasks it may be important to know the link between the encounter the task originated within.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    56. Task.executionPeriod
                    Definition

                    Identifies the time action was first taken against the task (start) and/or the time final action was taken against the task prior to marking it as completed (end).

                    ShortStart and end time of execution
                    Control0..1
                    TypePeriod
                    Is Modifierfalse
                    Must Supporttrue
                    Summarytrue
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    58. Task.authoredOn
                    Definition

                    The date and time this task was created.

                    ShortTask Creation Date
                    Control0..1
                    This element is affected by the following invariants: inv-1
                    TypedateTime
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summaryfalse
                    Requirements

                    Most often used along with lastUpdated to track duration of task to supporting monitoring and management.

                    Alternate NamesCreated Date
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    60. Task.lastModified
                    Definition

                    The date and time of last modification to this task.

                    ShortTask Last Modified Date
                    Control0..1
                    This element is affected by the following invariants: inv-1
                    TypedateTime
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summarytrue
                    Requirements

                    Used along with history to track task activity and time in a particular task state. This enables monitoring and management.

                    Alternate NamesUpdate Date
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    62. Task.requester
                    Definition

                    The creator of the task.

                    ShortWho is asking for task to be done
                    Control0..1
                    TypeReference(Device, Organization, Patient, Practitioner, PractitionerRole, RelatedPerson)
                    Is Modifierfalse
                    Summarytrue
                    Requirements

                    Identifies who created this task. May be used by access control mechanisms (e.g., to ensure that only the creator can cancel a task).

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    64. Task.performerType
                    Definition

                    The kind of participant that should perform the task.

                    ShortRequested performer
                    Control0..*
                    BindingThe codes SHOULD be taken from ProcedurePerformerRoleCodes
                    (preferred to http://hl7.org/fhir/ValueSet/performer-role|4.0.1)

                    The type(s) of task performers allowed.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Summaryfalse
                    Requirements

                    Use to distinguish tasks on different activity queues.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    66. Task.owner
                    Definition

                    Individual organization or Device currently responsible for task execution.

                    ShortThe assigned ICRCareTeam — a real join, not a display string (v0.20.0): 'who worked this' and (via the supervisor) 'who reports this'
                    Comments

                    Tasks may be created with an owner not yet identified.

                    Control0..1
                    TypeReference(ICR Care Team)
                    Is Modifierfalse
                    Must Supporttrue
                    Summarytrue
                    Requirements

                    Identifies who is expected to perform this task.

                    Alternate NamesPerformer, Executer
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    68. Task.location
                    Definition

                    Principal physical location where the this task is performed.

                    ShortWhere the work happens: settlement, school, post, or dwelling
                    Control1..1
                    TypeReference(ICR Location)
                    Is Modifierfalse
                    Must Supporttrue
                    Summarytrue
                    Requirements

                    Ties the event to where the records are likely kept and provides context around the event occurrence (e.g. if it occurred inside or outside a dedicated healthcare setting).

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    70. Task.reasonCode
                    Definition

                    A description or code indicating why this task needs to be performed.

                    ShortThe disease/programme this Task serves — scopes a Task to one disease where a community runs several concurrent programmes (per-village disease scoping in co-endemic MDA)
                    Comments

                    This should only be included if there is no focus or if it differs from the reason indicated on the focus.

                    Control0..1
                    Binding

                    Indicates why the task is needed. E.g. Suspended because patient admitted to hospital.

                    TypeCodeableConcept
                    Is Modifierfalse
                    Must Supporttrue
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    72. Task.reasonReference
                    Definition

                    A resource reference indicating why this task needs to be performed.

                    ShortWhy task is needed
                    Comments

                    Tasks might be justified based on an Observation, a Condition, a past or planned procedure, etc. This should only be included if there is no focus or if it differs from the reason indicated on the focus. Use the CodeableConcept text element in Task.reasonCode if the data is free (uncoded) text.

                    Control0..1
                    TypeReference(Resource)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    74. Task.insurance
                    Definition

                    Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be relevant to the Task.

                    ShortAssociated insurance coverage
                    Control0..*
                    TypeReference(Coverage, ClaimResponse)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    76. Task.note
                    Definition

                    Free-text information captured about the task as it progresses.

                    ShortComments made about the task
                    Control0..*
                    TypeAnnotation
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    78. Task.relevantHistory
                    Definition

                    Links to Provenance records for past versions of this Task that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the task.

                    ShortKey events in history of the Task
                    Comments

                    This element does not point to the Provenance associated with the current version of the resource - as it would be created after this version existed. The Provenance for the current version can be retrieved with a _revinclude.

                    Control0..*
                    TypeReference(Provenance)
                    Is Modifierfalse
                    Summaryfalse
                    Alternate NamesStatus History
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    80. Task.restriction
                    Definition

                    If the Task.focus is a request resource and the task is seeking fulfillment (i.e. is asking for the request to be actioned), this element identifies any limitations on what parts of the referenced request should be actioned.

                    ShortConstraints on fulfillment tasks
                    Control0..1
                    TypeBackboneElement
                    Is Modifierfalse
                    Summaryfalse
                    Requirements

                    Sometimes when fulfillment is sought, you don't want full fulfillment.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    82. Task.restriction.id
                    Definition

                    Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                    ShortUnique id for inter-element referencing
                    Control0..1
                    Typestring
                    Is Modifierfalse
                    XML FormatIn the XML format, this property is represented as an attribute.
                    Summaryfalse
                    84. Task.restriction.extension
                    Definition

                    May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                    ShortAdditional content defined by implementations
                    Comments

                    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                    Control0..*
                    TypeExtension
                    Is Modifierfalse
                    Summaryfalse
                    Alternate Namesextensions, user content
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    86. Task.restriction.modifierExtension
                    Definition

                    May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                    Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                    ShortExtensions that cannot be ignored even if unrecognized
                    Comments

                    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                    Control0..*
                    TypeExtension
                    Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                    Summarytrue
                    Requirements

                    Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                    Alternate Namesextensions, user content, modifiers
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                    88. Task.restriction.repetitions
                    Definition

                    Indicates the number of times the requested action should occur.

                    ShortHow many times to repeat
                    Control0..1
                    TypepositiveInt
                    Is Modifierfalse
                    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                    Summaryfalse
                    Requirements

                    E.g. order that requests monthly lab tests, fulfillment is sought for 1.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    90. Task.restriction.period
                    Definition

                    Over what time-period is fulfillment sought.

                    ShortWhen fulfillment sought
                    Comments

                    Note that period.high is the due date representing the time by which the task should be completed.

                    Control0..1
                    TypePeriod
                    Is Modifierfalse
                    Summaryfalse
                    Requirements

                    E.g. order that authorizes 1 year's services. Fulfillment is sought for next 3 months.

                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    92. Task.restriction.recipient
                    Definition

                    For requests that are targeted to more than on potential recipient/target, for whom is fulfillment sought?

                    ShortFor whom is fulfillment sought?
                    Control0..*
                    TypeReference(Patient, Practitioner, PractitionerRole, RelatedPerson, Group, Organization)
                    Is Modifierfalse
                    Summaryfalse
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    94. Task.input
                    Definition

                    Additional information that may be needed in the execution of the task.

                    ShortWhat the task is given before the work starts, as coded entries: today its target (target-population)
                    Control0..*
                    TypeBackboneElement
                    Is Modifierfalse
                    Must Supporttrue
                    Summaryfalse
                    Requirements

                    Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

                    Alternate NamesSupporting Information
                    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                    SlicingThis element introduces a set of slices on Task.input. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                    • pattern @ type
                    • 96. Task.input.id
                      Definition

                      Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                      ShortUnique id for inter-element referencing
                      Control0..1
                      Typestring
                      Is Modifierfalse
                      XML FormatIn the XML format, this property is represented as an attribute.
                      Summaryfalse
                      98. Task.input.extension
                      Definition

                      May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                      ShortAdditional content defined by implementations
                      Comments

                      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                      Control0..*
                      TypeExtension
                      Is Modifierfalse
                      Summaryfalse
                      Alternate Namesextensions, user content
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                      100. Task.input.modifierExtension
                      Definition

                      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                      ShortExtensions that cannot be ignored even if unrecognized
                      Comments

                      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                      Control0..*
                      TypeExtension
                      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                      Summarytrue
                      Requirements

                      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                      Alternate Namesextensions, user content, modifiers
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                      102. Task.input.type
                      Definition

                      A code or description indicating how the input is intended to be used as part of the task execution.

                      ShortLabel for the input
                      Comments

                      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

                      Control1..1
                      BindingUnless not suitable, these codes SHALL be taken from ICR Task Input Type
                      (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-input-type)
                      TypeCodeableConcept
                      Is Modifierfalse
                      Summaryfalse
                      Requirements

                      Inputs are named to enable task automation to bind data and pass it from one task to the next.

                      Alternate NamesName
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      104. Task.input.value[x]
                      Definition

                      The value of the input parameter as a basic type.

                      ShortContent to use in performing the task
                      Control1..1
                      TypeChoice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta
                      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                      Is Modifierfalse
                      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                      Summaryfalse
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      106. Task.input:targetPopulation
                      Slice NametargetPopulation
                      Definition

                      Additional information that may be needed in the execution of the task.

                      ShortThis task's target, for a task below the campaign's reporting scope (facility catchment, parish, school, settlement); repeats when it is the sum of several estimates. A task at the campaign's scope leaves it out and uses the campaign's planning denominator for its activity
                      Control0..*
                      TypeBackboneElement
                      Is Modifierfalse
                      Summaryfalse
                      Requirements

                      Resources and data used to perform the task. This data is used in the business logic of task execution, and is stored separately because it varies between workflows.

                      Alternate NamesSupporting Information
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      108. Task.input:targetPopulation.id
                      Definition

                      Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                      ShortUnique id for inter-element referencing
                      Control0..1
                      Typestring
                      Is Modifierfalse
                      XML FormatIn the XML format, this property is represented as an attribute.
                      Summaryfalse
                      110. Task.input:targetPopulation.extension
                      Definition

                      May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                      ShortAdditional content defined by implementations
                      Comments

                      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                      Control0..*
                      TypeExtension
                      Is Modifierfalse
                      Summaryfalse
                      Alternate Namesextensions, user content
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                      112. Task.input:targetPopulation.modifierExtension
                      Definition

                      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                      ShortExtensions that cannot be ignored even if unrecognized
                      Comments

                      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                      Control0..*
                      TypeExtension
                      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                      Summarytrue
                      Requirements

                      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                      Alternate Namesextensions, user content, modifiers
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                      114. Task.input:targetPopulation.type
                      Definition

                      A code or description indicating how the input is intended to be used as part of the task execution.

                      ShortLabel for the input
                      Comments

                      If referencing a BPMN workflow or Protocol, the "system" is the URL for the workflow definition and the code is the "name" of the required input.

                      Control1..1
                      BindingUnless not suitable, these codes SHALL be taken from ICR Task Input Type
                      (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-input-type)
                      TypeCodeableConcept
                      Is Modifierfalse
                      Summaryfalse
                      Requirements

                      Inputs are named to enable task automation to bind data and pass it from one task to the next.

                      Alternate NamesName
                      Pattern Value{
                        "coding" : [{
                          "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-input-type-cs",
                          "code" : "target-population"
                        }]
                      }
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      116. Task.input:targetPopulation.value[x]
                      Definition

                      The value of the input parameter as a basic type.

                      ShortContent to use in performing the task
                      Control1..1
                      TypeReference(ICR Target Population)
                      [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                      Is Modifierfalse
                      Summaryfalse
                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      118. Task.output
                      Definition

                      Outputs produced by the Task.

                      ShortEverything the visit produced, as coded entries: the scalar tally (treated-count), the house-to-house axes (houses-visited, eligible-present/absent, children-already-marked), reason codes (missed/refusal/exclusion), revisit outcome, and references to delivery events and the stratified coverage report
                      Control0..*
                      TypeBackboneElement
                      Is Modifierfalse
                      Must Supporttrue
                      Summaryfalse
                      Requirements

                      Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                      SlicingThis element introduces a set of slices on Task.output. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                      • pattern @ type
                      • 120. Task.output.id
                        Definition

                        Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                        ShortUnique id for inter-element referencing
                        Control0..1
                        Typestring
                        Is Modifierfalse
                        XML FormatIn the XML format, this property is represented as an attribute.
                        Summaryfalse
                        122. Task.output.extension
                        Definition

                        May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                        ShortAdditional content defined by implementations
                        Comments

                        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                        Control0..*
                        TypeExtension
                        Is Modifierfalse
                        Summaryfalse
                        Alternate Namesextensions, user content
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                        124. Task.output.modifierExtension
                        Definition

                        May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                        ShortExtensions that cannot be ignored even if unrecognized
                        Comments

                        There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                        Control0..*
                        TypeExtension
                        Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                        Summarytrue
                        Requirements

                        Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                        Alternate Namesextensions, user content, modifiers
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                        126. Task.output.type
                        Definition

                        The name of the Output parameter.

                        ShortLabel for output
                        Control1..1
                        BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                        (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                        TypeCodeableConcept
                        Is Modifierfalse
                        Summaryfalse
                        Requirements

                        Outputs are named to enable task automation to bind data and pass it from one task to the next.

                        Alternate NamesName
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        128. Task.output.value[x]
                        Definition

                        The value of the Output parameter as a basic type.

                        ShortResult of output
                        Control1..1
                        TypeChoice of: base64Binary, boolean, canonical, code, date, dateTime, decimal, id, instant, integer, markdown, oid, positiveInt, string, time, unsignedInt, uri, url, uuid, Address, Age, Annotation, Attachment, CodeableConcept, Coding, ContactPoint, Count, Distance, Duration, HumanName, Identifier, Money, Period, Quantity, Range, Ratio, Reference, SampledData, Signature, Timing, ContactDetail, Contributor, DataRequirement, Expression, ParameterDefinition, RelatedArtifact, TriggerDefinition, UsageContext, Dosage, Meta
                        [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                        Is Modifierfalse
                        Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                        Summaryfalse
                        Requirements

                        Task outputs can take any form.

                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        130. Task.output:treatedCount
                        Slice NametreatedCount
                        Definition

                        Outputs produced by the Task.

                        ShortPeople treated or vaccinated at the visit. On a Task without instantiatesCanonical (a visit that delivers several activities), one entry per activity, each naming it in extension[campaignActivity], even when only one activity has a tally; on a Task with instantiatesCanonical, a single entry without it (icr-task-treated-per-activity)
                        Control0..*
                        TypeBackboneElement
                        Is Modifierfalse
                        Summaryfalse
                        Requirements

                        Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        132. Task.output:treatedCount.id
                        Definition

                        Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                        ShortUnique id for inter-element referencing
                        Control0..1
                        Typestring
                        Is Modifierfalse
                        XML FormatIn the XML format, this property is represented as an attribute.
                        Summaryfalse
                        134. Task.output:treatedCount.extension
                        Definition

                        An Extension

                        ShortExtension
                        Control0..*
                        TypeExtension
                        Is Modifierfalse
                        Summaryfalse
                        Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                        ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                        SlicingThis element introduces a set of slices on Task.output.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                        • value @ url
                        • 136. Task.output:treatedCount.extension:campaignActivity
                          Slice NamecampaignActivity
                          Definition

                          The activity of an integrated campaign that this record belongs to: the ICRCampaignActivity a CarePlan.activity.detail of the campaign instantiates. On a coverage report, the report's denominator is then that activity's planning denominator and its numerator counts only that activity's doses or treatments; absent on a report for a single-intervention campaign, or for a campaign as a whole. On a delivery event (Immunization, MedicationAdministration, SupplyDelivery), the activity the dose, treatment or handover was for: per-activity results count events by this link, not by product code. An event must carry it whenever its visit Task has no instantiatesCanonical and its campaign lists more than one activity (a conformance rule stated in the IG text, since an event cannot see its Task). On a Task output, the activity a per-activity tally (treated-count) is for, on a visit that delivers several activities.

                          ShortThe activity this tally is for; required when the Task has no instantiatesCanonical
                          Control0..1
                          This element is affected by the following invariants: ele-1
                          TypeExtension(Campaign Activity) (Extension Type: canonical(ICR Campaign Activity))
                          Is Modifierfalse
                          Must Supporttrue
                          Summaryfalse
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          138. Task.output:treatedCount.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          140. Task.output:treatedCount.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "treated-count"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          142. Task.output:treatedCount.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeunsignedInt
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          144. Task.output:housesVisited
                          Slice NamehousesVisited
                          Definition

                          Outputs produced by the Task.

                          Short(house-to-house, area/team-day granularity) Houses visited
                          Control0..1
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          146. Task.output:housesVisited.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          148. Task.output:housesVisited.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          150. Task.output:housesVisited.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          152. Task.output:housesVisited.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "houses-visited"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          154. Task.output:housesVisited.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeunsignedInt
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          156. Task.output:eligiblePresent
                          Slice NameeligiblePresent
                          Definition

                          Outputs produced by the Task.

                          Short(house-to-house) Eligible persons present — program-neutral: under-5s for polio, household members for ITN registration, the eligible band for MDA
                          Control0..1
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          158. Task.output:eligiblePresent.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          160. Task.output:eligiblePresent.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          162. Task.output:eligiblePresent.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          164. Task.output:eligiblePresent.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "eligible-present"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          166. Task.output:eligiblePresent.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeunsignedInt
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          168. Task.output:eligibleAbsent
                          Slice NameeligibleAbsent
                          Definition

                          Outputs produced by the Task.

                          Short(house-to-house) Eligible persons absent — feeds same-day mop-up lists
                          Control0..1
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          170. Task.output:eligibleAbsent.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          172. Task.output:eligibleAbsent.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          174. Task.output:eligibleAbsent.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          176. Task.output:eligibleAbsent.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "eligible-absent"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          178. Task.output:eligibleAbsent.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeunsignedInt
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          180. Task.output:childrenAlreadyMarked
                          Slice NamechildrenAlreadyMarked
                          Definition

                          Outputs produced by the Task.

                          Short(house-to-house) Children found already finger-marked on arrival — a count, since a visit sees several children (replaces the retired boolean finger-marked extension)
                          Control0..1
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          182. Task.output:childrenAlreadyMarked.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          184. Task.output:childrenAlreadyMarked.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          186. Task.output:childrenAlreadyMarked.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          188. Task.output:childrenAlreadyMarked.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "children-already-marked"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          190. Task.output:childrenAlreadyMarked.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeunsignedInt
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          192. Task.output:missedReason
                          Slice NamemissedReason
                          Definition

                          Outputs produced by the Task.

                          ShortWhy eligible person(s) were missed — person-level (absent, sleeping) and area-level (insecurity, shortage, access) causes
                          Control0..*
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          194. Task.output:missedReason.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          196. Task.output:missedReason.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          198. Task.output:missedReason.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          200. Task.output:missedReason.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "missed-reason"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          202. Task.output:missedReason.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Missed Reason
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-missed-reason)
                          TypeCodeableConcept
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          204. Task.output:noncomplianceReason
                          Slice NamenoncomplianceReason
                          Definition

                          Outputs produced by the Task.

                          ShortWhy the household/caregiver refused (WHO IDHC 'intervention refusal')
                          Control0..*
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          206. Task.output:noncomplianceReason.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          208. Task.output:noncomplianceReason.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          210. Task.output:noncomplianceReason.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          212. Task.output:noncomplianceReason.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "noncompliance-reason"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          214. Task.output:noncomplianceReason.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Refusal Reason
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-noncompliance-reason)
                          TypeCodeableConcept
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          216. Task.output:exclusionReason
                          Slice NameexclusionReason
                          Definition

                          Outputs produced by the Task.

                          ShortWhy a present, age-eligible person was clinically excluded this round (under-height/age, pregnant, breastfeeding)
                          Control0..*
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          218. Task.output:exclusionReason.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          220. Task.output:exclusionReason.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          222. Task.output:exclusionReason.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          224. Task.output:exclusionReason.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "exclusion-reason"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          226. Task.output:exclusionReason.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Exclusion Reason
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-exclusion-reason)
                          TypeCodeableConcept
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          228. Task.output:revisitOutcome
                          Slice NamerevisitOutcome
                          Definition

                          Outputs produced by the Task.

                          ShortOn a person-targeted follow-up Task: already-vaccinated | vaccinated-on-revisit | still-missing
                          Control0..1
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          230. Task.output:revisitOutcome.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          232. Task.output:revisitOutcome.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          234. Task.output:revisitOutcome.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          236. Task.output:revisitOutcome.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "revisit-outcome"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          238. Task.output:revisitOutcome.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Revisit Outcome
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-revisit-outcome)
                          TypeCodeableConcept
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          240. Task.output:referredCount
                          Slice NamereferredCount
                          Definition

                          Outputs produced by the Task.

                          ShortPeople referred at this visit (each referral is an ICRReferral whose referring-task is this Task)
                          Control0..1
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          242. Task.output:referredCount.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          244. Task.output:referredCount.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          246. Task.output:referredCount.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          248. Task.output:referredCount.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "referred-count"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          250. Task.output:referredCount.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeunsignedInt
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          252. Task.output:registeredCount
                          Slice NameregisteredCount
                          Definition

                          Outputs produced by the Task.

                          ShortPeople registered into the campaign at this visit — on a register Task or a delivery Task alike
                          Control0..1
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          254. Task.output:registeredCount.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          256. Task.output:registeredCount.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          258. Task.output:registeredCount.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          260. Task.output:registeredCount.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "registered-count"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          262. Task.output:registeredCount.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeunsignedInt
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          264. Task.output:registeredHousehold
                          Slice NameregisteredHousehold
                          Definition

                          Outputs produced by the Task.

                          ShortEach household registered into the campaign at this visit: the for household on a household visit, every household registered there on a site session. Households registered = distinct references in the round
                          Control0..*
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          266. Task.output:registeredHousehold.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          268. Task.output:registeredHousehold.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          270. Task.output:registeredHousehold.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          272. Task.output:registeredHousehold.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "registered-household"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          274. Task.output:registeredHousehold.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeReference(ICR Delivery Unit (Household / Community / School Cohort))
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          276. Task.output:voucher
                          Slice Namevoucher
                          Definition

                          Outputs produced by the Task.

                          ShortThe voucher or QR code issued, with one system per campaign round; the redeeming ICRSupplyDistribution carries the same system and value as an identifier of type voucher, so issued vs redeemed is a match on (system, value)
                          Control0..1
                          TypeBackboneElement
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          278. Task.output:voucher.id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          280. Task.output:voucher.extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          282. Task.output:voucher.modifierExtension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                          Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                          ShortExtensions that cannot be ignored even if unrecognized
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                          Summarytrue
                          Requirements

                          Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                          Alternate Namesextensions, user content, modifiers
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          284. Task.output:voucher.type
                          Definition

                          The name of the Output parameter.

                          ShortLabel for output
                          Control1..1
                          BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                          (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                          TypeCodeableConcept
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Outputs are named to enable task automation to bind data and pass it from one task to the next.

                          Alternate NamesName
                          Pattern Value{
                            "coding" : [{
                              "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                              "code" : "voucher"
                            }]
                          }
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          286. Task.output:voucher.value[x]
                          Definition

                          The value of the Output parameter as a basic type.

                          ShortResult of output
                          Control1..1
                          TypeIdentifier
                          [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                          Is Modifierfalse
                          Summaryfalse
                          Requirements

                          Task outputs can take any form.

                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          288. Task.output:voucher.value[x].id
                          Definition

                          Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                          ShortUnique id for inter-element referencing
                          Control0..1
                          Typestring
                          Is Modifierfalse
                          XML FormatIn the XML format, this property is represented as an attribute.
                          Summaryfalse
                          290. Task.output:voucher.value[x].extension
                          Definition

                          May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                          ShortAdditional content defined by implementations
                          Comments

                          There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                          Control0..*
                          TypeExtension
                          Is Modifierfalse
                          Summaryfalse
                          Alternate Namesextensions, user content
                          Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                          ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                          SlicingThis element introduces a set of slices on Task.output.value[x].extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
                          • value @ url
                          • 292. Task.output:voucher.value[x].use
                            Definition

                            The purpose of this identifier.

                            Shortusual | official | temp | secondary | old (If known)
                            Comments

                            Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

                            Control0..1
                            BindingThe codes SHALL be taken from IdentifierUse
                            (required to http://hl7.org/fhir/ValueSet/identifier-use|4.0.1)

                            Identifies the purpose for this identifier, if known .

                            Typecode
                            Is Modifiertrue because This is labeled as "Is Modifier" because applications should not mistake a temporary id for a permanent one.
                            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                            Summarytrue
                            Requirements

                            Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            294. Task.output:voucher.value[x].type
                            Definition

                            A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

                            ShortDescription of identifier
                            Comments

                            This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

                            Control0..1
                            BindingUnless not suitable, these codes SHALL be taken from Identifier Type Codes
                            (extensible to http://hl7.org/fhir/ValueSet/identifier-type|4.0.1)

                            A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

                            TypeCodeableConcept
                            Is Modifierfalse
                            Summarytrue
                            Requirements

                            Allows users to make use of identifiers when the identifier system is not known.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            296. Task.output:voucher.value[x].system
                            Definition

                            Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

                            ShortThe campaign round's voucher namespace: the same system the redeeming ICRSupplyDistribution uses in identifier[voucher]
                            Comments

                            Identifier.system is always case sensitive.

                            Control1..1
                            Typeuri
                            Is Modifierfalse
                            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                            Must Supporttrue
                            Summarytrue
                            Requirements

                            There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

                            ExampleGeneral: http://www.acme.com/identifiers/patient
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            298. Task.output:voucher.value[x].value
                            Definition

                            The portion of the identifier typically relevant to the user and which is unique within the context of the system.

                            ShortThe voucher or QR code, as printed; the redeeming distribution carries the same value
                            Comments

                            If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

                            Control1..1
                            Typestring
                            Is Modifierfalse
                            Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
                            Must Supporttrue
                            Summarytrue
                            ExampleGeneral: 123456
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            300. Task.output:voucher.value[x].period
                            Definition

                            Time period during which identifier is/was valid for use.

                            ShortTime period when id is/was valid for use
                            Control0..1
                            TypePeriod
                            Is Modifierfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            302. Task.output:voucher.value[x].assigner
                            Definition

                            Organization that issued/manages the identifier.

                            ShortOrganization that issued id (may be just text)
                            Comments

                            The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

                            Control0..1
                            TypeReference(Organization)
                            Is Modifierfalse
                            Summarytrue
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            304. Task.output:entitlement
                            Slice Nameentitlement
                            Definition

                            Outputs produced by the Task.

                            ShortWhat the household is due, for example 3 LLINs
                            Control0..1
                            TypeBackboneElement
                            Is Modifierfalse
                            Summaryfalse
                            Requirements

                            Resources and data produced during the execution the task. This data is generated by the business logic of task execution, and is stored separately because it varies between workflows.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            306. Task.output:entitlement.id
                            Definition

                            Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

                            ShortUnique id for inter-element referencing
                            Control0..1
                            Typestring
                            Is Modifierfalse
                            XML FormatIn the XML format, this property is represented as an attribute.
                            Summaryfalse
                            308. Task.output:entitlement.extension
                            Definition

                            May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

                            ShortAdditional content defined by implementations
                            Comments

                            There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                            Control0..*
                            TypeExtension
                            Is Modifierfalse
                            Summaryfalse
                            Alternate Namesextensions, user content
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            310. Task.output:entitlement.modifierExtension
                            Definition

                            May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

                            Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

                            ShortExtensions that cannot be ignored even if unrecognized
                            Comments

                            There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

                            Control0..*
                            TypeExtension
                            Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
                            Summarytrue
                            Requirements

                            Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

                            Alternate Namesextensions, user content, modifiers
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
                            312. Task.output:entitlement.type
                            Definition

                            The name of the Output parameter.

                            ShortLabel for output
                            Control1..1
                            BindingUnless not suitable, these codes SHALL be taken from ICR Task Output Type
                            (extensible to https://icr.healthcampaigns.org/ValueSet/icr-task-output-type)
                            TypeCodeableConcept
                            Is Modifierfalse
                            Summaryfalse
                            Requirements

                            Outputs are named to enable task automation to bind data and pass it from one task to the next.

                            Alternate NamesName
                            Pattern Value{
                              "coding" : [{
                                "system" : "https://icr.healthcampaigns.org/CodeSystem/icr-task-output-type-cs",
                                "code" : "entitlement"
                              }]
                            }
                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
                            314. Task.output:entitlement.value[x]
                            Definition

                            The value of the Output parameter as a basic type.

                            ShortResult of output
                            Control1..1
                            TypeQuantity
                            [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
                            Is Modifierfalse
                            Summaryfalse
                            Requirements

                            Task outputs can take any form.

                            Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))